![在此处输入图像描述] [1]这个问题可能看起来非常明显,但由于hadoop集群上主机文件的配置错误,我已经多次遇到过这个问题.
任何人都可以描述如何为hadoop和类似的环境使用设置主机文件和其他相关的网络配置(如cloudera).
特别是当我必须添加主机名和FQDN时
更新
这是主机名为cdh4hdm的机器之一的主机文件,具有hadoop Master的作用
127.0.0.1 cdh4hdm localhost #127.0.1.1 cdh4hdm # The following lines are desirable for IPv6 capable hosts 172.26.43.40 cdh4hdm.imp.co.in kdc1 172.26.43.41 cdh4hbm.imp.co.in 172.26.43.42 cdh4s1.imp.co.in 172.26.43.43 cdh4s2.imp.co.in 172.26.43.44 cdh4s3.imp.co.in 172.26.43.45 cdh4s4.imp.co.in ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
请参阅附图
在集群中,一些节点正在获取FQDN,一些节点正在获取主机名.
主机名IP也不正确,显示127.0.0.1而不是主机IP
请建议
对于UBUNTU
主机文件和Hadoop集群的其他配置
为所有集群计算机提供主机名,为此在/ etc/hostname文件中添加主机名
hostname-of-machine
在所有主机上,hosts文件应该是这样的:
主机
127.0.0.1 localhost #127.0.1.1 localhost <ip of host> FQDN hostname other_name 172.26.43.10 cdh4hdm.domain.com cdh4hdm kdc1 172.26.43.11 cdh4hbm.domain.com cdh4hbm 172.26.43.12 cdh4s1.domain.com cdh4s1 172.26.43.13 cdh4s2.domain.com cdh4s2 172.26.43.14 cdh4s3.domain.com cdh4s3 172.26.43.15 cdh4s4.domain.com cdh4s4
注意:确保注释第127.0.1.1行localhost,它可能会在zookeeper和cluster中产生问题.
在/etc/resolv.conf中添加DNS服务器IP
resolve.conf
search domain.com nameserver 10.0.1.1
验证配置检查主机文件,您应该能够通过其主机名ping所有计算机
要检查所有计算机上的主机名和FQDN,请运行以下命令:
hostname //should return the hostname hostname -f //Fully Qualified Hostname hostname -d //Domain name
除主机名外,RHEL的所有命令都相同.
Source1和Source2