Skip to content

Releases: etcd-io/etcd

v2.2.2

20 Nov 02:00
Compare
Choose a tag to compare

Changelog

  • [GH 3697] fix health check result in etcdctl cluster-health
  • [GH 3792] generate v5 ugorji/go/codec unmarshal code in client package
  • [GH 3829] fix unset SYSLOG_IDENTIFIER when etcd is logging to the journal
  • [GH 3590 GH 3794] improve logging when discovery procedure fails
  • [GH 3757 GH 3758] fix various data races detected by race detector
  • [GH 3868] fix rejecting to modify pre-defined guest role

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.2/etcd-v2.2.2-darwin-amd64.zip -o etcd-v2.2.2-darwin-amd64.zip
unzip etcd-v2.2.2-darwin-amd64.zip
cd etcd-v2.2.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.2.2/etcd-v2.2.2-linux-amd64.tar.gz -o etcd-v2.2.2-linux-amd64.tar.gz
tar xzvf etcd-v2.2.2-linux-amd64.tar.gz
cd etcd-v2.2.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.2.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.2.2

v2.3.0-alpha.0

06 Nov 18:46
Compare
Choose a tag to compare
v2.3.0-alpha.0 Pre-release
Pre-release

Main features

clustered v3 API

v3 API is now supported across an etcd cluster. All etcd members in the cluster always maintain consistent v3 data set.

[GH 3800] Experimental v3 watch API

The etcd team is focused on a new version of the etcd API. The new API provides improved features to the key/value store including: range reads, multi-key transactions, binary keys/values, and a longer, more reliable key change history.

etcd 2.3.0-alpha.0 adds support for watch API for testing and demo purposes. v3 watch API is much more powerful than the watch feature in the v2 API. It supports watching multiple keys and prefixes in one request, using a single connection between the client and etcd server. Moreover, it allows one to watch all events that occurred on any key in the history.

You can enable it by setting --experimental-v3demo flag, then build and use the etcdctlv3 tool in the etcd repo to interact with it.

[GH 3479 GH 3543] New flag --strict-reconfig-check

If the flag is enabled, etcd checks reconfiguration changes on etcd cluster more strictly. The check forbids adding or removing one member if the operation changes quorum and the number of changed quorum is larger than the number of initialized nodes.

Thanks to Hitoshi Mitake for introducing this feature.

[GH 3790] etcdtop tool to analyze popular etcd commands

etcdtop is a real-time workload analyzer of command traffic to one etcd server. It is useful for rapid diagnosis of production usage issues and analysis of the distribution of requests.

Thanks to Tyler Neely for contributing this tool!

[GH 3555] Improved documentation

Based on feedback from the community, we've made a number of improvements to the readability and understandability of our documentation:

Proxy promotion
Benchmark for new disk storage

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.0/etcd-v2.3.0-alpha.0-darwin-amd64.zip -o etcd-v2.3.0-alpha.0-darwin-amd64.zip
unzip etcd-v2.3.0-alpha.0-darwin-amd64.zip
cd etcd-v2.3.0-alpha.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-alpha.0/etcd-v2.3.0-alpha.0-linux-amd64.tar.gz -o etcd-v2.3.0-alpha.0-linux-amd64.tar.gz
tar xzvf etcd-v2.3.0-alpha.0-linux-amd64.tar.gz
cd etcd-v2.3.0-alpha.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-alpha.0

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.0

v2.2.1

16 Oct 21:38
Compare
Choose a tag to compare

