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]