0530-6.1-如何只是遷移NameNode或JournalNode
- 2019 年 11 月 28 日
- 筆記
溫馨提示:如果使用電腦查看圖片不清晰,可以使用手機打開文章單擊文中的圖片放大查看高清原圖。
Fayson的github: https://github.com/fayson/cdhproject
提示:代碼塊部分可以左右滑動查看噢
1
文檔編寫目的
Fayson在上一篇文章《0528-6.1-如何遷移NameNode相關角色》中介紹過通過Cloudera Manager遷移管理節點NameNode,JournalNode和Failover Controller三個角色到其它節點。本文主要介紹如何只是遷移NameNode+Failover Controller或JournalNode角色。
- 測試環境
1.CDH6.1
2.Redhat7.4
3.HDFS已經啟用HA
2
環境準備
1.啟用HDFS HA成功後再次查看HDFS服務的「實例」頁面,可以看到一共4個節點在一個HDFS HA的集群中的不同角色劃分。

3
只遷移NameNode和Failover Controller
1.在HDFS服務的「實例」頁面,點擊「遷移角色」

2.源主機我們選擇ip-172-31-12-142.ap-southeast-1.compute.internal,然後取消JournalNode的勾選,目標主機我們選擇
ip-172-31-9-113.ap-southeast-1.compute.internal

注意Failover Controller必須和NameNode節點在同一個機器,不能進行勾選。最下方提示該操作需要重啟集群,必須勾選才能繼續往下走,這裡我們勾選,並點擊「繼續」。
3.開始進行NameNode和Failover Controller角色的遷移。

所有命令執行成功:

點擊完成
4.查看NameNode,JournalNode以及Failover Controller已經遷移到了我們所選擇的節點ip-172-31-9-113上。

集群一切正常:

4
只遷移JournalNode
1.在HDFS服務的「實例」頁面,點擊「遷移角色」

2.源主機我們選擇ip-172-31-6-83.ap-southeast-1.compute.internal,然後取消NameNode和Failover Controller的勾選,目標主機我們選擇
ip-172-31-9-113.ap-southeast-1.compute.internal

注意Failover Controller必須和NameNode節點在同一個機器,取消勾選NameNode默認也取消勾選了Failover Controller。最下方提示該操作需要重啟集群,必須勾選才能繼續往下走,這裡我們勾選,並點擊「繼續」。
3.開始進行JournalNode角色的遷移。

所有命令執行成功:

點擊完成
5.查看JournalNode已經遷移到了我們所選擇的節點ip-172-31-9-113上。

5
總結
1.如果你想將NameNode,JournalNode和Failover Controller角色所在的節點從CDH集群中剝離,可以使用Cloudera Manager界面嚮導式執行。
2.Cloudera Manager對於HDFS服務的角色遷移功能只針對NameNode,JournalNode和Failover Controller角色,不包括其他角色比如DataNode。
3.Cloudera Manager對於HDFS服務的角色遷移必須在HDFS已經啟用HA的情況下執行,即如果你只有一個NameNode,Cloudera Manager沒有提供你只是遷移這個NameNode到新的節點。
4.該功能在執行過程中會需要重啟整個HDFS服務,請提前做好停機規劃。
5.在遷移選擇節點時,你可以選擇同時遷移NameNode和JournalNode到另外一台主機,Failover Controller默認也會被遷移到新的主機,因為Failover Controller角色必須和NameNode角色在同一節點。你也可以選擇只遷移NameNode或JournalNode角色。本文就是描述只單獨遷移NameNode+Failover Controller或JournalNode。
提示:代碼塊部分可以左右滑動查看噢
為天地立心,為生民立命,為往聖繼絕學,為萬世開太平。 溫馨提示:如果使用電腦查看圖片不清晰,可以使用手機打開文章單擊文中的圖片放大查看高清原圖。


