Zabbix 中的“無法解析主機名稱:無法解析主機:”

Zabbix 中的“無法解析主機名稱:無法解析主機:”

儘管 Zabbix Active Agent 的 DNS 和主機名稱正確,但 Zabbix 伺服器中出現「無法解析主機名稱:無法解析主機:example.zabbixagent.com;名稱或服務未知」。這是 Zabbix 中的錯誤還是配置錯誤?請幫忙。

答案1

如果透過複製貼上名稱(而不是重新鍵入)從命令列解決此問題,則您可能已變更resolv.conf。在 Zabbix 的早期版本中,您必須在更改該檔案後重新啟動守護程式。由於您沒有指定Zabbix版本,假設您的版本仍需要重新啟動。

如果這沒有幫助,請從主機屬性複製主機 DNS,ping然後dig從伺服器方塊中執行類似操作,並確保將主機設定調整為正確的名稱。

答案2

答案在a中給出評論經過用戶427751

我發現問題出在除外部 DNS 之外的任何其他內容上,這些內容未使用最近為該特定主機配置的新網域進行更新。新增網域名稱並從 DNS 清單中刪除舊網域後,Zabbix Server 能夠解決主機解析問題。

答案3

問題沒有提到,所以我假設可能沒有,但是如果 zabbix 在 docker 內部運行,由於 docker 的網路配置,可能會出現此錯誤。

解決方案是在 docker 守護程式配置中新增明確 dns 條目喜歡:

{
        ...
        "dns":["208.67.222.222","208.67.220.220"],
        ...
}

這對我有用。我想或添加一個額外的主機網路條目,如建議的那樣這個答案也可能有效:

services:
  mycontainer:
    ...
    networks:
      ...
      - bridge
...
networks:
  ...
  bridge:
    external: true

測試時,請注意,curl 的網域解析比 ping 更挑剔,例如您可能有

$ docker exec -ti mycontainer ping -c 3 myhost.example.com   # Works
$ docker exec -ti mycontainer curl myhost.example.com        # Fails

而zabbix的網路監控使用/依賴curl,所以「ping工作正常」是不夠好的測試。

相關內容