上一篇文章中我们介绍了Hadoop编程基于MR程序实现倒排索引示例的有关内容,这里我们看看如何在Hadoop中动态地增加和删除节点(DataNode)。
假设集群操作系统均为:CentOS 6.7 x64
Hadoop版本为:2.6.3
一、动态增加DataNode
1、准备新的DataNode节点机器,配置SSH互信,可以直接复制已有DataNode中.ssh目录中的authorized_keys和id_rsa
2、复制Hadoop运行目录、hdfs目录及tmp目录至新的DataNode
3、在新DataNode上启动hadoop
1
2
|
..sbin/hadoop-daemon.sh start datanode
..sbin/yarn-daemon.sh start datanode
|
4、在NameNode上刷新节点
1
2
|
..bin/hdfs dfsadmin -refreshNodes
..sbin/start-balancer.sh
|
5、为方便下次启动,可以将新DataNode的域名和ip加入/etc/hosts中
二、动态删除DataNode
1、配置NameNode的hdfs-site.xml,适当减小dfs.replication副本数,增加dfs.hosts.exclude配置
1
2
3
4
|
< property >
< name >dfs.hosts.exclude</ name >
< value >/usr/local/hadoop2/etc/hadoop/excludes</ value >
</ property >
|
2、在对应路径(/etc/hadoop/)下新建excludes文件,并写入待删除DataNode的ip或域名
3、在NameNode上刷新所有DataNode
1
2
|
..bin/hdfs dfsadmin -refreshNodes
..sbin/start-balancer.sh
|
4、此时,可以在web检测界面(ip:50070)上可以观测到DataNode逐渐变为Dead。
总结
以上就是本文关于hadoop动态增加和删除节点方法介绍的全部内容,希望对大家有所帮助。有什么问题可以直接留言,小编会及时回复大家的。感谢朋友们对本站的支持!
原文链接:http://blog.csdn.net/l1028386804/article/details/78255746