Releases: etcd-io/etcd
v2.3.6
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
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
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
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
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
v2.3.2
Changelog
- GH5028: etcdmain: start on unsupported arch when ETCD_UNSUPPORTED_ARCH is set
- GH5049: etcdctl: don't crash on duplicate role in user grant
- GH5051: etcdctl: don't panic on ListUser with roles
- GH5120: etcdserver: close response body when getting cluster information
- Compiled with Go 1.6.2
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.2/etcd-v2.3.2-darwin-amd64.zip -o etcd-v2.3.2-darwin-amd64.zip
unzip etcd-v2.3.2-darwin-amd64.zip
cd etcd-v2.3.2-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.2/etcd-v2.3.2-linux-amd64.tar.gz -o etcd-v2.3.2-linux-amd64.tar.gz
tar xzvf etcd-v2.3.2-linux-amd64.tar.gz
cd etcd-v2.3.2-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.2
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.2
v2.3.1
Changelog
GH4888: rafthttp: proposal does not block other raft messages when there is no leader
GH4898: client: client returns user defined context error when the passed in context is canceled.
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.1/etcd-v2.3.1-darwin-amd64.zip -o etcd-v2.3.1-darwin-amd64.zip
unzip etcd-v2.3.1-darwin-amd64.zip
cd etcd-v2.3.1-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.1/etcd-v2.3.1-linux-amd64.tar.gz -o etcd-v2.3.1-linux-amd64.tar.gz
tar xzvf etcd-v2.3.1-linux-amd64.tar.gz
cd etcd-v2.3.1-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.1
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.1
v2.3.0
We are pleased to announce etcd 2.3.0. etcd 2.3 contains many new features, improvements and a stable v2 auth API.
etcd 2.3 is fully compatible with etcd 2.2. Upgrading from etcd 2.2 to etcd 2.3 is a zero-downtime rolling upgrade. The basic approach is to upgrade a cluster running etcd 2.2 by upgrading each member, one-by-one, to etcd 2.3. For more details, please read the upgrade guide.
Also, with this release, etcd 2.3 is the current stable etcd release. All bug fixes and feature improvements will go into new etcd 2.3.x releases, and won't normally be backported to etcd 2.2.x.
New features
Strict runtime reconfiguration check
In version 2.3, etcd will reject reconfiguration that might cause quorum loss when strict checking is enabled. For example, when adding new members to an existing cluster, it is recommended to add one member at a time, because the quorum increases whether the new member is reachable or not. Adding multiple unreachable peers can actually cause the cluster to lose quorum. The new --strict-reconfig-check
option causes etcd to reject such membership change requests, and prevents quorum loss due to newly-added, but as-yet unreachable, members.
Runtime profiling
Enable runtime profiling by specifying the --enable-pprof
option to etcd. Profiling data is available over HTTP at a new /debug/pprof
URL. Endpoints are served by the net/http/pprof
package. Please visit the net/http/pprof
documentation for more detail.
Refreshing TTL keys
Time-to-Live (TTL) keys in etcd now can be refreshed without notifying watchers. This avoids generating noisy traffic when a watcher is only interested in the expiration of TTL keys, and doesn’t care about refresh updates. For more details, please check the API doc
Experimental v3 support
v3 server
etcd 2.3 is first release of etcd that supports the experimental v3 API, including the cluster, kv, lease, and watcher APIs.
The etcd v3 API is now ready for experimentation and testing. The v3 API is almost stable; we do not expect it to significantly change.
To enable the v3 api, start etcd with the additional --experimental-v3demo
and --experimental-gRPC-addr
options.
v3 client API
A v3 etcd client now is available for experimental use and development. The client API is currently unstable; it may change in the next release. However, feel free to experiment with the new client. Your feedback is welcome!
v3 etcdctl
A v3 etcdctl now is available for experimental use and testing. The command, its arguments, options, and output format are unstable; all may change in the next release. However, feel free to experiment with the new etcdctl. Your feedback is welcome!
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.0/etcd-v2.3.0-darwin-amd64.zip -o etcd-v2.3.0-darwin-amd64.zip
unzip etcd-v2.3.0-darwin-amd64.zip
cd etcd-v2.3.0-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.0/etcd-v2.3.0-linux-amd64.tar.gz -o etcd-v2.3.0-linux-amd64.tar.gz
tar xzvf etcd-v2.3.0-linux-amd64.tar.gz
cd etcd-v2.3.0-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 -p 2379:2379 -v /usr/share/ca-certificates/:/etc/ssl/certs quay.io/coreos/etcd:v2.3.0
ACI/rkt
The etcd ACI is now signed by the CoreOS App Signing Key so you'll need to explicitly choose to trust the key. To get started with rkt on Linux run the following commands 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 trust --prefix coreos.com/etcd
# gpg key fingerprint is: 18AD 5014 C99E F7E3 BA5F 6CE9 50BD D3E0 FC8A 365E
rkt run --volume data-dir,kind=host,source=/tmp --mds-register=false coreos.com/etcd:v2.3.0
v2.3.0-alpha.1
This is the first release of etcd supporting the full v3 API, including cluster, kv, lease, and watcher APIs.
etcd 2.3.0-alpha.1 is fully compatible with etcd 2.2. For upgrading production clusters, however, please wait until the stable 2.3 release.
v3 server API
v3 API is now ready for experimenting. The v3 API is now almost stable; we do not expect it to significantly change.
To enable the v3 API, start etcd with additional --experimental-v3demo
and --experimental-gRPC-addr
flags.
v3 client API
v3 client now is available for experimenting. The client API is unstable; it may change in the next release. However, feel free to experiment with the new client, any feedback is welcome!
v3 etcdctl
v3 etcdctl now is available for experimenting. The command, its arguments, options, and output format are unstable; it may change in the next release. However, feel free to experiment with the new etcdctl, any feedback is welcome!
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.0-alpha.1/etcd-v2.3.0-alpha.1-darwin-amd64.zip -o etcd-v2.3.0-alpha.1-darwin-amd64.zip
unzip etcd-v2.3.0-alpha.1-darwin-amd64.zip
cd etcd-v2.3.0-alpha.1-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.0-alpha.1/etcd-v2.3.0-alpha.1-linux-amd64.tar.gz -o etcd-v2.3.0-alpha.1-linux-amd64.tar.gz
tar xzvf etcd-v2.3.0-alpha.1-linux-amd64.tar.gz
cd etcd-v2.3.0-alpha.1-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 -p 2379:2379 -v /usr/share/ca-certificates/:/etc/ssl/certs quay.io/coreos/etcd:v2.3.0-alpha.1
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.0-alpha.1
v2.2.5
Changelog
- [GH 3830] Godeps: update boltdb to fix arm64 build
- [GH 4215] etcdmain: fix proxy srv lookup
- [GH 4254] client: do not timeout when wait is true
- [GH 4281] etcdserver, auth: not cache a flag of auth status
- update gRPC dependencies (git SHA
e29d659177655e589850ba7d3d83f7ce12ef23dd
)
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.2.5/etcd-v2.2.5-darwin-amd64.zip -o etcd-v2.2.5-darwin-amd64.zip
unzip etcd-v2.2.5-darwin-amd64.zip
cd etcd-v2.2.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.2.5/etcd-v2.2.5-linux-amd64.tar.gz -o etcd-v2.2.5-linux-amd64.tar.gz
tar xzvf etcd-v2.2.5-linux-amd64.tar.gz
cd etcd-v2.2.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.2.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:
# 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.2.5