Changelog

  • [GH 3482] support Nodes type in client package for sorting
  • [GH 3506] improve panic logging output when starting etcd with corrupted data dir
  • [GH 3530 GH 3611] fix non-customizable request timeout in etcdctl
  • [GH 3556] improve output when missing initial flags
  • [GH 3564] improve output when retrying unavailable endpoint in proxy
  • [GH 3594] etcd no longer hangs forever when fails to finish discovery
  • [GH 3596] fix Content-Type header for version API
  • [GH 3633] improve logging output when systemd notify fails
  • [GH 3635] support literal IPv6 address with zone in URL flags
  • [GH 3655 GH 3681] update dependency for bug fix and restorable dependency list
  • [GH 3685] fix mk command in etcdctl

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.1/etcd-v2.2.1-darwin-amd64.zip -o etcd-v2.2.1-darwin-amd64.zip
unzip etcd-v2.2.1-darwin-amd64.zip
cd etcd-v2.2.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.2.1/etcd-v2.2.1-linux-amd64.tar.gz -o etcd-v2.2.1-linux-amd64.tar.gz
tar xzvf etcd-v2.2.1-linux-amd64.tar.gz
cd etcd-v2.2.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.2.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.2.1

v2.2.0

10 Sep 17:28
Compare
Choose a tag to compare

Zero-Downtime Rolling Upgrade from 2.1

Upgrading from etcd 2.1 to etcd 2.2 is a zero-downtime rolling upgrade. The basic approach is that you can upgrade a cluster running etcd 2.1 one-by one to etcd 2.2. For more details, please read the upgrade documentation. If you are running your cluster under etcd 0.4.x, please follow the snapshot migration documentation to upgrade your cluster.
Also, with this release, etcd 2.2 is now the current stable etcd release; as such, all bug fixes will go into new etcd 2.2.x releases and won't be backported to etcd 2.1.x.

Major Changes

[GH 3083] New etcd client

Today we added a new Go etcd client binding to replace the old go-etcd client. The new client provides a clean set of APIs and improves the functionality around request cancellation and error reporting. We encourage you to try it out for new projects and provide feedback on the API via the etcd-dev mailing list. In this release etcdctl also uses this new client, which will improve its reliability.

[GH 3248] Experimental v3 API and new storage demo

We recently proposed a new version of the etcd API that is focused on providing improved features to the key/value store including: range reads, multi-key transactions, binary keys/values, and a longer, more reliable key change history.

This new API also provides an efficient, reliable and scalable way to access the new disk storage backend. The new disk storage backend allows etcd to do incremental snapshots and decreases the memory pressure of large datasets while retaining hot data in memory for fast access. The new storage backend combined with the v3 API will provide even better performance and stability than today’s in-memory store that supports the v2 API.

etcd 2.2 supports a subset of the v3 API for testing and demo purposes. Note that this early preview is a non-clustered version and should not be used in production. You can enable it by setting --experimental-v3demo flag, then build and use the etcdctlv3 tool in the etcd repo to interact with it.

We plan to support an experimental clustered version of v3 API in the next etcd minor release, etcd v2.3.0, currently targeted for release at the end of October.

[GH 3210 GH 3197] Active cluster health checking

In previous releases of etcd, the leader of the cluster was solely responsible for monitoring the health of other members. With this new release, all members of an etcd cluster now regularly check for connectivity and timing differences to other members to ensure cluster-wide health. To ease debugging potential issues etcd now report members that are observed as unhealthy every 30 seconds in the logs. This new feature also helps users explore and understand the stability of their cluster - for example, by exposing clock synchronization issues that might cause incorrect TTL expiration or issue caused by partial network partitions between members.

etcdctl supports a new flag --forever for the cluster-health subcommand. With that flag set, etcdctl will monitor cluster health continuously. You can now run etcdctl cluster-health --forever and it will print out the cluster health information every 10 seconds.

Improved documentation

Based on feedback from the community, we've made a number of improvements to the readability and understandability of our documentation. Moreover, we added two key new documents:

[GH 3275] v2 API change

The newly created unique key is padded with 0s. We now can sort the created unique keys in lexicographic order.

Default GOMAXPROCS changes with Go 1.5

Since Go 1.5, by default Go programs run with GOMAXPROCS set to the number of cores available; in prior releases it defaulted to 1. When compiled with Go 1.5, etcd follows the default behavior described above. The released binaries are compiled with Go 1.5. The number of cores used is printed out on start.

[GH 3413] Support Dedicated WAL Directory

