1.创建dfs.hosts.exclude配置文件
在指定目录下创建dfs.hosts.exclude文件,并添加需要退役的主机名称
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim dfs.hosts.exclude

2.编辑namenode所在机器的hdfs-site.xml
编辑namenode所在的机器的hdfs-site.xml配置文件,添加以下配置
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim hdfs-site.xml
配置:
<property>
<name>dfs.hosts.exclude</name>
<value>/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/dfs.hosts.exclude</value>
</property>

3.刷新namenode,刷新resourceManager
在namenode所在的机器执行以下命令,刷新namenode,刷新resourceManager
hdfs dfsadmin -refreshNodes 刷新namenode
yarn rmadmin -refreshNodes 刷新resourceManager

4.查看web浏览界面
http://node01:50070/dfshealth.html#tab-datanode

5.节点退役完成,停止该节点进程
等待退役节点状态为decommissioned(所有块已经复制完成),停止该节点及节点资源管理器。注意:如果副本数是3,服役的节点小于等于3,是不能退役成功的,需要修改副本数后才能退役
在需要退役执行以下命令,停止该节点进程
cd /export/servers/hadoop-2.6.0-cdh5.14.0/sbin/
./hadoop-daemon.sh stop datanode 停止datanode
./yarn-daemon.sh stop nodemanager 停止nodemanager

6.从include文件中删除退役节点
namenode所在节点也就是主节点执行以下命令删除退役节点
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop vim dfs.hosts
修改前:

修改后:

7.从主节点的slave文件中删除退役节点
namenode所在机器也就是主节点执行以下命令从slaves文件中删除退役节点
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim slaves
修改前:

修改后:

8.如果数据负载不均衡,执行以下命令进行均衡负载
主节点执行以下命令进行均衡负载
cd /export/servers/hadoop-2.6.0-cdh5.14.0/sbin/
./start-balancer.sh

1013

被折叠的 条评论
为什么被折叠?



