首页 > 其他 > 详细

ETCD成员维护

时间:2019-10-14 14:15:56      阅读:111      评论:0      收藏:0      [点我收藏+]
# For each machine
TOKEN=my-etcd-token-1
CLUSTER_STATE=new
NAME_1=etcd-node-1
NAME_2=etcd-node-2
NAME_3=etcd-node-3
HOST_1=10.240.0.13
HOST_2=10.240.0.14
HOST_3=10.240.0.15
CLUSTER=${NAME_1}=http://${HOST_1}:2380,${NAME_2}=http://${HOST_2}:2380,${NAME_3}=http://${HOST_3}:2380

# For node 1
THIS_NAME=${NAME_1}
THIS_IP=${HOST_1}
etcd --data-dir=data.etcd --name ${THIS_NAME} 	--initial-advertise-peer-urls http://${THIS_IP}:2380 	--listen-peer-urls http://${THIS_IP}:2380 	--advertise-client-urls http://${THIS_IP}:2379 	--listen-client-urls http://${THIS_IP}:2379 	--initial-cluster ${CLUSTER} 	--initial-cluster-state ${CLUSTER_STATE} 	--initial-cluster-token ${TOKEN}

# For node 2
THIS_NAME=${NAME_2}
THIS_IP=${HOST_2}
etcd --data-dir=data.etcd --name ${THIS_NAME} 	--initial-advertise-peer-urls http://${THIS_IP}:2380 	--listen-peer-urls http://${THIS_IP}:2380 	--advertise-client-urls http://${THIS_IP}:2379 	--listen-client-urls http://${THIS_IP}:2379 	--initial-cluster ${CLUSTER} 	--initial-cluster-state ${CLUSTER_STATE} 	--initial-cluster-token ${TOKEN}

# For node 3
THIS_NAME=${NAME_3}
THIS_IP=${HOST_3}
etcd --data-dir=data.etcd --name ${THIS_NAME} 	--initial-advertise-peer-urls http://${THIS_IP}:2380 	--listen-peer-urls http://${THIS_IP}:2380 	--advertise-client-urls http://${THIS_IP}:2379 	--listen-client-urls http://${THIS_IP}:2379 	--initial-cluster ${CLUSTER} 	--initial-cluster-state ${CLUSTER_STATE} 	--initial-cluster-token ${TOKEN}

Then replace a member with member remove and member add commands:

# get member ID
export ETCDCTL_API=3
HOST_1=10.240.0.13
HOST_2=10.240.0.14
HOST_3=10.240.0.15
etcdctl --endpoints=${HOST_1}:2379,${HOST_2}:2379,${HOST_3}:2379 member list

# remove the member
MEMBER_ID=278c654c9a6dfd3b
etcdctl --endpoints=${HOST_1}:2379,${HOST_2}:2379,${HOST_3}:2379 	member remove ${MEMBER_ID}

# add a new member (node 4)
export ETCDCTL_API=3
NAME_1=etcd-node-1
NAME_2=etcd-node-2
NAME_4=etcd-node-4
HOST_1=10.240.0.13
HOST_2=10.240.0.14
HOST_4=10.240.0.16 # new member
etcdctl --endpoints=${HOST_1}:2379,${HOST_2}:2379 	member add ${NAME_4} 	--peer-urls=http://${HOST_4}:2380

Next, start the new member with --initial-cluster-state existing flag:

# [WARNING] If the new member starts from the same disk space,
# make sure to remove the data directory of the old member
#
# restart with ‘existing‘ flag
TOKEN=my-etcd-token-1
CLUSTER_STATE=existing
NAME_1=etcd-node-1
NAME_2=etcd-node-2
NAME_4=etcd-node-4
HOST_1=10.240.0.13
HOST_2=10.240.0.14
HOST_4=10.240.0.16 # new member
CLUSTER=${NAME_1}=http://${HOST_1}:2380,${NAME_2}=http://${HOST_2}:2380,${NAME_4}=http://${HOST_4}:2380

THIS_NAME=${NAME_4}
THIS_IP=${HOST_4}
etcd --data-dir=data.etcd --name ${THIS_NAME} 	--initial-advertise-peer-urls http://${THIS_IP}:2380 	--listen-peer-urls http://${THIS_IP}:2380 	--advertise-client-urls http://${THIS_IP}:2379 	--listen-client-urls http://${THIS_IP}:2379 	--initial-cluster ${CLUSTER} 	--initial-cluster-state ${CLUSTER_STATE} 	--initial-cluster-token ${TOKEN}

ETCD成员维护

原文:https://www.cnblogs.com/justart/p/11670850.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!