Docker 搭建 etcd 集群配置

Posted wangjq_china

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 搭建 etcd 集群配置相关的知识,希望对你有一定的参考价值。

#关闭selinux、防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
sed -i /^SELINUX=.*/c SELINUX=disabled /etc/selinux/config
sed -i s/^SELINUXTYPE=.*/SELINUXTYPE=disabled/g /etc/selinux/config
grep --color=auto ^SELINUX /etc/selinux/config
setenforce 0

 

# 节点node1

docker run -d --name etcd --restart=always     -p 2379:2379     -p 2380:2380     kubernetes/etcd:v3.2.4     /usr/local/bin/etcd     --name node1     --initial-advertise-peer-urls http://172.19.15.92:2380 --listen-peer-urls http://0.0.0.0:2380     --advertise-client-urls http://172.19.15.92:2379 --listen-client-urls http://0.0.0.0:2379     --initial-cluster-state new     --initial-cluster-token docker-etcd     --initial-cluster node1=http://172.19.15.92:2380,node2=http://172.19.15.93:2380,node3=http://172.19.15.94:2380

 

# 节点node2

docker run -d --name etcd --restart=always     -p 2379:2379     -p 2380:2380     kubernetes/etcd:v3.2.4     /usr/local/bin/etcd     --name node2     --initial-advertise-peer-urls http://172.19.15.93:2380 --listen-peer-urls http://0.0.0.0:2380     --advertise-client-urls http://172.19.15.93:2379 --listen-client-urls http://0.0.0.0:2379     --initial-cluster-state new     --initial-cluster-token docker-etcd     --initial-cluster node1=http://172.19.15.92:2380,node2=http://172.19.15.93:2380,node3=http://172.19.15.94:2380

 

# 节点node3

docker run -d --name etcd --restart=always     -p 2379:2379     -p 2380:2380     kubernetes/etcd:v3.2.4     /usr/local/bin/etcd     --name node3     --initial-advertise-peer-urls http://172.19.15.94:2380 --listen-peer-urls http://0.0.0.0:2380     --advertise-client-urls http://172.19.15.94:2379 --listen-client-urls http://0.0.0.0:2379     --initial-cluster-state new     --initial-cluster-token docker-etcd     --initial-cluster node1=http://172.19.15.92:2380,node2=http://172.19.15.93:2380,node3=http://172.19.15.94:2380

 

# 配置网络

1 [[email protected] ~]# docker exec etcd etcdctl set /k8s/network/config ‘{"Network":"192.100.0.1/16"}‘
2 {"Network":"192.100.0.1/16"}

 

# 查看 etcd 成员

1 [[email protected] ~]# docker exec etcd etcdctl member list
2 14a0991cbae18c78: name=node3 peerURLs=http://172.19.15.94:2380 clientURLs=http://172.19.15.94:2379 isLeader=false
3 33a95350dcc12573: name=node1 peerURLs=http://172.19.15.92:2380 clientURLs=http://172.19.15.92:2379 isLeader=true
4 6cb8872859c66c95: name=node2 peerURLs=http://172.19.15.93:2380 clientURLs=http://172.19.15.93:2379 isLeader=false

 

# 查看 etcd 健康状态

1 [[email protected] ~]# docker exec etcd etcdctl cluster-health
2 member 14a0991cbae18c78 is healthy: got healthy result from http://172.19.15.94:2379
3 member 33a95350dcc12573 is healthy: got healthy result from http://172.19.15.92:2379
4 member 6cb8872859c66c95 is healthy: got healthy result from http://172.19.15.93:2379
5 cluster is healthy

 

# docker 命令行启动

1 /usr/bin/dockerd --registry-mirror=http://f2d6cb40.m.daocloud.io --bip=192.100.68.1/24

 

以上是关于Docker 搭建 etcd 集群配置的主要内容,如果未能解决你的问题,请参考以下文章

docker 配置本地 etcd 集群并使用 clientapiv3 管理集群

centos搭建k8s集群,安装Docker,, Harbor, etcd

etcd集群入门

2 二进制方式搭建K8S集群

通过docker-machine和etcd部署docker swarm集群

云原生 | Kubernetes篇自建高可用k8s集群搭建