我最近将 Zabbix 升级到 5.4.1,我想开始使用计划报告,但我在配置方面遇到了一些问题(错误
Cannot connect to web service: couldn't connect to server
)。
我的 Zabbix 在 Debian Buster 上的 Docker 中运行。一切都基于官方容器: Zabbix 服务器 (PostgreSQL)、Zabbix 前端 (Apache、PostreSQL) 和 PostgreSQL12。
根据文档(https://www.zabbix.com/documentation/current/manual/appendix/install/web_service)我安装了Google Chrome浏览器:
和 Zabbix Web 服务
我编辑了zabbix_web_service.conf:
AllowedIP=127.0.0.1,::1,0.0.0.0/0,zabbix
我编辑了zabbix_server.conf:
StartReportWriters=1
WebServiceURL=http://localhost:10053/report
我在 Zabbix 前端编辑了设置 - 管理 -> 常规 -> 其他
Frontend URL: http://localhost:8085
(前端在端口 8085 可用)
但是当我尝试测试生成报告时出现错误:
Cannot connect to web service: couldn't connect to server
我已经尝试过其他前端 URL,但似乎没有任何效果。我尝试过: http://localhost:10053/报告 http://192.168.10.18:8085/ http://192.168.10.18:10053/报告
我已经验证我从 http://192.168.10.18:10053/report 得到了答案:
{"detail":"Method is not supported."}
我还可以检查/尝试什么?
我发现问题了。在服务器配置中,我使用地址 http://localhost:10053/report 这是错误的,因为在我的情况下,Zabbix 服务器在 docker 中运行,而 Zabbix Web 服务没有在 docker 中运行。 Zabbix 服务器无法连接到 Web 服务,因为它位于其他网络中。我更改了配置,现在一切正常。正在生成并发送报告
如果您使用 docker complex 来启动应用程序,请首先检查 zabbix-server 和 zabbix web 服务是否位于同一 docker 网络上。如果是这样,WebServiceURL 将不是 "http://localhost:10053/report" 而是 "http:/zabbix-web-service:10053/report."