
Add space between ${ETCD_VER} and Path Co-authored-by: sunfeilong <31331079+sunfeilong@users.noreply.github.com> Signed-off-by: Ivan Valdes <ivan@vald.es>
92 lines
3.7 KiB
Plaintext
92 lines
3.7 KiB
Plaintext
Please check out [CHANGELOG](https://github.com/etcd-io/etcd/blob/main/CHANGELOG/CHANGELOG-${RELEASE_VERSION_MAJOR_MINOR}.md) for a full list of changes. And make sure to read [upgrade guide](https://etcd.io/docs/v${RELEASE_VERSION_MAJOR_MINOR}/upgrades/upgrade_${RELEASE_VERSION_MAJOR}_${RELEASE_VERSION_MINOR}/) before upgrading etcd (there may be breaking changes).
|
|
|
|
For installation guides, please check out [play.etcd.io](http://play.etcd.io) and [operating etcd](https://etcd.io/docs/v${RELEASE_VERSION_MAJOR_MINOR}/op-guide/). Latest support status for common architectures and operating systems can be found at [supported platforms](https://etcd.io/docs/v${RELEASE_VERSION_MAJOR_MINOR}/op-guide/supported-platform/).
|
|
|
|
###### Linux
|
|
|
|
```sh
|
|
ETCD_VER=${RELEASE_VERSION}
|
|
|
|
# choose either URL
|
|
GOOGLE_URL=https://storage.googleapis.com/etcd
|
|
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
|
|
DOWNLOAD_URL=${GOOGLE_URL}
|
|
|
|
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
|
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
|
|
|
|
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
|
tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1
|
|
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
|
|
|
/tmp/etcd-download-test/etcd --version
|
|
/tmp/etcd-download-test/etcdctl version
|
|
/tmp/etcd-download-test/etcdutl version
|
|
|
|
# start a local etcd server
|
|
/tmp/etcd-download-test/etcd
|
|
|
|
# write,read to etcd
|
|
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar
|
|
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo
|
|
```
|
|
|
|
###### macOS (Darwin)
|
|
|
|
```sh
|
|
ETCD_VER=${RELEASE_VERSION}
|
|
|
|
# choose either URL
|
|
GOOGLE_URL=https://storage.googleapis.com/etcd
|
|
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
|
|
DOWNLOAD_URL=${GOOGLE_URL}
|
|
|
|
rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
|
|
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
|
|
|
|
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-darwin-amd64.zip -o /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
|
|
unzip /tmp/etcd-${ETCD_VER}-darwin-amd64.zip -d /tmp && rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
|
|
mv /tmp/etcd-${ETCD_VER}-darwin-amd64/* /tmp/etcd-download-test && rm -rf mv /tmp/etcd-${ETCD_VER}-darwin-amd64
|
|
|
|
/tmp/etcd-download-test/etcd --version
|
|
/tmp/etcd-download-test/etcdctl version
|
|
/tmp/etcd-download-test/etcdutl version
|
|
```
|
|
|
|
###### Docker
|
|
|
|
etcd uses [`gcr.io/etcd-development/etcd`](https://gcr.io/etcd-development/etcd) as a primary container registry, and [`quay.io/coreos/etcd`](https://quay.io/coreos/etcd) as secondary.
|
|
|
|
```sh
|
|
ETCD_VER=${RELEASE_VERSION}
|
|
|
|
rm -rf /tmp/etcd-data.tmp && mkdir -p /tmp/etcd-data.tmp && \
|
|
docker rmi gcr.io/etcd-development/etcd:${ETCD_VER} || true && \
|
|
docker run \
|
|
-p 2379:2379 \
|
|
-p 2380:2380 \
|
|
--mount type=bind,source=/tmp/etcd-data.tmp,destination=/etcd-data \
|
|
--name etcd-gcr-${ETCD_VER} \
|
|
gcr.io/etcd-development/etcd:${ETCD_VER} \
|
|
/usr/local/bin/etcd \
|
|
--name s1 \
|
|
--data-dir /etcd-data \
|
|
--listen-client-urls http://0.0.0.0:2379 \
|
|
--advertise-client-urls http://0.0.0.0:2379 \
|
|
--listen-peer-urls http://0.0.0.0:2380 \
|
|
--initial-advertise-peer-urls http://0.0.0.0:2380 \
|
|
--initial-cluster s1=http://0.0.0.0:2380 \
|
|
--initial-cluster-token tkn \
|
|
--initial-cluster-state new \
|
|
--log-level info \
|
|
--logger zap \
|
|
--log-outputs stderr
|
|
|
|
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcd --version
|
|
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl version
|
|
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdutl version
|
|
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl endpoint health
|
|
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl put foo bar
|
|
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl get foo
|
|
```
|