簡體   English   中英

無法接受傳入連接:來自“9.42.xx”的連接被拒絕,允許的主機:“zabbix-server”

[英]Failed to accept an incoming connection: connection from "9.42.x.x" rejected, allowed hosts: "zabbix-server"

概括

我在 OpenShift 集群上安裝了 zabbix。 我正在嘗試監控集群外的主機(vm),但 zabbix 服務器無法連接到它。 /etc/zabbix/zabbix_agentd.conf文件中,我提到了服務器 zabbix zabbix-server的 DNS 名稱,但看起來服務器正在嘗試通過不同的公共 IP 進行連接。我不確定這個 IP 是什么。

操作系統/環境/使用過的 docker-compose 個文件

我在 OpenShift 集群上應用了此存儲庫中存在的 kube.netes.yaml 文件 - https://github.com/zabbix/zabbix-docker/blob/6.2/kube.netes.yaml

配置

/etc/zabbix/zabbix_agentd.conf文件中Server=zabbix-server。

重現步驟

在 Openshift 集群上應用 kube.netes.yaml 文件並嘗試監控任何外部虛擬機。

預期成績

zabbix 服務器應該能夠連接到虛擬機。

實際結果

Zabbix 服務器日志。

Defaulted container "zabbix-server" out of: zabbix-server, zabbix-snmptraps
\*\* Updating '/etc/zabbix/zabbix_server.conf' parameter "DBHost": 'mysql-server'...added
287:20230120:060843.131 Zabbix agent item "system.cpu.load\[all,avg5\]" on host "Host-C" failed: first network error, wait for 15 seconds
289:20230120:060858.592 Zabbix agent item "system.cpu.num" on host "Host-C" failed: another network error, wait for 15 seconds
289:20230120:060913.843 Zabbix agent item "system.sw.arch" on host "Host-C" failed: another network error, wait for 15 seconds
289:20230120:060929.095 temporarily disabling Zabbix agent checks on host "Host-C": interface unavailable

來自虛擬機上安裝的代理的日志。

350446:20230122:103232.230 failed to accept an incoming connection: connection from "9.x.x.219" rejected, allowed hosts: "zabbix-server"
350444:20230122:103332.525 failed to accept an incoming connection: connection from "9.x.x.219" rejected, allowed hosts: "zabbix-server"
350445:20230122:103432.819 failed to accept an incoming connection: connection from "9.x.x.210" rejected, allowed hosts: "zabbix-server"
350446:20230122:103533.114 failed to accept an incoming connection: connection from "9.x.x.217" rejected, allowed hosts: "zabbix-server"

如果我在 /etc/zabbix/zabbix_agentd.conf 中添加這個/etc/zabbix/zabbix_agentd.conf它將起作用。 但是這個IP是什么? 這是服務嗎? 或者任何節點/pod IP? 它不斷變化。 每次我都無法在 conf 文件中更改此 ID。 我需要更穩定的東西。

請幫我解決這個問題。

所以我不知道zabbix。 因此,我必須對代理的工作方式和服務器的工作方式做出一些有根據的猜測。

但是,總而言之,與 docker compose 不同,您在已知服務器上運行 zabbix 服務器,在 Openshift/Kube.netes 中,您將部署到具有自己的網絡的機器集群中。 換句話說,OpenShift 的全部意義在於 OpenShift 將控制應用程序 pod 的部署位置,並根據需要重新定位/重新啟動該 pod。 每次都有不同的 IP。 (並且 DNS 名稱毫無意義,因為這兩個系統無論如何都不共享 DNS。)您看到的 IP 很可能是 pod 的隨機分配 IP。

那么,當遇到像您這樣的外部應用程序需要可預測的 IP 的情況時,您該怎么辦? 那么,選項 1 就是刪除該要求。 無論如何,使用證書之類的東西顯然比依賴 IP 更安全、更可靠。 但另一種選擇是使用出口 IP 這是 OpenShift 的一項功能,您實際上使用代理為外部應用程序提供一致的 IP。

暫無
暫無

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

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