簡體   English   中英

Cloudera CDH4:無法向我的集群添加主機,因為規范名稱與主機名不一致

[英]Cloudera CDH4: Can't add a host to my cluster because canonical name is not consistent with hostname

我正在使用 Ubuntu 12.04 LTS 在 4 節點集群上安裝 CDH4。 我能夠安裝 cloudera manager 並在 master 機器上啟動一個單節點集群。 但是,一旦我添加了新主機,CM 就會說它的運行狀況不佳並拋出以下錯誤:

“從 Java 進程中檢查時,此主機的主機名和規范名稱不一致。”

我修改了 master 和所有主機上的 /etc/hosts 的內容,以包含 IP 地址,后跟每台機器的 FQDN。 我還需要設置一個 dns 服務器來完成這項工作嗎?

您不一定需要設置 DNS 服務器才能使其工作,但正向和反向 DNS 必須明確匹配,Hadoop 才能正常運行。

Hadoop Operations 一書有一個很好的例子,說明如何編寫一個簡單的 Java 程序來驗證您的正向 + 反向 DNS 是否已排列。 當然,您可以進一步檢測此程序以幫助您在它們未對齊的情況下進行調試。

如果您必須解決這個問題,很可能需要主機條目、NIC 配置和/或托管名稱服務器中的記錄的組合。

我有同樣的問題,我通過應用以下內容修復了它...

運行此命令以檢查主機的 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 中創建主機的 cname,就像我們在 linux 中的主機文件中創建別名一樣

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

然后重啟cloudera-scm代理服務

注意:在我的情況下,我使用主機文件來解析自己的 IP 地址,並且我在 nsswitch.conf 文件中設置了主機:文件 dns。 其余主機由 aws route53 解析。

祝你們好運

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM