Cloudera CDH4:无法将主机添加到我的群集,因为规范名称与主机名不一致

时间:2013-10-28 16:02:23

标签: hadoop ubuntu-12.04 cloudera

我正在使用Ubuntu 12.04 LTS在4节点集群上安装CDH4。我能够安装cloudera manager并在主机上启动单节点集群。但是,一旦我添加了一个新的主机,CM说它的健康状况不佳并引发以下错误:

“从Java进程检查时,此主机的主机名和规范名称不一致。”

我修改了主服务器和所有主机上/ etc / hosts的内容,以包含IP地址,后跟每台计算机的FQDN。我是否还需要设置dns服务器才能使其正常工作?

2 个答案:

答案 0 :(得分:2)

您无需设置DNS服务器即可使其正常工作,但正向和反向DNS必须明确匹配才能使Hadoop正常运行。

Hadoop Operations书中有good example如何编写一个简单的Java程序来验证您的Forward + Reverse DNS是否排成一行。当然,您可以进一步检测此程序,以帮助您在未对齐的情况下进行调试。

如果必须解决此问题,则很可能需要托管名称服务器中的主机条目,NIC配置和/或记录的组合。

答案 1 :(得分:0)

我有一个相同的问题,我通过应用以下方法解决了它...

运行此命令以检查主机的fqdn

   python -c "import socket; print socket.getfqdn(); print socket.gethostbyname(socket.getfqdn())"
    ip-172-*-*-*.eu-central-1.compute.internal -> "this cause the issue"
    172.*.*.*

简单地说,您可以在route53中创建host的cname,就像我们在linux中的hosts文件中创建别名一样

172.*.*.* host1-production.com ip-172-*-*-*.eu-central-1.compute.internal

然后重新启动cloudera-scm代理服务

注意:在我的情况下,我使用hosts文件来解析自己的ip地址,并且我已经在nsswitch.conf文件中设置了hosts:文件dns。主机的其余部分通过aws route53解决。

最幸运的人