Zabbix Web界面误报Server未运行的排查与解决

这个报错"Zabbix server is not running"在Web界面上看到的时候,第一反应肯定是去服务器上看一眼服务状态。

结果发现zabbix-server跑得好好的,数据采集也没断,那就基本可以排除服务自身挂掉的情况。问题大概率出在Web端到Server之间那一段。

后来排查下来,原因其实挺集中的,基本都是配置、网络或者会话之类的问题,一个个说。

配置文件里写的主机名解析不了

zabbix.conf.php里面有两个地方比较关键,一个是$DB['SERVER'],一个是$ZBX_SERVER

如果这两个填的是主机名或localhost,而Web服务器解析不到或者解析到错误的地址,Web界面就会认为Server没在运行。

直接改成IP最省事。比如:

复制代码
$DB['SERVER']   = '192.168.92.128';
$ZBX_SERVER      = '192.168.92.128';

文件路径常见的是/var/www/html/zabbix/conf/zabbix.conf.php,有些环境可能不一样。

改完记得重启Web服务,CentOS系一般是sudo systemctl restart httpd,Debian/Ubuntu系用apache2或者nginx对应的服务名。

如果非要用域名,那就去/etc/hosts里加一条静态解析,比如:

复制代码
echo "192.168.92.128 zabbix-server" | sudo tee -a /etc/hosts

然后配置文件里的$ZBX_SERVER写成zabbix-server。但说实话,除非有特别原因,内部用IP比域名稳,少一个依赖。

防火墙或者SELinux挡了

Web服务器和Zabbix Server之间的通信可能被防火墙或SELinux拦了。可以先临时关一下防火墙测试。

CentOS/RHEL下sudo systemctl stop firewalld,Debian/Ubuntu下sudo ufw disable。如果关掉就正常了,那就去加放行规则,别一直关着。

SELinux也是容易被忽略的。确认是它的问题后,可以临时sudo setenforce 0验证。要永久关的话改/etc/selinux/config,把SELINUX=enforcing改成disabled,然后重启或执行setenforce 0让它立即生效。

生产环境关SELinux不是最佳实践,但有些内网监控机确实这么干,根据实际情况评估。

Server自己没给自己加监控模板

这个其实不是直接导致误报的原因,但偶尔会遇到因为自监控没配,Web界面拿不到Server健康数据,状态显示异常。

检查一下Zabbix Server那台主机是不是挂了"Template Module Zabbix server health"这个模板。在Web界面里找到配置-主机,选Zabbix Server那台,点模板,搜索这个模板链接上去就行。然后去看监控-最新数据,筛一下这台主机,看Zabbix server processes那些指标有没有值。如果没有,说明自监控没生效,有时候会连带影响界面上的状态判断。

缓存或PHP会话异常

浏览器缓存或者PHP的会话状态有时候会卡住旧状态,导致明明Server好了,界面还报红。

可以先无痕窗口打开试试,如果好了那就是缓存问题。不行的话重启一下PHP-FPM,命令大致是sudo systemctl restart php-fpm,Debian/Ubuntu可能带版本号比如php7.4-fpm,这个要看实际安装的版本。

排查时顺手用的几条验证

翻日志是最直接的。Zabbix Server日志一般在/var/log/zabbix/zabbix_server.log,看一眼最近50行:

复制代码
sudo tail -n 50 /var/log/zabbix/zabbix_server.log

有没有内存不足、数据库连不上之类的报错。如果没有,问题基本不在Server本身。

Web服务是否正常,可以curl -I http://localhost/zabbix/,返回200就说明Web服务活着。

端口连通性用telnet或nc测一下:telnet 127.0.0.1 10051。如果连不上,检查防火墙还有zabbix_server.conf里的ListenPort有没有被改过。

另外两个顺手的事:一个是用journalctl -u zabbix-server --no-pager -n 100看最近的系统日志,有时候比直接看日志文件快。

来此加密深度对接全球主流ACME渠道,包括Let's Encrypt、Google和ZeroSSL。这意味着可以根据实际需求,自由选择信任源。无论是传统的域名证书,还是有效期7天的短效IP证书,都能通过标准化的接口为快速签发,确保证书的兼容性与权威性。

另一个是改任何配置前先备份,比如sudo cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak,省得改坏了回不去。

上面这些排查下来基本能解决Web界面误报Zabbix Server没运行的问题。都是比较琐碎的点,但碰到的频率不低,尤其刚搭好或者网络环境有变动的时候容易出。

相关推荐
啊湘2 小时前
天气查询API接口 按月Token鉴权 实时天气 物联网可用 文档齐全
java·后端·struts
SelectDB2 小时前
Apache Doris Variant 动态 JSON 实战教程:从建表到跑通 100M Agent 日志查询
数据库
重生的黑客3 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice
Java内核笔记3 小时前
告别十亿美元的错误 : Spring Boot 4 空安全 (JSpecify) 实战
java·spring boot·后端
sg_knight3 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db
糖果店的幽灵3 小时前
langgraph的 MessagesState 解读
java·开发语言·人工智能·windows·langgraph
星空露珠4 小时前
28种颜色对应名称,
开发语言·数据库·算法·游戏·lua
骑上单车去旅行4 小时前
MD5校验对比脚本
linux·服务器·windows
极光代码工作室4 小时前
基于SpringBoot的在线博客系统
java·springboot·web开发·后端开发