Matthewl 发表于 2018-10-30 11:51:00

decomission hadoop node-Linux运维

  介绍
  因为hadoop集群是由很多普通的node服务器组成,服务器出现硬件或其他问题导致节点不能使用的情况时常发生,hadoop提供了live-dead-decomission机制,就是可以定义哪些节点是好的,哪些是坏的,哪些已经从nn上剔掉了,但rm或dn服务任然在跑的。
  正文
  Decommission node : test.node
  1 先在50070端口看看要decom的节点是出于什么状态
  https://nn.com:50070
  或者登陆到nn上用命令查看
sudohadoop  
hadoop dfsadmin -report | grep -A 3 $ip_of_decommistion_node
  2. 登陆到rm或jt节点上修改mapred-exclude文件,把要decom的节点加到里面。
  3. 在rm上或client上刷新节点,并看下live的节点数量
sudohadoop  
hadoop job -list-active-trackers | wc -l
  
yarn rmadmin -refreshNodes
  
hadoop job -list-active-trackers | wc -l
  4. 登陆到要decom的节点上,关掉nodemanager
svc -d /service/nodemanager  
or
  
stop-yarn.sh
  5. 登陆到nn上修改hdfs-exclude文件,把要decom的节点加到里面。
  6. 登陆到nn或client上刷新节点
sudohadoop  
hadoop dfsadmin -refreshNodes
  7. 停掉datanode service
svc -d /service/datanode  
or
  
stop-dfs.sh
  8 再到50070端口看看要decom的节点是出于什么状态
  https://nn.com:50070
  这时应该出于dead状态了,decommision对于hadoop1版本,可能要等很长时间,因为版本的bug,但如果用hadoop2的话就很快的,注意观察decomissioning中的状态,当under replicated blocks 的数量为0的时候,就说明这个node里面的所有blocks都已经被复制到其他node上了。


页: [1]
查看完整版本: decomission hadoop node-Linux运维