本文采用知识共享 署名-相同方式共享 4.0 国际 许可协议进行许可。
访问 https://creativecommons.org/licenses/by-sa/4.0/ 查看该许可协议。
1) 环境
- Centos 7.2 +
2) 环境要求
- CPU 要求
- 小型集群: 2 - 4 Core
- 大型集群: 8 - 16 Core
- 内存
- 普通并发:8G
- 百万千万并发:16G - 64G
- 磁盘: IOPS
3) 步骤
本文采用 1主 2从 架构搭建
-
安装 etcd
yum install etcd -y
-
配置
# 备份配置文件 cp /etc/etcd/etcd.conf /etc/etcd/etcd.conf.bak # 防火墙配置 firewall-cmd --add-port=2379/tcp --permanent firewall-cmd --add-port=2380/tcp --permanent firewall-cmd --reload # 编辑配置文件 vim /etc/etcd/etcd.conf
- Master01
localhost 全局替换为本机 IPETCD_LISTEN_PEER_URLS="http://Master01的IP:2380" ETCD_LISTEN_CLIENT_URLS="http://Master01的IP:2379,http://127.0.0.1:2379" ETCD_NAME="Master01" ETCD_INITIAL_ADVERTISE_PEER_URLS="http://Master01的IP:2380" ETCD_INITIAL_CLUSTER="Master01=http://Master01的IP:2380,Slave01=http://Slave01的IP:2380,Slave02=http://Slave02的IP:2380" ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster" ETCD_INITIAL_CLUSTER_STATE="new"
- Slave01
localhost 全局替换为本机 IPETCD_LISTEN_PEER_URLS="http://Slave01的IP:2380" ETCD_LISTEN_CLIENT_URLS="http://Slave01的IP:2379,http://127.0.0.1:2379" ETCD_NAME="Slave01" ETCD_INITIAL_ADVERTISE_PEER_URLS="http://Slave01的IP:2380" ETCD_INITIAL_CLUSTER="Master01=http://Master01的IP:2380,Slave01=http://Slave01的IP:2380,Slave02=http://Slave02的IP:2380" ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster" ETCD_INITIAL_CLUSTER_STATE="new"
- Slave02
localhost 全局替换为本机 IPETCD_LISTEN_PEER_URLS="http://Slave02的IP:2380" ETCD_LISTEN_CLIENT_URLS="http://Slave02的IP:2379,http://127.0.0.1:2379" ETCD_NAME="Slave02" ETCD_INITIAL_ADVERTISE_PEER_URLS="http://Slave02的IP:2380" ETCD_INITIAL_CLUSTER="Master01=http://Master01的IP:2380,Slave01=http://Slave01的IP:2380,Slave02=http://Slave02的IP:2380" ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster" ETCD_INITIAL_CLUSTER_STATE="new"
- Master01
-
启动
# 重启 etcd 并配置开机自启 systemctl restart etcd systemctl enable etcd # 检查 member 状态 etcdctl member list # 在 Master10 上 set 测试集群工作是否正常 etcdctl set wars cat # 在 Slave 上 get 测试 etcdctl get wars