Zookeeper在Debian上的集群扩展策略
openjdk-11-jdk或openjdk-8-jdk)和Zookeeper(建议与现有集群版本一致),并创建数据目录(/var/lib/zookeeper/data)和日志目录(/var/log/zookeeper)。Mode: leader或Mode: follower),无节点故障或数据同步问题。zoo.cfg文件复制到新节点的Zookeeper配置目录(如/opt/apache-zookeeper-3.9.2/conf/),修改server.x配置项,添加新节点信息。格式为:server.<节点ID>=<新节点IP>:2888:3888(2888为Follower与Leader通信端口,3888为Leader选举端口)。dataDir目录下创建myid文件,写入唯一节点ID(如新节点为第4台,则写入4)。确保myid内容与zoo.cfg中的server.x编号一致。zkServer.sh start),此时节点会以Observer模式加入集群(默认不参与投票,仅同步数据);reconfig命令,将新节点添加为Follower。例如:echo "add server.4=192.168.1.4:2888:3888" | zkCli.sh -server 192.168.1.1:2181
③ 验证新节点状态:通过zkServer.sh status命令查看新节点模式是否变为follower,或通过echo stat | nc localhost 2181命令确认集群成员列表。zoo.cfg中,对应server.x行添加peerType=observer,例如:server.4=192.168.1.4:2888:3888:observer;reconfig命令添加Observer:echo "add server.4=192.168.1.4:2888:3888:observer" | zkCli.sh -server 192.168.1.1:2181
Observer节点适合部署在异地机房,实现读请求就近转发,降低延迟。zkServer.sh status,确认模式为follower(或observer);echo mntr | nc localhost 2181,检查zk_server_state和zk_followers/zk_observers列表,确保新节点已加入;