hadoop中某些数据节点上的错误ipMap

a8jjtwal  于 2021-05-31  发布在  Hadoop
关注(0)|答案(1)|浏览(452)

我在使用本地域配置的7个节点上安装了hadoop /etc/hosts . 看起来像这样

1.2.3.4 hadoop-master
1.2.3.5 hadoop-slave-1
1.2.3.6 hadoop-slave-2
1.2.3.7 hadoop-slave-3
1.2.3.8 hadoop-slave-4
1.2.3.9 hadoop-slave-5
1.2.3.10 hadoop-slave-6

现在的问题是,在某些节点上,存在错误的 hadoop-slave-1 ,即有些节点 hadoop-slave-1 Map到 1.2.3.12 而不是 1.2.3.4 . namenode有正确的Map,因此数据节点在namenodeui中显示良好。
问题是,换一种方式好吗 /etc/hosts 归档并启动服务?我认为它会破坏一些与 hadoop-slave-1 节点。
我可以想出两种方法来解决这个问题:
修复损坏节点中的/etc/hosts文件并重新启动服务。但我不确定这是否会损坏块。这个假设准确吗?
我们可以删除这个服务器 hadoop-slave-1 从集群中临时重新平衡hadoop集群,在剩下的6个节点之间分发整个数据,然后再次将服务器添加回集群,并将数据重新平衡到7个节点。但问题是,集群中包含的数据非常大,可能会产生问题,而且重新平衡数据将是一项繁重的工作,会对名称节点服务器造成压力,并可能导致堆问题。
在这种情况下还有别的解决办法吗?另外,您建议使用哪个工具或实用程序将数据复制到另一个hadoop集群?
非常感谢您的帮助!!

c2e8gylq

c2e8gylq1#

一般来说,使用 /etc/hosts 如果您有一个功能正常的dns服务器(大多数路由器都是这样的),则不建议这样做。
例如,在我的环境中,我可以 ping namenode.lan 我认为选择2是最安全的选择。 hdfs -rebalancer 很好用。
可能导致堆问题
然后停止namenode,增加堆,然后启动它。在运行时,设置namenode ha,这样就不会停机。
注: master / slave 主机名真的不是描述性的。hdfs、yarn、hive、hbase和spark都有带有主服务的服务器-客户机体系结构,它们不应该位于一台机器上。

相关问题