You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:在Thruk中显示Nagios XI主机与服务的配置问题

Thruk连接Nagios XI不显示条目问题解决

一、当前statusjson.cgi后端配置修正

  1. 修正URL路径:Nagios XI的statusjson.cgi默认路径为https://<你的XI域名>/nagiosxi/cgi-bin/statusjson.cgi,而非配置中的/nagios/,需调整路径至正确的XI CGI目录。
  2. 确认用户权限:确保thruk_user在Nagios XI中被分配Nagios XI Super User角色,且在Admin > Manage Users的CGI Access选项中勾选所有必要权限(含statusjson.cgi访问权限)。
  3. 测试CGI可用性:直接在浏览器访问调整后的statusjson.cgi URL,输入用户名密码,验证是否返回JSON格式的监控数据。若返回403/404,说明路径或权限配置有误。
  4. 完善Thruk后端配置:添加auth_method basic明确认证方式,Nagios XI默认使用Basic Auth,修改后的配置如下:
backendtype     nagios
name            Nagios XI
url             https://<你的XI域名>/nagiosxi/cgi-bin/statusjson.cgi
username        thruk_user
password        <你的密码>
verify_ssl      0
auth_method     basic

修改后重启Thruk服务:systemctl restart thruk

二、Livestatus安装方法(补充)

若后续考虑使用Livestatus,适配RHEL9的安装步骤如下:

  1. 安装编译依赖:
dnf install gcc make glibc-devel -y
  1. 获取Livestatus源码:可从Nagios XI自带的源码目录(通常为/usr/local/nagios/src/)找到Livestatus模块,或从Nagios社区资源获取。
  2. 编译安装:
cd /usr/local/nagios/src/livestatus
./configure --prefix=/usr/local/nagios
make && make install
  1. 配置Nagios Core加载Livestatus模块:编辑/usr/local/nagios/etc/nagios.cfg,添加:
broker_module=/usr/local/nagios/bin/livestatus.o /usr/local/nagios/var/rw/live
  1. 创建socket目录并设置权限:
mkdir -p /usr/local/nagios/var/rw
chown nagios:nagios /usr/local/nagios/var/rw
chmod 770 /usr/local/nagios/var/rw
  1. 重启Nagios Core与Thruk服务,配置Thruk Livestatus后端:
backendtype     livestatus
name            Nagios XI Livestatus
socket          /usr/local/nagios/var/rw/live

三、额外排查方向

  • 查看Thruk日志:检查/var/log/thruk/thruk.log,搜索后端连接相关错误(如认证失败、连接超时),定位具体问题。
  • 验证SELinux设置:RHEL9默认开启SELinux,可能阻止Thruk访问Nagios XI资源,可临时执行setenforce 0测试,若生效需配置SELinux规则允许访问。

内容的提问来源于stack exchange,提问作者Stéphane PEYNAUD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 00:50:11