CentOS下安装etcd集群

一 . 在所有机器上安装etcd

我们准备3台机器 

172.18.0.231 集群节点1
172.18.0.232 集群节点2
172.18.0.233 集群节点3

 

 

 

#yum安装etcd
yum install -y etcd

 

二 . 修改配置

#备份原配置文件并编辑
cp /etc/etcd/etcd.conf /etc/etcd/etcd.conf.bk
vim /etc/etcd/etcd.conf

参考配置:

Node1 : 172.18.0.231

#[Member]
ETCD_DATA_DIR="/var/lib/etcd/etcd231"
ETCD_WAL_DIR="/var/lib/etcd/etcd231/wal"
ETCD_LISTEN_PEER_URLS="http://172.18.0.231:2380"
ETCD_LISTEN_CLIENT_URLS="http://172.18.0.231:2379,http://127.0.0.1:2379"
ETCD_NAME="etcd231"
#[Clustering]
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.18.0.231:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://172.18.0.231:2379,http://127.0.0.1:2379"
ETCD_INITIAL_CLUSTER="etcd231=http://172.18.0.231:2380,etcd232=http://172.18.0.232:2380,etcd233=http://172.18.0.233:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-wanma"
ETCD_INITIAL_CLUSTER_STATE="new"

Node2 : 172.18.0.232

#[Member]
ETCD_DATA_DIR="/var/lib/etcd/etcd232"
ETCD_WAL_DIR="/var/lib/etcd/etcd232/wal"
ETCD_LISTEN_PEER_URLS="http://172.18.0.232:2380"
ETCD_LISTEN_CLIENT_URLS="http://172.18.0.232:2379,http://127.0.0.1:2379"
ETCD_NAME="etcd232"
#[Clustering]
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.18.0.232:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://172.18.0.232:2379,http://127.0.0.1:2379"
ETCD_INITIAL_CLUSTER="etcd231=http://172.18.0.231:2380,etcd232=http://172.18.0.232:2380,etcd233=http://172.18.0.233:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-wanma"
ETCD_INITIAL_CLUSTER_STATE="new"

Node3 : 172.18.0.233

#[Member]
ETCD_DATA_DIR="/var/lib/etcd/etcd233"
ETCD_WAL_DIR="/var/lib/etcd/etcd233/wal"
ETCD_LISTEN_PEER_URLS="http://172.18.0.233:2380"
ETCD_LISTEN_CLIENT_URLS="http://172.18.0.233:2379,http://127.0.0.1:2379"
ETCD_NAME="etcd233"
#[Clustering]
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.18.0.233:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://172.18.0.233:2379,http://127.0.0.1:2379"
ETCD_INITIAL_CLUSTER="etcd231=http://172.18.0.231:2380,etcd232=http://172.18.0.232:2380,etcd233=http://172.18.0.233:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-wanma"
ETCD_INITIAL_CLUSTER_STATE="new"

三 . 启动集群

#启动etcd服务
systemctl restart etcd

#设定etcd服务为开机自启动
systemctl enable etcd

注意 , 第一台启动的etcd(master节点)(isLeader=true)会等待第二台启动之后 ,才会启动成功

四.集群新增额外节点(临时节点)

步骤1 : 加入成员

#增加一个集群节点 , 首先新节点需要配置并启动etcd
etcdctl member add name=etcd234 --peer-urls="http://172.18.0.234:2380"

步骤2 : 删除新节点的data目录

rm -rf /var/lib/etcd/etcd234/*

步骤3 : 新节点增加配置etcd.conf

注意 , 里面的 ETCD_INITIAL_CLUSTER_STATE="existing" 代表已存在节点

步骤4 : 启动新节点的etcd服务

systemctl start etcd

PS : 步骤不能错 , 所以如果有可能 , 请新加节点之后 , 集群重启一下 , 比较不容易错

五 . 常用命令

#查看集群健康状态
etcdctl cluster-health

#查看集群所有节点
etcdctl member list

#把一台设备移除出集群 , 后面是集群节点号 , 使用list可以查看到
#移除之后,该节点的etcd服务自动关闭
etcdctl member remove 1e82894832618580

#更新一个节点
etcdctl member update 1e82894832618580

#设置key=hello , value=world
etcdctl set  hello world

#查看key的值
etcdctl get hello

原文地址:https://www.cnblogs.com/kreo/p/13155893.html