Zookeeper热缩容解析

Zookeeper热缩容解析

以5个节点规模的集群为例,进行节点的缩容。不停服,将集群从ZK1,ZK2,ZK3,ZK4,ZK5缩容成ZK1,ZK2,ZK3。

背景

降本,将ZK集群的规模从5节点变成3节点。

目标

核心步骤

  1. 停止ZK4,ZK5

    此时leader,必然在ZK1~ZK3中产生。若ZK1~ZK3中任何一台故障,都需要立即恢复,不然集群不可用。 ZK5直接下线。

  2. 重启ZK4

    ZK4,作为选主的辅助节点。为了保障缩容期间在重启其他节点式,有足够的参与选主的节点。

    等待ZK1~ZK4正常后,再后续操作。

  3. 修改ZK1的配置后重启

    此时,若ZK1不故障,则leader在ZK1~ZK3中产生,若ZK1故障,则Leader在ZK2~ZK4中产生。等待ZK1~ZK4正常后,再后续操作。

  4. 修改ZK2的配置后重启

    此时,若发生故障,则Leader在ZK1~ZK3中产生。等待ZK1~ZK4正常后,再后续操作。

  5. 修改ZK3的配置后重启

    此时,若发生故障,则Leader在ZK1~ZK3中产生。等待ZK1~ZK4正常后,再后续操作。必然主动发生一次切主

  6. 停止ZK4

缩容完成

客户端影响

期间客户可能会感知异常,但是正常都会主动重试重连成功。

相关推荐
ltl2 小时前
实时 OS 巡礼:VxWorks、QNX、Zephyr 与 PREEMPT_RT
linux
我是谁??2 小时前
Ubuntu22.04更换清华源
linux·运维·服务器
圣殿骑士-Khtangc2 小时前
Go字符串高效拼接性能对比与底层原理分析
服务器·前端·golang
Shell运维手记3 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
这个DBA有点耶3 小时前
数据库一体机架构演进:从硬件堆叠到软硬深度耦合
服务器·网络·数据库·硬件架构·运维开发·database·数据库架构
测试运维日常笔记4 小时前
Linux系统安装配置TigerVNC服务器完整指南
linux·运维·服务器
像风一样自由20204 小时前
加强版VScode结合remote-ssh远程连接服务器开发指南
服务器·vscode·ssh
雾时之林5 小时前
Linux----cron定时服务
linux·运维·服务器
wengqidaifeng7 小时前
1.从“会敲命令”到理解 Linux:15 个基础指令、文件树与命令执行的本质
linux·运维·服务器·ubuntu
tedcloud1237 小时前
book-to-skill 怎么部署?把技术书和文档转换成可复用的 AI Skill
运维·服务器·人工智能·开源·ai编程