文檔編寫目的
隨着集羣規模的不斷擴大,在對集羣進行調整優化時。時常會考慮對集羣的角色進行優化調整,這就會涉及到服務角色的遷移。本篇文章主要介紹如何將Zookeeper服務的單個實例從一個節點遷移到其他節點。
- 測試環境:
1.Redhat7.6
2.採用root用户操作
3.CM和CDH版本為5.16.2
Zookeeper角色遷移計劃
1.集羣Zookeeper服務角色實例分配情況
2.由於角色規劃不合理,需要將cdp1.hadoop.com節點的Zookeeper實例實例遷移到cdp4.hadoop.com節點上
Zookeeper角色遷移
1.通過CM查看集羣ZooKeeper中Server數據目錄的位置
2.停止cdp1上的ZK server服務
3.在cdp4節點創建一個新的目錄,並把cdp1節點的目錄的數據遷移到cdp4節點新目錄
[root@cdp4 ~]# mkdir /data/ZK [root@cdp4 ~]#將cdp1節點的/data/ZK遷移到cdp4的/data/ZK
注意和原目錄比對一下目錄權限是否有變化
4.在CM界面刪除cdp1上的ZK server
5.在cdp4上添加一個ZK server角色
啓動cdp4 上的ZK server
ZooKeeper啓動成功後,將cdp2和cdp3兩個節點的ZK服務重啓。
注意:重啓cdh02和cdh03節點的ZK服務時一個個重啓,確保ZK服務正常後,再操作下一個。
實例運行正常,leader選舉正常
最後部署客户端配置並重啓相關服務
集羣服務運行正常
總結
1.Zookeeper服務角色遷移,其實就是將待遷移節點的ZK服務停止並刪除並將待遷移節點的數據目錄打包拷貝至新節點上,同時在新節點上添加一個ZK服務即可
2.在遷移ZK服務的過程中,需要一個節點一個節點的操作,操作完一個節點後,需要重啓滾動重啓ZK服務,確保服務的選舉沒有問題後再進行操作
3.移動ZooKeeper的數據目錄到新的節點的目錄時,要注意目錄的用户屬組和權限正確
4.ZK服務實例的遷移會涉及到HDFS、HBase等服務的重啓,同時也需要考慮到應用層面的變更(如:Kafka、HBase等服務相關應用)
【來源:老王科技】
聲明:轉載此文是出於傳遞更多信息之目的。若有來源標註錯誤或侵犯了您的合法權益,請作者持權屬證明與本網聯繫,我們將及時更正、刪除,謝謝。 郵箱地址:[email protected]