etcd 2.2 supports using a dedicated disk to store wal files, which could improve the throughput and stabilize the cluster. It is highly recommended to dedicate a wal disk and set --wal-dir to point to a directory on that device for a production cluster deployment.

[GH 3390] Introduce flag --endpoint in etcdctl

We recommend to use flag --endpoint to specify the etcd cluster endpoints in etcdctl instead of flag --peers. Though two flags perform the same, name --endpoint is clear and straightforward.

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.0/etcd-v2.2.0-darwin-amd64.zip -o etcd-v2.2.0-darwin-amd64.zip
unzip etcd-v2.2.0-darwin-amd64.zip
cd etcd-v2.2.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.2.0/etcd-v2.2.0-linux-amd64.tar.gz -o etcd-v2.2.0-linux-amd64.tar.gz
tar xzvf etcd-v2.2.0-linux-amd64.tar.gz
cd etcd-v2.2.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 --name etcd quay.io/coreos/etcd:v2.2.0
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.0

v2.1.3

03 Sep 20:45
Compare
Choose a tag to compare

Changelog

  • [GH 3378] when invalid TLS files are provided etcd logs a helpful error message and shuts down cleanly.

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.1.3/etcd-v2.1.3-darwin-amd64.zip -o etcd-v2.1.3-darwin-amd64.zip
unzip etcd-v2.1.3-darwin-amd64.zip
cd etcd-v2.1.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.1.3/etcd-v2.1.3-linux-amd64.tar.gz -o etcd-v2.1.3-linux-amd64.tar.gz
tar xzvf etcd-v2.1.3-linux-amd64.tar.gz
cd etcd-v2.1.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 -p 2379:2379 -v /usr/share/ca-certificates/:/etc/ssl/certs quay.io/coreos/etcd:v2.1.3

ACI/Rocket

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

rkt run coreos.com/etcd:v2.1.3

v2.2.0-rc.0

28 Aug 20:22
Compare
Choose a tag to compare
v2.2.0-rc.0 Pre-release
Pre-release

Main features

new etcd client [GH 3083]

We’re releasing a new etcd client in the etcd repo to replace the old go-etcd client. The new client provides a clean set of APIs and improves the functionality around request cancellation and error reporting. It is still under development and might not be as stable as go-etcd. We encourage you to give it a try.

etcdctl now uses the new etcd client. The new client should improve the stability and reliability of etcdctl.

experimental v3 API demo [GH 3248]

We’ve proposed a new version of the etcd API recently. etcd 2.2 supports a subset of the API for testing and demo purposes. It is a non-clustered version and should not be put in production. You can enable it by setting --experimental-v3demo flag, then build and use the etcdctlv3 tool in the etcd repo to interact with it.

v2 API change [GH 2564]

The newly created unique key is padded with 0s. We now can sort the created unique keys in lexicographic order.

default GOMAXPROCS changes with Go 1.5

Since Go 1.5, by default Go programs run with GOMAXPROCS set to the number of cores available; in prior releases it defaulted to 1. When compiled with Go 1.5, etcd follows the default behavior described above. The released binaries are compiled with Go 1.5. The number of cores used is printed out on start.

cluster health monitoring [GH 3210 3197]

In 2.2, etcd members check for connectivity and timing differences to other other members to ensure the cluster wide health. etcd members report anything unhealthy every 30 seconds as log output.

etcdctl supports a new flag --forever for the cluster-health subcommand. With that flag set, etcdctl will monitor cluster health continuously. You can now run etcdctl cluster-health --forever and it will print out the cluster health information every 10 seconds.

new documentation

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.0-rc.0/etcd-v2.2.0-rc.0-darwin-amd64.zip -o etcd-v2.2.0-rc.0-darwin-amd64.zip
unzip etcd-v2.2.0-rc.0-darwin-amd64.zip
cd etcd-v2.2.0-rc.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.2.0-rc.0/etcd-v2.2.0-rc.0-linux-amd64.tar.gz -o etcd-v2.2.0-rc.0-linux-amd64.tar.gz
tar xzvf etcd-v2.2.0-rc.0-linux-amd64.tar.gz
cd etcd-v2.2.0-rc.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.2.0-rc.0

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.0-rc.0

