首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

在hadoop集群中剔除结点

2012-08-17 
在hadoop集群中删除结点我们现有的Hadoop集群已经运行了一段时间了 (转自高飞鸟博客)由于集群中的服务器分

在hadoop集群中删除结点

我们现有的Hadoop集群已经运行了一段时间了 (转自高飞鸟博客)

由于集群中的服务器分布在2个不同的机房,受跨机房带宽的限制

集群中在2个机房之间的数据传输很慢

所以想把另一个机房的3台服务器从Hadoop集群中去掉

Hadoop提供了Decommission的特性,可以按照以下步骤来操作:

1. 在hadoop的conf目录下生成一个excludes的文件,写上需要remove的节点ip

??? 一个节点一行,注意要写ip,不能写Hostname,如:

10.15.10.41
10.15.10.42
10.15.10.43

2. 在hdfs-site.xml中增加配置:

<property>???
??? <name>dfs.hosts.exclude</name>???
??? <value>/opt/sohuhadoop/conf/excludes</value>???
??? <final>true</final>
</property>

3. 复制以上2个文件到集群节点中的NameNode即可,不需要分发到所有DataNode中?

?

4. 执行hadoop dfsadmin -refreshNodes命令,它会在后台进行Block块的移动

??? 从移出的Nodes上移动到其它的Nodes上面

5. 通过以下2种方式查看Decommission的状态:

??? hadoop dfsadmin -report

??? http://10.10.71.220:50070/dfsnodelist.jsp

??? 正在执行Decommission,会显示:

??? Decommission Status : Decommission in progress

??? 执行完毕后,会显示:

??? Decommission Status : Decommissioned

<!-- You can start editing here. -->

?

热点排行