etcd动态扩容

本文详细介绍了如何在运行时安全地向etcd集群添加更多节点,以提高系统的可用性和容量。内容涵盖准备新节点、修改集群配置以及平滑加入新节点的步骤,确保服务在扩展过程中不受影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

etcd集群一般采用3台机器组建集群,作为集群高可用,集群所在的机房也要高可用,通常3台机器分布在两个机房,但假如遇到机房层面的故障,可能会导致etcd集群不能正常工作,基于以上原因,我们需要扩容为5台

 

目前etcd 可以支持在线动态扩容,无须重启etcd集群

加入新增加etcd4 etcd5节点

1、etcd4 和etcd5 基础环境初始化(参考之前的文章etcd搭建)

2、etcd集群中新增etcd4 etcd5的hosts解析,如果是dns域名提前配置,保证5台机器的地址信息可以正常解析

3、命令行增加etcd4

etcdctl --endpoints=http://etcd2.server.biz:2379,http://etcd1.server.biz:2379,http://etcd3.server.biz:2379 member add etcd4   --peer-urls=http://etcd4.server.biz:2380   

Member 3bdc4b22ebb243b6 added to cluster f0364a493c8924dc

ETCD_NAME="etcd4"
ETCD_INITIAL_CLUSTER="etcd1=http://etcd1.server.biz:2380,etcd4=http://etcd4.server.biz:2380,etcd3=http://etcd3.server.biz:2380,etcd2=http://etcd2.server.biz:2380"
ETCD_INITIAL_CLUSTER_STATE="existing"

 

此时还未启动

4、etcd4  的etcd.conf配置中参照上面配置更新替换,同时再次上传 /data/etcd 目录下的所有数据

5、启动etcd4

      systemctl  daemon-reload

      systemctl  start etcd

 

6、查看etcd集群信息

  etcdctl --endpoints=http://etcd2.server.biz:2379,http://etcd1.server.biz:2379,http://etcd3.server.biz:2379member list  -w table
 
 

7、安装相同的操作将etcd5加入etcd集群即可

8、最终状态

etcdctl --endpoints=http://etcd2.server.biz:2379,http://etcd1.server.biz:2379,http://etcd3.server.biz:2379,http://etcd4.server.biz:2379,http://etcd5.server.biz:2379endpoint status  -w table  
 
 
  • 节点去除命令

etcdctl --endpoints=http://etcd2.server.biz:2379,http://etcd1.server.biz:2379,http://etcd3.server.biz:2379 member remove    8b5171d0d6ac9df3

Member 8b5171d0d6ac9df3 removed from cluster f0364a493c8924dc

 

后续:

后续只需要将原来etcd1、etcd2、etcd3的etcd.conf配置中ETCD_INITIAL_CLUSTER的值更新为5台信息即可,已便于后续etcd集群启动时可以通过配置正常加载

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值