v2.1.2

21 Aug 23:45
Compare
Choose a tag to compare

Changelog

  • [GH 3129] refuse to start when listening on HTTPS and the TLS cert and/or key is missing
  • [GH 2234] log a warning when listening on HTTP and TLS is set
  • [GH 3149] fix start etcd failure after failing to use proxy mode in member-mode data directory
  • [GH 3143] improve output for command line flag parsing errors
  • [GH 3257] improve retry mechanism when using the etcd discovery service
  • [GH 3118] limit the max election timeout setting to 50 seconds
  • [GH 3249] fix struct alignment issue when running under arm64
  • [GH 2905] specify request timeout caused by leader election
  • [GH 3235] improve error response codes for key etcd requests
  • [GH 3238] support cluster health check when auth is enabled
  • [GH 3332] log the etcd version during startup
  • [GH 3350] fix peer-url and initial-cluster mismatch issue when using discovery SRV
  • stop spamming snapshot logging at INFO level when there is a member failure

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.1.2/etcd-v2.1.2-darwin-amd64.zip -o etcd-v2.1.2-darwin-amd64.zip
unzip etcd-v2.1.2-darwin-amd64.zip
cd etcd-v2.1.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.1.2/etcd-v2.1.2-linux-amd64.tar.gz -o etcd-v2.1.2-linux-amd64.tar.gz
tar xzvf etcd-v2.1.2-linux-amd64.tar.gz
cd etcd-v2.1.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 -p 2379:2379 -v /usr/share/ca-certificates/:/etc/ssl/certs quay.io/coreos/etcd:v2.1.2

ACI/Rocket

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

rkt run coreos.com/etcd:v2.1.2

v2.2.0-alpha.1

13 Aug 23:14
Compare
Choose a tag to compare
v2.2.0-alpha.1 Pre-release
Pre-release

Main features

new etcd client [GH 3083]

We release a new etcd client in etcd repo to replace the old go-etcd client. The new client provides a clean set of APIs and improves the functionality around request cancellation and error reporting. It is still under development and might not be as stable as go-etcd. We encourage you to get it a try.

etcdctl now uses the new etcd client. The new client should improve the stability and reliability of etcdctl.

experimental v3 API demo [GH 3248]

We’ve proposed a new version of the etcd API recently. etcd 2.2 supports a subset of the API for testing and demo purposes. It is a non-clustered version and should not be put in production. You can enable it by setting --experimental-v3demo flag, then build and use the etcdctlv3 in etcd repo to interact with it.

cluster health monitoring [GH 3210 3197]

In 2.2, etcd members check for connectivity and timing differences to other other members to ensure the cluster wide health. etcd members report anything unhealthy every 30 seconds as log output.

etcdctl supports a new flag --forever for cluster-health subcommand. With that flag set, etcdctl will monitor cluster health continuously. You can now run etcdctl cluster-health --forever and it will print out the cluster health information every 10 seconds.

new documentation

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.0-alpha.1/etcd-v2.2.0-alpha.1-darwin-amd64.zip -o etcd-v2.2.0-alpha.1-darwin-amd64.zip
unzip etcd-v2.2.0-alpha.1-darwin-amd64.zip
cd etcd-v2.2.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.2.0-alpha.1/etcd-v2.2.0-alpha.1-linux-amd64.tar.gz -o etcd-v2.2.0-alpha.1-linux-amd64.tar.gz
tar xzvf etcd-v2.2.0-alpha.1-linux-amd64.tar.gz
cd etcd-v2.2.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.2.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.2.0-alpha.1

v2.2.0-alpha.0

13 Aug 18:11
Compare
Choose a tag to compare
v2.2.0-alpha.0 Pre-release
Pre-release

Main features

