`

Hadoop删除节点(Decommissioning Nodes)

 
阅读更多
1.集群配置
   修改conf/hdfs-site.xml文件
Xml代码 复制代码 收藏代码
  1. <property>  
  2.   <name>dfs.hosts.exclude</name>  
  3.   <value>/data/soft/hadoop/conf/excludes</value>  
  4.   <description>Names a file that contains a list of hosts that are   
  5.   not permitted to connect to the namenode.  The full pathname of the   
  6.   file must be specified.  If the value is empty, no hosts are   
  7.   excluded.</description>  
  8. </property>  


2确定要下架的机器
dfs.hosts.exclude定义的文件内容为,每个需要下线的机器,一行一个。这个将阻止他们去连接Namenode。如:
Xml代码 复制代码 收藏代码
  1. slave-003   
  2. slave-004  


3.强制重新加载配置
Java代码 复制代码 收藏代码
  1. [root@master hadoop]# ./bin/hadoop dfsadmin  -refreshNodes  

它会在后台进行Block块的移动

4.关闭节点
   等待刚刚的操作结束后,需要下架的机器就可以安全的关闭了。
Java代码 复制代码 收藏代码
  1. [root@master hadoop]# ./bin/ hadoop dfsadmin -report  

   可以查看到现在集群上连接的节点

  正在执行Decommission,会显示:
 
Xml代码 复制代码 收藏代码
  1. Decommission Status : Decommission in progress  

  执行完毕后,会显示:
 
Xml代码 复制代码 收藏代码
  1. Decommission Status : Decommissioned  


5.再次编辑excludes文件
一旦完成了机器下架,它们就可以从excludes文件移除了

登录要下架的机器,会发现DataNode进程没有了,但是TaskTracker依然存在,需要手工处理一下

<script type="text/javascript"><!-- google_ad_client = "pub-1076724771190722"; /* JE个人博客468x60 */ google_ad_slot = "5506163105"; google_ad_width = 468; google_ad_height = 60; //--> </script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script><script src="http://pagead2.googlesyndication.com/pagead/js/r20110622/r20110627/show_ads_impl.js"></script><script src="http://googleads.g.doubleclick.net/pagead/test_domain.js"></script><script src="http://pagead2.googlesyndication.com/pagead/render_ads.js"></script><script></script>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics