1. 程式人生 > >動態的新增和刪除hadoop叢集中的節點

動態的新增和刪除hadoop叢集中的節點

一:新增節點

A:新節點中新增賬戶,設定無密碼登陸

B:Name節點中設定到新節點的無密碼登陸

ssh-copy-id slave4

C:在Name節點slaves檔案中新增新節點

D:在所有節點/etc/hosts檔案中增加新節點(所有節點保持一致)

----------------------------- E:啟動datanode程序,在新節點中執行--在hadoop安裝目錄下輸入  sbin/hadoop-daemon.sh start datanode 

直接重新整理web介面,可以看到節點已經在上面了

2.啟動nodemanager程序  在hadoop安裝目錄下輸入  sbin/yarn-daemon.sh start nodemanager 

3.均衡block  sbin/start-balancer.sh

1)如果不balance,那麼cluster會把新的資料都存放在新的node上,這樣會降低mapred的工作效率 2)設定平衡閾值,預設是10%,值越低各節點越平衡,但消耗時間也更長 sbin/start-balancer.sh -threshold 5 3)設定balance的頻寬,預設只有1M/s 通過下面的命令也可以設定平衡時使用的網路頻寬(位元組/秒)

4.配置寬頻

開啟hdfs-site.xml,設定節點平衡頻寬設定(預設值1M,下面設定為10M)

<property>

<name>dfs.datanode.balance.bandwidthPerSec</name>

<value>20971520</value>

</property>

在NameNode執行 hadoop dfsadmin -report 檢視存活的節點

二、刪除節點

A:修改Name節點的hdfs-site.xml增加,設定節點排除檔案的位置(必須是絕對路徑)

<property>     <name>dfs.hosts.exclude</name>     <value>/soft/hadoop/conf/excludes</value> </property>

C:新建excludes檔案,檔案裡寫要刪除節點的hostname

在excludes檔案中新增要排除的節點主機名,一行一個

D:Name節點執行

hadoop dfsadmin –refreshNodes

等狀態變成Decommissioned後就可以關閉這個節點了,

可在要移除的節點上執行相應的關閉命令,如:

hadoop-daemon.sh stop datanode

幾分鐘後,節點將從Decommissioned進入Dead狀態(時間經過大約500多秒)。

也可以在NameNode上檢視關閉程序

hadoop dfsadmin -report

------------注意

1:如果剛刪除的節點要再新增到叢集要先刪除excludes檔案,執行 hadoop dfsadmin –refreshNodes 2:節點的狀態可以通過http://NameNodes:50070檢視 3:如果資料較大則關閉的時間可能會很長