Skip to content

Releases: etcd-io/etcd

v3.0.3

15 Jul 18:47
Compare
Choose a tag to compare

Today we're announcing etcd v3.0.3. This is primarily a bug fix release.

Bug fixes

  • GH5918: etcdmain: only get initial cluster setting if the member is not initialized
  • GH5921: raft: do not change RecentActive when resetState for progress
  • GH5937: Revert "Dockerfile: use 'ENTRYPOINT' instead of 'CMD'"
  • GH5948: vendor: update grpc (Fix GH5871)

Other changes

  • GH5885: etcdserver: fix TestSnap
  • GH5906: e2e: add basic upgrade tests
  • GH5916: etcdctl: only takes 127.0.0.1:2379 as default endpoint

Getting started

Linux

curl -L https://github.com/coreos/etcd/releases/download/v3.0.3/etcd-v3.0.3-linux-amd64.tar.gz -o etcd-v3.0.3-linux-amd64.tar.gz
tar xzvf etcd-v3.0.3-linux-amd64.tar.gz && cd etcd-v3.0.3-linux-amd64
./etcd --version

Git SHA: 24a90ba
Go Version: go1.6.2
Go OS/Arch: linux/amd64
# start a local etcd server
./etcd

# write,read to etcd
ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 put foo "bar"
ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 get foo

Mac OS (Darwin)

curl -L https://github.com/coreos/etcd/releases/download/v3.0.3/etcd-v3.0.3-darwin-amd64.zip -o etcd-v3.0.3-darwin-amd64.zip
unzip etcd-v3.0.3-darwin-amd64.zip && cd etcd-v3.0.3-darwin-amd64
./etcd --version

ACI / rkt

rkt trust --prefix coreos.com/etcd
rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v3.0.3

For more details, please check rkt commands.

Docker

docker run --name etcd quay.io/coreos/etcd:v3.0.3

For more details, please check Docker guide.

v3.0.2

08 Jul 19:00
Compare
Choose a tag to compare

Today we're announcing etcd v3.0.2. This is a bug-fix release.

Changelog

  • GH5848: etcdserver/api: print only major.minor version API
  • GH5855: wal: release wal locks before renaming directory on init
  • GH5861: v3rpc: do not panic on user error for watch
  • GH5862: etcdserver: commit before sending snapshot
  • GH5876: Dockerfile: use 'ENTRYPOINT' instead of 'CMD'
  • GH5883: clientv3: fix sync base
  • GH5888: client: make set/delete one shot operations
  • GH5897: v3rpc: lock progress and prevKV map correctly

Getting Started

Linux

curl -L https://github.com/coreos/etcd/releases/download/v3.0.2/etcd-v3.0.2-linux-amd64.tar.gz -o etcd-v3.0.2-linux-amd64.tar.gz
tar xzvf etcd-v3.0.2-linux-amd64.tar.gz && cd etcd-v3.0.2-linux-amd64
./etcd --version

Git SHA: faeeb2f
Go Version: go1.6.2
Go OS/Arch: linux/amd64
# start a local etcd server
./etcd

# write,read to etcd
ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 put foo "bar"
ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 get foo

OS X

curl -L https://github.com/coreos/etcd/releases/download/v3.0.2/etcd-v3.0.2-darwin-amd64.zip -o etcd-v3.0.2-darwin-amd64.zip
unzip etcd-v3.0.2-darwin-amd64.zip && cd etcd-v3.0.2-darwin-amd64
./etcd --version

ACI/rkt

rkt trust --prefix coreos.com/etcd
rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v3.0.2

For more details, please check rkt commands.

Docker

docker run --name etcd quay.io/coreos/etcd:v3.0.2

For more details, please check Docker guide.

v3.0.1

01 Jul 21:37
Compare
Choose a tag to compare

Today we're announcing etcd v3.0.1. This is a minor bug-fix release.

Changelog

  • GH5841: etcdserver: exit on missing backend only if semver is >= 3.0.0
  • GH5843: Documentation: fix typo in api_grpc_gateway.md
  • GH5844: *: test, docs with go1.6+

Getting Started

Linux

To run etcd on Linux, run the following in a terminal

curl -L https://github.com/coreos/etcd/releases/download/v3.0.1/etcd-v3.0.1-linux-amd64.tar.gz -o etcd-v3.0.1-linux-amd64.tar.gz
tar xzvf etcd-v3.0.1-linux-amd64.tar.gz
cd etcd-v3.0.1-linux-amd64
./etcd

To try out etcdctl

ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 put foo "bar"
ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 get foo

OS X

To run etcd on OS X

