我正在使用Ubuntu12.04 lts在4节点集群上安装cdh4。我能够安装cloudera manager并在主计算机上启动一个单节点集群。但是,一旦我添加了一个新主机,cm就会说它的运行状况不好,并抛出以下错误:
“从java进程检查时,此主机的主机名和规范名称不一致。”
我修改了主机和所有主机上的/etc/hosts的内容,使之包含ip地址,后跟每台机器的fqdn。我是否也需要设置一个dns服务器来让这个工作?
我正在使用Ubuntu12.04 lts在4节点集群上安装cdh4。我能够安装cloudera manager并在主计算机上启动一个单节点集群。但是,一旦我添加了一个新主机,cm就会说它的运行状况不好,并抛出以下错误:
“从java进程检查时,此主机的主机名和规范名称不一致。”
我修改了主机和所有主机上的/etc/hosts的内容,使之包含ip地址,后跟每台机器的fqdn。我是否也需要设置一个dns服务器来让这个工作?
2条答案
按热度按时间yqyhoc1h1#
我有一个同样的问题,我通过应用以下东西来解决它。。。
运行此命令检查主机的fqdn
您只需在route53中创建主机的cname,就像我们在linux的hosts文件中创建别名一样
然后重新启动cloudera scm代理服务
注意:在我的例子中,我使用hosts文件解析自己的ip地址,并且在nsswitch.conf文件中设置了hosts:filedns。其余主机由aws路由53解析。
祝你们好运
9q78igpj2#
您不必设置一个dns服务器来让它工作,但是正向和反向dns必须显式匹配,hadoop才能正常工作。
hadoop操作手册中有一个很好的例子,说明了如何编写一个简单的java程序来验证前向+反向dns的排列。当然,您可以进一步插入这个程序,以帮助您在它们没有对齐的情况下进行调试。
如果必须解决此问题,则很可能需要主机条目、nic配置和/或托管名称服务器中的记录的组合。