首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >005.基于docker部署etcd集群部署

005.基于docker部署etcd集群部署

作者头像
木二
发布2019-07-26 16:38:04
2.2K0
发布2019-07-26 16:38:04
举报
文章被收录于专栏:木二天空木二天空

一 环境准备

ntp配置:略 #建议配置ntp服务,保证时间一致性

etcd版本:v3.3.9

防火墙及SELinux:关闭防火墙和SELinux

名称

地址

主机名

备注

etcd1

172.24.8.71

etcd1.example.com

etcd2

172.24.8.72

etcd2.example.com

etcd3

172.24.8.73

etcd3.example.com

  1 # hostnamectl set-hostname etcd1.example.com
  2 # hostnamectl set-hostname etcd2.example.com
  3 # hostnamectl set-hostname etcd3.example.com

二 docker etcd集群部署

2.1 安装docker

见《docker版本及安装》。

2.2 etcd基础配置

  1 # mkdir -p /var/log/etcd/			        #建议创建etcd日志保存目录
  2 # mkdir -p /data/etcd				#建议创建单独的etcd数据目录
  3 # REGISTRY=gcr.io/etcd-development/etcd		#配置etcd镜像的仓库,不推荐使用
  4 # REGISTRY=quay.io/coreos/etcd			#建议使用此仓库
  5 # ETCD_VERSION=latest				#设置etcd版本
  6 # TOKEN=my-etcd-01				        #设置唯一集群ID
  7 # CLUSTER_STATE=new				        #置为新建集群
  8 # NAME_1=etcd1
  9 # NAME_2=etcd2
 10 # NAME_3=etcd3					#设置三个节点的name
 11 # HOST_1=172.24.8.71
 12 # HOST_2=172.24.8.72
 13 # HOST_3=172.24.8.73				#设置三个节点的IP
 14 # CLUSTER=${NAME_1}=http://${HOST_1}:2380,${NAME_2}=http://${HOST_2}:2380,${NAME_3}=http://${HOST_3}:2380					                        #设置集群所有节点信息
 15 # DATA_DIR=/data/etcd				#设置集群etcd数据节点

提示:以上所有操作需要在所有节点操作。

2.3 启动docker etcd集群

  1 [root@etcd1 ~]# THIS_NAME=${NAME_1}
  2 [root@etcd1 ~]# THIS_IP=${HOST_1}
  3 [root@etcd1 ~]# docker run \
  4   -p 2379:2379 \
  5   -p 2380:2380 \
  6   --volume=${DATA_DIR}:/etcd-data \
  7   --name etcd ${REGISTRY}:${ETCD_VERSION} \
  8   /usr/local/bin/etcd \
  9   --data-dir=/etcd-data --name ${THIS_NAME} \
 10   --initial-advertise-peer-urls http://${THIS_IP}:2380 --listen-peer-urls http://0.0.0.0:2380 \
 11   --advertise-client-urls http://${THIS_IP}:2379 --listen-client-urls http://0.0.0.0:2379 \
 12   --initial-cluster ${CLUSTER} \
 13   --initial-cluster-state ${CLUSTER_STATE} --initial-cluster-token ${TOKEN}
 14 
 15 [root@etcd2 ~]# THIS_NAME=${NAME_2}
 16 [root@etcd2 ~]# THIS_IP=${HOST_2}
 17 [root@etcd2 ~]# docker run \
 18   -p 2379:2379 \
 19   -p 2380:2380 \
 20   --volume=${DATA_DIR}:/etcd-data \
 21   --name etcd ${REGISTRY}:${ETCD_VERSION} \
 22   /usr/local/bin/etcd \
 23   --data-dir=/etcd-data --name ${THIS_NAME} \
 24   --initial-advertise-peer-urls http://${THIS_IP}:2380 --listen-peer-urls http://0.0.0.0:2380 \
 25   --advertise-client-urls http://${THIS_IP}:2379 --listen-client-urls http://0.0.0.0:2379 \
 26   --initial-cluster ${CLUSTER} \
 27   --initial-cluster-state ${CLUSTER_STATE} --initial-cluster-token ${TOKEN}
 28 
 29 [root@etcd3 ~]# THIS_NAME=${NAME_3}
 30 [root@etcd3 ~]# THIS_IP=${HOST_3}
 31 [root@etcd3 ~]# docker run \
 32   -p 2379:2379 \
 33   -p 2380:2380 \
 34   --volume=${DATA_DIR}:/etcd-data \
 35   --name etcd ${REGISTRY}:${ETCD_VERSION} \
 36   /usr/local/bin/etcd \
 37   --data-dir=/etcd-data --name ${THIS_NAME} \
 38   --initial-advertise-peer-urls http://${THIS_IP}:2380 --listen-peer-urls http://0.0.0.0:2380 \
 39   --advertise-client-urls http://${THIS_IP}:2379 --listen-client-urls http://0.0.0.0:2379 \
 40   --initial-cluster ${CLUSTER} \
 41   --initial-cluster-state ${CLUSTER_STATE} --initial-cluster-token ${TOKEN}

提示:quay.io/coreos/etcd镜像国内可能无法pull,可在国外节点pull,然后scp至集群节点。

2.4 确认验证

  1 [root@etcd1 ~]# docker ps
15
15
  1 [root@etcd2 ~]# docker ps
16
16
  1 [root@etcd3 ~]# docker ps
17
17
  1 [root@etcd1 ~]# docker exec -it 21e6cf6e5e89 /usr/local/bin/etcdctl cluster-health
18
18
  1 [root@etcd1 ~]# netstat -nltp | grep 2380
19
19
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一 环境准备
  • 二 docker etcd集群部署
    • 2.1 安装docker
      • 2.2 etcd基础配置
        • 2.3 启动docker etcd集群
          • 2.4 确认验证
          相关产品与服务
          容器镜像服务
          容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档