您好,登錄后才能下訂單哦!
小編給大家分享一下Hadoop2.6集群如何動態添加和刪除數據節點,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
開始之前,應該把所有新增數據節點上的Hadoop環境都配置好(如果要直接復制已經存在節點的hadoop文件夾,應該刪掉里面已經產生的集群數據,比如tmp和data目錄,不然會出問題)
Step1:關閉新加入數據節點的防火墻。
Step2:在各個節點上把新增節點的hosts信息補充完整
Step3:在兩個NameNode上,打通向新增數據節點無密鑰SSH登錄的通道。
Step4:在兩個NameNode上的dfs.hosts指定的白名單文件中追加上所有新增的數據節點的hostname,需要更改下hdfs-site.xml,黑名單文件用于排除集群中的節點
<property> <name>dfs.hosts</name> <value>/usr/hadoop/etc/hadoop/datanode-allow.list</value> </property> <property> <name>dfs.hosts.exclude</name> <value>/usr/hadoop/etc/hadoop/datanode-deny.list</value> </property>
Step5:在namenode上執行如下刷新命令:hdfs dfsadmin -refreshNodes
可通過hdfs dfsadmin -report或者master:50070 web端口查看當前集群節點狀態
Step6:在兩個NameNode節點上,更改slaves文件,將要上線的數據節點hostname追加到slaves文件中。在slave上啟動datanode和nodemanager進程:
sbin/hadoop-daemon.sh start datanode
sbin/yarn-daemon.sh start nodemanager
用新增節點用jps查看進程,可在master節點通過yarn node -list查看集群情況
Step7:均衡block(非必須,根據集群情況設定)
./bin/start-balancer.sh
1) 如果不balance,那么cluster會把新的數據都存放在新的node上,這樣會降低mapred的工作效率
2) 設置平衡閾值,默認是10%,值越低各節點越平衡,但消耗時間也更長
hdfs balancer -threshold 5
3) 設置balance的帶寬,默認只有1M/s
hdfs dfsadmin -setBalancerBandwidth 67108864
數據節點的刪除和上述步驟類似,只不過在master1上修改datanode-allow.list和datanode-deny.list,還有slaves文件并且同步到master2上。整個操作的過程中都不涉及集群的重啟~等待刷新的操作結束后,需要下架的機器就可以安全的關閉了。
[root@master hadoop]# ./bin/ hdfs dfsadmin -refreshNodes [root@master hadoop]# ./bin/ hadoop dfsadmin -report
可以查看到現在集群上連接的節點
正在執行Decommission,會顯示: Decommission Status : Decommission in progress 執行完畢后,會顯示: Decommission Status : Decommissioned
1,在master的datanode-deny.list刪除相應機器
2,在master上刷新節點配置情況:
hadoop dfsadmin -refreshNodes
3,在slave上重啟tasktracker進程:
hadoop-daemon.sh start datanode
PS:如果之前沒有關閉該slave上的datanode進程,需要先關閉再重新啟動。
以上是“Hadoop2.6集群如何動態添加和刪除數據節點”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。