new etcd client [GH 3083]

We release a new etcd client in etcd repo to replace the old go-etcd client. The new client provides a clean set of APIs and improves the functionality around request cancellation and error reporting. It is still under development and might not be as stable as go-etcd. We encourage you to get it a try.

etcdctl now uses the new etcd client. The new client should improve the stability and reliability of etcdctl.

experimental v3 API demo [GH 3248]

We’ve proposed (a new version of the etcd API)[https://github.com/coreos/etcd/blob/master/Documentation/rfc/v3api.md] recently. etcd 2.2 supports a subset of the API for testing and demo purposes. It is a non-clustered version and should not be put in production. You can enable it by setting --experimental-v3demo flag, the build and use the etcdctlv3 in etcd repo to interact with it.

cluster health monitoring [GH 3210 3197]

In 2.2, etcd members check for connectivity and timing differences to other other members to ensure the cluster wide health. etcd members report anything unhealthy every 30 seconds as log output.

etcdctl supports a new flag --forever for cluster-health subcommand. With that flag set, etcdctl will monitor cluster health continuously. You can now run etcdctl cluster-health --forever and it will print out the cluster health information every 10 seconds.

new documentation

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.0-alpha.0/etcd-v2.2.0-alpha.0-darwin-amd64.zip -o etcd-v2.2.0-alpha.0-darwin-amd64.zip
unzip etcd-v2.2.0-alpha.0-darwin-amd64.zip
cd etcd-v2.2.0-alpha.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.2.0-alpha.0/etcd-v2.2.0-alpha.0-linux-amd64.tar.gz -o etcd-v2.2.0-alpha.0-linux-amd64.tar.gz
tar xzvf etcd-v2.2.0-alpha.0-linux-amd64.tar.gz
cd etcd-v2.2.0-alpha.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.2.0-alpha.0

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.0-alpha.0

v2.1.1

21 Jul 18:24
Compare
Choose a tag to compare

Main features

authentication features [GH 2242]

/v2/auth endpoint adds the authentication feature to the v2 API, providing users, roles and basic authentication. etcdctl support, etcd/client support and the REST API on authentication has been implemented, and they are super easy to use. You can check authentication documentation to start. This is an experimental feature, which will be improved based on user feedback.

more stable transportation [GH 2323 2620 2544]

  • In order to reduce the connection creation overhead and to make raft transportation more efficient and stable, etcd now maintains long running connections with other peers.
  • To reduce the raft command commit latency, each raft append message is now attached to a commit index. The commit latency is reduced from 100ms to 1ms under light load (<100 writes/second).
  • etcd/raft now provides better internal flow control, significantly reducing the possibility of raft message loss, and improving cpu and memory efficiency.

functional testing

fault-injecting, functional testing framework is built to test the functionality of an etcd cluster with a focus on failure-resistance under heavy usage. we have run it continuously for the last four months, and etcd has shown to be robust under many kinds of harsh failure scenarios. For more details, please check the blog post here.

better logging [GH 2707 2923 2926]

Leveled logging is supported now. Users can set an expected log level for etcd and its subpackages. At the meantime, we have moved verbose repeated logging to DEBUG log level, so etcd's default log will be significantly more readable. You can control leveled logging using flags here.

metrics [GH 2785]

etcd introduces a new metrics feature, which can be used for real-time monitoring and debugging. It exposes statistics about both client behaviors and resource usage. This is an experimental feature, which will be improved based on user feedback.

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.1.1/etcd-v2.1.1-darwin-amd64.zip -o etcd-v2.1.1-darwin-amd64.zip
unzip etcd-v2.1.1-darwin-amd64.zip
cd etcd-v2.1.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.1.1/etcd-v2.1.1-linux-amd64.tar.gz -o etcd-v2.1.1-linux-amd64.tar.gz
tar xzvf etcd-v2.1.1-linux-amd64.tar.gz
cd etcd-v2.1.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.1.1

ACI/Rocket

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

rkt run coreos.com/etcd:v2.1.1