http://coderplay.javaeye.com/blog/290767
http://www.javaeye.com/topic/350223
添加節(jié)點
操作如下:
首先 把新節(jié)點的 IP或主機名 加入主節(jié)點(master)的 conf/slaves 文件。
然后 登錄新的從節(jié)點,執(zhí)行以下命令:
$ cd path/to/hadoop
$ bin/hadoop-daemon.sh start datanode
$ bin/hadoop-daemon.sh start tasktracker
然后 就可以在namanode機器上運行balancer,執(zhí)行負載均衡
$bin/hadoop balancer
注:在0.21中執(zhí)行bin/hadoop-daemon.sh start datanode 會提示該命令已廢除,建議使用./hdfs datanode 命令,但是用后者反而會拋異常。
刪除節(jié)點
比如我原來有10個節(jié)點的集群. 現在我想停掉2個,但數據不能丟失,只能讓它們的數據轉移到其它8臺上.這道過程就是decommission. 我們不能直接把那2臺停掉, 要在停掉之前把數據轉移出去.
首先建立一個excludes文件.它是一個文本, 里面每行就是想要停掉的主機名.這里excludes 放在 $HADOOP_HOME下
例如
CS02
CS03
CS04
CS05
CS06
CS07
CS08
CS09
CS10
這樣就表明要把9臺機器給停了.
然后在conf/hadoop-site.xml添加這樣的屬性:
<property>
<name>dfs.hosts.exclude</name>
<value>excludes</ value>
</property>
做完這步, 用bin/hadoop dfsadmin -refreshNodes命令更新結點以及hadoop配置
Name: 192.168.0.89:50010
State : Decommissioned
Total raw bytes: 0 (0 KB)
Remaining raw bytes: 0(0 KB)
Used raw bytes: 4703211520 (4.38 GB)
% used: ∞%
Last contact: Thu Jan 01 08:00:00 CST 1970
可以看到86在停止中, 89已經停止了.
在沒停止之前, mapreduce會拒絕操作. 會出異常的
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/vozon/archive/2010/10/27/5968939.aspx