curl -L https://github.com/coreos/etcd/releases/download/v3.0.1/etcd-v3.0.1-darwin-amd64.zip -o etcd-v3.0.1-darwin-amd64.zip
unzip etcd-v3.0.1-darwin-amd64.zip
cd etcd-v3.0.1-darwin-amd64
./etcd

To try out etcdctl

ETCDCTL_API=3 ./etcdctl put foo "bar"
ETCDCTL_API=3 ./etcdctl get foo

ACI/rkt

To run etcd with rkt

rkt trust --prefix coreos.com/etcd
rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v3.0.1

For more details, please check rkt commands.

Docker

To run etcd with Docker

docker run --name etcd quay.io/coreos/etcd:v3.0.1

For more details, please check docker guide.

v3.0.0

30 Jun 18:31
Compare
Choose a tag to compare

Today we're announcing etcd v3.0.0, the first stable of etcd 3.0. Check out our blog post.

etcd 3.0 features have all been internally tested. We will try our best to not break any of the stable v3 APIs (except the experimental features) after this release, and the system is generally considered ready for use. However, we cannot test all possible configurations, and etcd 3.0 needs user testing before being declared ready for production use. Please help test the new features in your environment and give feedback to the team.

Notable Enhancements

We released etcd v2.0.0 a year ago. etcd v3 incorporates much expert feedback and thousands of hours of production use by the etcd community. The v3 API solves many issues related to etcd v2 scalability, with a new storage engine, and a new API fully supporting Multi-Version Concurrency Control (MVCC). All v3 API calls are served via gRPC and HTTP/2. For more detail, please see this performance documentation.

What’s new?

Some highlights of etcd 3.0 server improvements:

  • Improved latency and throughput
    • Less protocol overhead via gRPC API layer
    • Better disk utilization in write ahead log
  • New storage backend: lower memory overhead per key
  • Automatic TLS configuration

Some highlights of the new stable etcd3 API:

  • Flat binary keyspace: no key-value hierarchy / directories
    • Support key get and watch by prefix
    • Support key get and watch by interval
  • Multiversion keyspace: access historical revisions of keys
  • Transactions: combine multiple requests into one operation
  • Leases: a single TTL for sets of keys
  • Maintenance/Alarm: protect etcd from accidental overutilization with storage quotas

Some highlights of new etcdctl:

  • Mirror: mirror etcd to another data center
  • Lock: mutex on top of etcd
  • Elect: leader election
  • Snapshot: stores point-in-time state of etcd backend
  • Endpoint: health checking

Experimental Features/APIs:

  • v3 Auth API
  • etcd gateway subcommand

Getting Started

Linux

To run etcd on Linux, run the following in a terminal

curl -L https://github.com/coreos/etcd/releases/download/v3.0.0/etcd-v3.0.0-linux-amd64.tar.gz -o etcd-v3.0.0-linux-amd64.tar.gz
tar xzvf etcd-v3.0.0-linux-amd64.tar.gz
cd etcd-v3.0.0-linux-amd64
./etcd

To try out etcdctl

ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 put foo "bar"
ETCDCTL_API=3 ./etcdctl --endpoints=localhost:2379 get foo

OS X

To run etcd on OS X

curl -L https://github.com/coreos/etcd/releases/download/v3.0.0/etcd-v3.0.0-darwin-amd64.zip -o etcd-v3.0.0-darwin-amd64.zip
unzip etcd-v3.0.0-darwin-amd64.zip
cd etcd-v3.0.0-darwin-amd64
./etcd

To try out etcdctl

ETCDCTL_API=3 ./etcdctl put foo "bar"
ETCDCTL_API=3 ./etcdctl get foo

ACI/rkt

To run etcd with rkt

rkt trust --prefix coreos.com/etcd
rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v3.0.0

For more details, please check rkt commands.

Docker

To run etcd with Docker

docker run --name etcd quay.io/coreos/etcd:v3.0.0

For more details, please check docker guide.

v2.3.7

17 Jun 18:34
Compare
Choose a tag to compare

Today we're announcing etcd v2.3.7. This is a minor bug-fix release.

Changelog

  • GH5683: store: copy old value when refresh + CAS

Getting Started

OS X

To get started on OSX run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.7/etcd-v2.3.7-darwin-amd64.zip -o etcd-v2.3.7-darwin-amd64.zip
unzip etcd-v2.3.7-darwin-amd64.zip
cd etcd-v2.3.7-darwin-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Linux

To get started on Linux run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.7/etcd-v2.3.7-linux-amd64.tar.gz -o etcd-v2.3.7-linux-amd64.tar.gz
tar xzvf etcd-v2.3.7-linux-amd64.tar.gz
cd etcd-v2.3.7-linux-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Docker

To get started with Docker on Linux run the following in a terminal:

