v3.1.0-rc.1
Pre-release
Pre-release
Today we're announcing etcd v3.1.0-rc.1, as part of etcd v3.1 release process.
Please try the alpha and report any bugs to help stabilize the v3.1 release.
Some highlights of what’s new in etcd 3.1:
V3 features:
- gRPC smart proxy with watch coalescing and key caching
- Authentication
- Lease information lookup RPC
- Automatic client endpoint synchronization to cluster
General server features:
- Faster linearizable reads
- Server gateway for static client endpoints
- Automatic cluster leadership transfer on server shutdown
- Membership health checking to prevent accidental quorum loss
- Embeddable etcd server
Complete release notes for 3.1 will be bundled with the 3.1 general release.
Getting started
Linux
ETCD_VER=v3.1.0-rc.1
DOWNLOAD_URL=https://github.com/coreos/etcd/releases/download
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
mkdir -p /tmp/test-etcd && tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/test-etcd --strip-components=1
/tmp/test-etcd/etcd --version
Git SHA: 3d5ba43
Go Version: go1.7.3
Go OS/Arch: linux/amd64
# start a local etcd server
/tmp/test-etcd/etcd
# write,read to etcd
ETCDCTL_API=3 /tmp/test-etcd/etcdctl --endpoints=localhost:2379 put foo "bar"
ETCDCTL_API=3 /tmp/test-etcd/etcdctl --endpoints=localhost:2379 get foo
Mac OS (Darwin)
ETCD_VER=v3.1.0-rc.1
DOWNLOAD_URL=https://github.com/coreos/etcd/releases/download
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-darwin-amd64.zip -o /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
mkdir -p /tmp/test-etcd && unzip /tmp/etcd-${ETCD_VER}-darwin-amd64.zip -d /tmp && mv /tmp/etcd-${ETCD_VER}-darwin-amd64/* /tmp/test-etcd
/tmp/test-etcd/etcd --version
Run in containers
ACI / rkt
RKT_VERSION=v1.19.0
GITHUB_URL=https://github.com/coreos/rkt/releases/download
DOWNLOAD_URL=${GITHUB_URL}
rm -f /tmp/rkt-${RKT_VERSION}.tar.gz
rm -rf /tmp/test-rkt-${RKT_VERSION} && mkdir -p /tmp/test-rkt-${RKT_VERSION}
curl -L ${DOWNLOAD_URL}/${RKT_VERSION}/rkt-${RKT_VERSION}.tar.gz -o /tmp/rkt-${RKT_VERSION}.tar.gz
tar xzvf /tmp/rkt-${RKT_VERSION}.tar.gz -C /tmp/test-rkt-${RKT_VERSION} --strip-components=1
# sudo cp /tmp/test-rkt-${RKT_VERSION}/rkt /usr/local/bin
sudo cp /tmp/test-rkt-${RKT_VERSION}/rkt /
/rkt version
sudo /rkt \
--trust-keys-from-https \
--dir=/var/lib/rkt \
run \
--stage1-name coreos.com/rkt/stage1-fly:1.19.0 \
--net=host \
--volume data-dir,kind=host,source=/tmp \
coreos.com/etcd:v3.1.0-rc.1 -- \
--name my-etcd-1 \
--listen-client-urls http://localhost:2379 \
--advertise-client-urls http://localhost:2379 \
--listen-peer-urls http://localhost:2380 \
--initial-advertise-peer-urls http://localhost:2380 \
--initial-cluster my-etcd-1=http://localhost:2380 \
--initial-cluster-token my-etcd-token \
--initial-cluster-state new
For more details, please check rkt commands.
Docker
docker run --name etcd quay.io/coreos/etcd:v3.1.0-rc.1
For more details, please check Docker guide.