如何添加节点?
大概配置思路:
1、在新节点中进行操作系统的配置,包括主机名配置,防火墙,网络,免密登陆和安装JDK等
2、在所有的节点的/etc/hosts文件中增加新节点
3、把namenode的有关配置文件复制到该节点
4、修改master节点的slaves文件,增加该节点
5、单独启动该节点上的datanode和NodeManager
6、运行start-balancer.sh进行数据负载均衡操作
具体操作请参考:https://www.cnblogs.com/skyl/p/4854654.html
问题整理:
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.protocol.UnregisteredNodeException): Data node DatanodeRegistration(10.0.0.105:50010, datanodeUuid=0dbe01f9-164e-4549-83df-b3cd171748e6, infoPort=50075, infoSecurePort=0, ipcPort=50020, storageInfo=lv=-56;cid=CID-1ee9c2cb-c39d-4fc8-9664-7ff3140c3e54;nsid=1540022242;c=0) is attempting to report storage ID 0dbe01f9-164e-4549-83df-b3cd171748e6. Node 10.0.0.102:50010 is expected to serve this storage.
当添加节点后,在新添加节点运行 sbin/hadoop-daemon.sh start datanode后,出现了一种情况:原来是3个datanode节点,添加了新的datanode节点后,webUI界面显示的还是3个datanode节点,只不过会出现102和105循环交替出现的情况,还是依然是3个节点.然后在namenode节点刷新datanode, hdfs dfsadmin -refreshNodes后,105上的datanode进程消失,之后查看log日志,报了以上错误,意思是说105和102的storage ID出现了冲突
解决:
在105新增节点上,如果datanode进程存在就停掉,再将data/tmp/dfs/data/current/* 下的所有数据都删除掉。之后再使用hadoop-daemon.sh start datanode就可以了。
如何删除节点?
1、修改master节点的hdfs-site.xml,增加dfs.hosts.exclude参数
2、修改master节点的yarn-site.xml,增加yarn.resourcemanager.nodes.exclude-path参数
3、修改master节点的mapred-site.xml,增加mapreduce.jobtracker.hosts.exclude.filename(选择性)
3.5: 将slave中需要删除的节点删除掉
4、新建excludes文件,添加需要删除的主机名
5、执行refreshNodes使配置生效
具体操作请参考:https://www.cnblogs.com/skyl/p/4854654.html
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
用人品去感动别人,用改变去影响别人,用状态去燃烧别人,用行动去带动别人,用阳光去照耀别人,用坚持去赢得别人,要求自己每天都去做与目标有关的事情,哪怕每天只进步一点点,坚持下来你就是最优秀卓越的!欢迎大家加入大数据交流群:725967421 一起交流,一起进步!!
---------------------------------------------------------------------------------------------------------------------------------------------------------------------