ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Etcd:13---Linux、Mac OS、Windows、Docker下安装Etcd

2020-12-12 14:01:24  阅读:544  来源: 互联网

标签:tmp 13 Etcd Windows sudo -- test etcd download


一、Linux下安装Etcd

安装步骤

 

  • 第一步:设置几个环境变量(用来指定下载版本和地址),并建立一个目录,该目录用来保存Etcd
ETCD_VER=v3.4.14
GOOGLE_URL=https://storage.googleapis.com/etcd
DOWNLOAD_URL=${GOOGLE_URL}

sudo mkdir -p /tmp/etcd-download-test

 

  • 备注:你也可以从github上下载内容,只要将上面的变量内容换一下即可。不过可能下载速度比较慢,
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GITHUB_URL}
  • 第二步:输入下面的命令开始下载,把压缩包下载到/tmp目录下
sudo curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz

 

  • 第三步:输入下面命令把压缩包解压,解压到/tmp/目录下
sudo tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1

  • 第四步:删除下载的安装包(可选)
sudo rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz

  • 第五步:查看etcd版本,安装成功
sudo /tmp/etcd-download-test/etcd --version
sudo /tmp/etcd-download-test/etcdctl version

etcd交互测试

  • 第一步:启动etcd服务,其默认在2379端口监听
sudo /tmp/etcd-download-test/etcd

  • 第二步:通过输入下面的命令写入一个键值对{foo:bar},然后读取数据,显示成功
sudo ETCDCTL_API=3 /tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar

sudo ETCDCTL_API=3 /tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo

源码目录分析

  • 刚才我们把etcd安装到了/tmp/etcd-download-test目录下,其目录结构如下

二、Mac OS下安装Etcd

安装步骤

  • 第一步:设置几个环境变量(用来指定下载版本和地址),并建立一个目录,该目录用来保存Etcd
ETCD_VER=v3.4.14
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GITHUB_URL}

sudo mkdir -p /tmp/etcd-download-test

 

  • 第二步:输入下面的命令开始下载,把压缩包下载到/tmp目录下
sudo 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
  • 第四步:然后把解压的内容拷贝到上面建立的/tmp/etcd-download-test目录下,同时删除/tmp下的原始目录
mv /tmp/etcd-${ETCD_VER}-darwin-amd64/* /tmp/etcd-download-test && rm -rf mv /tmp/etcd-${ETCD_VER}-darwin-amd64
  • 第五步:查看etcd版本,安装成功
sudo /tmp/etcd-download-test/etcd --version
sudo /tmp/etcd-download-test/etcdctl version

etcd交互测试

  • 第一步:启动etcd服务,其默认在2379端口监听
sudo /tmp/etcd-download-test/etcd
  • 第二步:通过输入下面的命令写入一个键值对{foo:bar}
sudo ETCDCTL_API=3 /tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar
  • 第三步:读取数据,显示成功
sudo ETCDCTL_API=3 /tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo

三、Windows下安装Etcd

 

四、Docker下安装Etcd

安装步骤

  • 第一步:防止以前安装过,删除目录
rm -rf /tmp/etcd-data.tmp && mkdir -p /tmp/etcd-data.tmp && \
  docker rmi gcr.io/etcd-development/etcd:v3.4.14 || true &&
  • 第二步:运行下面的命令安装相关内容
docker run \
  -p 2379:2379 \
  -p 2380:2380 \
  --mount type=bind,source=/tmp/etcd-data.tmp,destination=/etcd-data \
  --name etcd-gcr-v3.4.14 \
  gcr.io/etcd-development/etcd:v3.4.14 \
  /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-v3.4.14 /bin/sh -c "/usr/local/bin/etcd --version"
docker exec etcd-gcr-v3.4.14 /bin/sh -c "/usr/local/bin/etcdctl version"
  • 第四步:检查etcd每个节点的健康状况
docker exec etcd-gcr-v3.4.14 /bin/sh -c "/usr/local/bin/etcdctl endpoint health"

etcd交互测试

  • 第一步:写入数据
docker exec etcd-gcr-v3.4.14 /bin/sh -c "/usr/local/bin/etcdctl put foo bar"
  • 第二步:读取数据
docker exec etcd-gcr-v3.4.14 /bin/sh -c "/usr/local/bin/etcdctl get foo"

标签:tmp,13,Etcd,Windows,sudo,--,test,etcd,download
来源: https://blog.csdn.net/qq_41453285/article/details/110901325

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有