分布式 —— 集群成员变更

分布式 —— 集群成员变更,第1张

分布式 —— 集群成员变更

集群成员的变更:

对于基于集群的服务来说,难免会因为某些原因需要增加或者移除服务器,

最简单的方法:

就是停止所有服务器,修改集群成员配置,然后重启集群。

注意:但是这样的方法难免会有一段时间内不能提供服务,必须要仔细选择维护的时间。

所以为了减少无法提供服务的时间,以及夜间维护的次数,Raft算法给出了安全的集群成员变更方法 ---- 单服务器变更,这里的安全是指不会出现多个Leader节点的情况。

单节点变更的具体流程:

  1. 节点 D 向领导者申请加入集群;
  2. 领导者 A 向新节点 D 同步数据;
  3. 领导者 A 将新配置 [A、B、C、D] 作为一个日志项,复制到配置中的所有节点,然后应用新的配置项(这里需要注意的是,每个节点接收到新的配置项肯定是有时差的);
  4. 如果新的日志项应用成功(被大多数节点复制成功),那么新节点添加成功。

单服务器变更:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5699887.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存