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
列表,確保新節點已加入;