@gyuho gyuho released this May 6, 2016 · 6645 commits to master since this release

Assets 10

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


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

curl -L -o
cd etcd-v3.0.0-beta.0-darwin-amd64

Open another terminal:

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


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

curl -L -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

Open another terminal:

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


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

docker run --name etcd

For advanced usage, please check our docker guide.


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

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