docker run --name etcd quay.io/coreos/etcd:v2.3.7
docker exec etcd /etcdctl set foo bar

For advanced usage, please check our docker guide.

ACI/rkt

To get started with rkt on Linux run the following in a terminal:

rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v2.3.7

For more info about rkt command line, please check rkt commands.

v2.3.6

27 May 20:39
Compare
Choose a tag to compare

Today we're announcing etcd v2.3.6. This is a minor bug-fix release.

Changelog

  • GH5448: etcd: fix refresh feature

Getting Started

OS X

To get started on OSX run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.6/etcd-v2.3.6-darwin-amd64.zip -o etcd-v2.3.6-darwin-amd64.zip
unzip etcd-v2.3.6-darwin-amd64.zip
cd etcd-v2.3.6-darwin-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Linux

To get started on Linux run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.6/etcd-v2.3.6-linux-amd64.tar.gz -o etcd-v2.3.6-linux-amd64.tar.gz
tar xzvf etcd-v2.3.6-linux-amd64.tar.gz
cd etcd-v2.3.6-linux-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Docker

To get started with Docker on Linux run the following in a terminal:

docker run --name etcd quay.io/coreos/etcd:v2.3.6
docker exec etcd /etcdctl set foo bar

For advanced usage, please check our docker guide.

ACI/rkt

To get started with rkt on Linux run the following in a terminal:

rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v2.3.6

For more info about rkt command line, please check rkt commands.

v2.3.5

20 May 18:06
Compare
Choose a tag to compare

Today we're announcing etcd v2.3.5. This is a minor bug-fix release.

Changelog

  • GH5265: v2http: allow empty role for GET '/users'
  • GH5366: raft: do not panic when removing all the nodes from cluster
  • GH5371: Documentation/v2: fix auth_api.md bug
  • GH5375: Documentation/v2: fix typo for updating a member
  • GH5144: *: fix invalid access to backend struct
  • GH5168: etcdserver: stop raft after stopping apply scheduler
  • GH5379: etcdserver: wait for snapshots before closing raft

Getting Started

OS X

To get started on OSX run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.5/etcd-v2.3.5-darwin-amd64.zip -o etcd-v2.3.5-darwin-amd64.zip
unzip etcd-v2.3.5-darwin-amd64.zip
cd etcd-v2.3.5-darwin-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Linux

To get started on Linux run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.5/etcd-v2.3.5-linux-amd64.tar.gz -o etcd-v2.3.5-linux-amd64.tar.gz
tar xzvf etcd-v2.3.5-linux-amd64.tar.gz
cd etcd-v2.3.5-linux-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Docker

To get started with Docker on Linux run the following in a terminal:

docker run --name etcd quay.io/coreos/etcd:v2.3.5
docker exec etcd /etcdctl set foo bar

For advanced usage, please check our docker guide.

ACI/rkt

To get started with rkt on Linux run the following in a terminal:

rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v2.3.5

For more info about rkt command line, please check rkt commands.

v2.3.4

13 May 18:58
Compare
Choose a tag to compare

Today we're announcing etcd v2.3.4. This is a minor bug-fix release.

Changelog

  • GH5269: httpproxy: fix race on getting close notifier channel
  • GH5310: etcdctl/ctlv2: total-timeout for Sync
  • GH5312: etcdctl: Add --wal-dir and --backup-wal-dir options to backup command
  • GH5320: v2/README: add known bugs

Getting Started

OS X

To get started on OSX run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.4/etcd-v2.3.4-darwin-amd64.zip -o etcd-v2.3.4-darwin-amd64.zip
unzip etcd-v2.3.4-darwin-amd64.zip
cd etcd-v2.3.4-darwin-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Linux

To get started on Linux run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.4/etcd-v2.3.4-linux-amd64.tar.gz -o etcd-v2.3.4-linux-amd64.tar.gz
tar xzvf etcd-v2.3.4-linux-amd64.tar.gz
cd etcd-v2.3.4-linux-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Docker

To get started with Docker on Linux run the following in a terminal:

docker run --name etcd quay.io/coreos/etcd:v2.3.4
docker exec etcd /etcdctl set foo bar

For advanced usage, please check our docker guide.

ACI/rkt

To get started with rkt on Linux run the following in a terminal:

rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v2.3.4

For more info about rkt command line, please check rkt commands.

v3.0.0-beta.0

06 May 21:09
Compare
Choose a tag to compare
v3.0.0-beta.0 Pre-release
Pre-release

Today we're announcing etcd v3.0.0-beta.0, the first pre-release of etcd 3.0.

What’s Beta?

This beta release includes all major features planned for etcd 3.0. These features have all been internally tested. We do not expect significant changes to the v3 API after this release, and the system is generally considered ready for use. However, we cannot test all possible configurations, and etcd 3.0 needs user testing before being declared ready for production use. Please help test the new features in your environment and give feedback to the team.

