一、前言
本文基于上篇 http://fire7758.blog.51cto.com/993821/1373790
本文以添加mt-hadoop-data6为例
二、添加节点操作
1)集群配置修改(集群中所有服务器)
更新hosts文件
在集群中所有服务器上修改/etc/hosts,添加新增datanode的主机名
sudo vi /etc/hosts,文件末尾增加如下行:
172.26.10.XXX mt-hadoop-data6
更新datanode-allow-list
在namenode上修改/usr/hadoop/conf/datanode-allow-list,添加新增datanode的主机名
echo mt-hadoop-data6 >> /usr/hadoop/conf/datanode-allow-list
更新slaves
在namenode上修改/usr/hadoop/conf/slaves,添加新增datanode的主机名
echo mt-hadoop-data6 >> /usr/hadoop/conf/slaves
2)安装新节点
在mt-hadoop-data6上操作:
完成上篇第三章第1节 hadoop安装部分的操作(a-g)
3)同步集群配置
ssh hadoop@mt-hadoop-name1
sync-datanode-config.sh
exit
4)启动新datanode节点
hadoop dfsadmin -refreshNodes
hadoop-daemon.sh start datanode
hadoop-daemon.sh start tasktracker
5)验证
查看datanode报告,是否有新增的节点
hadoop dfsadmin -report
网页查看
http://172.26.10.140:50030
三、撤销节点
在namenode上操作
1)更新datanode-deny-list;添加撤销datanode的主机名
echo mt-hadoop-data6 >> /usr/hadoop/conf/datanode-deny-list
同步配置
sync-datanode-config.sh
2)动态刷新配置
hadoop dfsadmin -refreshNodes
3)确认待撤销datanode状态
hadoop dfsadmin -report
该datanode的状态为Decommissioned可执行下面操作
4)更新datanode-allow-list、datanode-deny-list、slaves;删除撤销datanode的主机名
sed -i '/mt-hadoop-data6/d' /usr/hadoop/conf/datanode-allow-list
sed -i '/mt-hadoop-data6/d' /usr/hadoop/conf/datanode-dent-list
sed -i '/mt-hadoop-data6/d' /usr/hadoop/conf/slaves
sync-datanode-config.sh
5)动态刷新配置
hadoop dfsadmin -refreshNodes