Hadoop集群动态添加节点后节点数量未增加且节点名称不稳定的解决方案

  • 问题现象

当前有01、02、03三个节点的hadoop集群,其中01是master节点,02、03为slave节点。当动态添加04的slave节点后,hadoop的web界面中显示的节点数目未增加。进一步观察,节点列表中的slave节点内容,时而是02、04节点,时而是02、03节点,非常诡异。

 


  •  分析原因

找到datadir目录下的current/VERSION文件,03和04服务器中的datanodeUuid数值完全一致,可推断,master节点把03和04当做同一台服务器来处理了。原因是,之前03服务器已经启动过,生成的VERSION中已经记录了datanodeUuid,克隆虚拟机的时候,所有信息都保留和03服务器一样。

 

  • 解决方案

考虑到如果不是克隆而是直接安装的情况下,04服务器的datadir和tmpdir目录下是空白的,因此,将04服务器的DataNode、NodeManager服务停止,删除datadir和tmpdir目录下的所有文件,重新启动DataNode、NodeManager服务,再次观察,hadoop集群中的内容显示了02、03、04三个datanode,与预期一致,问题解决。

  • 注意事项

通过拷贝或者克隆虚拟机的方式新增节点时,需要做如下几项操作:

1、修改主机名、IP地址,重启新增的节点,并将/etc/hosts文件拷贝到集群中的其他节点中(若使用本地DNS服务器,此步骤可省略,只需要在DNS服务器中将改节点添加到域名解析记录中即可);

2、新增的节点需要重新运行ssh-keygen -t rsa生成公钥,并将公钥添加到authorized_keys文件中,并拷贝到集群中的其他节点中。

参考资料:

1、Hadoop datanode正常启动,但是Live nodes中却缺少节点的问题

https://blog.csdn.net/wk51920/article/details/51729460

2、hadoop2.7 动态新增节点和删除节点

https://blog.csdn.net/Mark_LQ/article/details/53393081

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值