Notable Enhancements

We released etcd v2.0.0 a year ago. etcd v3 incorporates much expert feedback and thousands of hours of production use by the etcd community. The v3 API solves many issues related to etcd v2 scalability, with a new storage engine, and a new API fully supporting Multi-Version Concurrency Control (MVCC). All v3 API calls are served via gRPC and HTTP/2. For more detail, please see this performance documentation.

What’s new?

Some highlights of etcd 3.0 server improvements:

  • Improved latency and throughput
  • Lower per key memory overhead
  • Automatic TLS configuration

Some highlights of the new etcd3 API:

  • Flat binary keyspace
  • No key-value hierarchy / directories
    • Support query/watch by prefix
  • Transactions: combine multiple requests into one operation
  • Leases: a single TTL for sets of keys
  • Maintenance/Alarm: protect etcd against unexpected shutdown, with disk quota limits

Some highlights of new etcdctl:

  • Mirror: mirror etcd to another data center
  • Lock: mutex on top of etcd
  • Elect: leader election
  • Snapshot: stores point-in-time state of etcd backend
  • Endpoint: health checking

There are many more additions, improvements, and fixes. We will cover them all in the stable release notes.

What’s next?

Our highest priority is to polish the etcd 3.0 beta as it makes the last few steps toward a stable release. The 3.0.0 release will also include additional improvements:

  • Authentication
  • Better documentation
  • Tools and guides for migrating from etcd v2.

Thanks to everyone who contributed to the release!

Getting Started

OS X

To get started on OSX run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v3.0.0-beta.0/etcd-v3.0.0-beta.0-darwin-amd64.zip -o etcd-v3.0.0-beta.0-darwin-amd64.zip
unzip etcd-v3.0.0-beta.0-darwin-amd64.zip
cd etcd-v3.0.0-beta.0-darwin-amd64
./etcd

Open another terminal:

ETCDCTL_API=3 ./etcdctl put mykey "this is awesome"
ETCDCTL_API=3 ./etcdctl get mykey

Linux

To get started on Linux run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v3.0.0-beta.0/etcd-v3.0.0-beta.0-linux-amd64.tar.gz -o etcd-v3.0.0-beta.0-linux-amd64.tar.gz
tar xzvf etcd-v3.0.0-beta.0-linux-amd64.tar.gz
cd etcd-v3.0.0-beta.0-linux-amd64
./etcd

Open another terminal:

ETCDCTL_API=3 ./etcdctl put mykey "this is awesome"
ETCDCTL_API=3 ./etcdctl get mykey

Docker

To get started with Docker on Linux run the following in a terminal:

docker run --name etcd quay.io/coreos/etcd:v3.0.0-beta.0

For advanced usage, please check our docker guide.

ACI/rkt

To get started with rkt on Linux run the following in a terminal:

rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v3.0.0-beta.0

For more info about rkt command line, please check rkt commands.

v2.3.3

29 Apr 21:28
Compare
Choose a tag to compare

Today we're announcing etcd v2.3.3.

This is a minor bug-fix release. GH3762 introduced a regression where updating a user with an empty password can overwrite the previous password. All releases after 2.3.0-alpha.0 are affected. If you run etcd of version 2.3.0-alpha.0 or higher with auth feature enabled, we strongly recommend the upgrade.

Changelog

  • GH5196: etcdserver/auth: check empty password

Getting Started

OS X

To get started on OSX run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.3/etcd-v2.3.3-darwin-amd64.zip -o etcd-v2.3.3-darwin-amd64.zip
unzip etcd-v2.3.3-darwin-amd64.zip
cd etcd-v2.3.3-darwin-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Linux

To get started on Linux run the following in a terminal:

curl -L  https://github.com/coreos/etcd/releases/download/v2.3.3/etcd-v2.3.3-linux-amd64.tar.gz -o etcd-v2.3.3-linux-amd64.tar.gz
tar xzvf etcd-v2.3.3-linux-amd64.tar.gz
cd etcd-v2.3.3-linux-amd64
./etcd

Open another terminal:

./etcdctl set mykey "this is awesome"
./etcdctl get mykey

Docker

To get started with Docker on Linux run the following in a terminal:

docker run --name etcd quay.io/coreos/etcd:v2.3.3
docker exec etcd /etcdctl set foo bar

For advanced usage, please check our docker guide.

ACI/rkt

To get started with rkt on Linux run the following in a terminal:

# for more info about rkt command line, see related doc at https://github.com/coreos/rkt/blob/master/Documentation/commands.md#rkt-run
rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v2.3.3