从hadoop移除机器
把需要移除的机器增加到exclueds文件中,强制刷新datanode列表,等待decommission 状态正常后,即可停机下架,如有必要在namenode执行balancer操作。
操作命令:
在master的conf/hdfs-site.xml中加入
<property>
<name>dfs.hosts.exclude</name>
<value>excludes文件路径</value>
</property>
创建exclueds文件
文件内容增加你想删除的节点的机器名,一行一个
${HADOOP_HOME}/bin/hdfs dfsadmin -refreshNodes命令刷新datanode例表
${HADOOP_HOME}/bin/hdfs dfsadmin -report查看结果
向hadoop添加机器
启动datanode和jobtracker进程,当新添加的机器向namenode发送心跳信息后,namenode会自动感知新加入的机器,如果有必要可以做balancer操作。
操作命令:
1.在新机器上
${HADOOP_HOME}/sbin/hadoop-daemon.sh start datanode
${HADOOP_HOME}/sbin/yarn-daemon.sh start nodemanager
2.为防新数据大量写到新添加的机器上,在namenode上 ${HADOOP_HOME}/bin/hdfs balancer