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没运行的问题。都是比较琐碎的点,但碰到的频率不低,尤其刚搭好或者网络环境有变动的时候容易出。

相关推荐
全栈陈序员11 小时前
【Git】从入门到精通(十)—— 撤销与恢复:git checkout与git restore
运维·网络·数据库·git
AI你一生一世17 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影18 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
ss27318 小时前
为什么PostgreSQL适合AI场景?
数据库·人工智能·postgresql
瑞克-桑切斯18 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
z06.19 小时前
MySQL索引
数据库·mysql
考虑考虑19 小时前
Posrgresql恢复.backup文件
数据库·后端·postgresql
云祺vinchin19 小时前
中小企业备份软件选型从恢复需求到总体成本评估
数据库·数据备份·中小企业备份·容灾备份软件
Zenova EdgeOS19 小时前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang
KKKlucifer20 小时前
国内数据安全服务的产品智能化转型:大模型赋能下的技术能力重构分析
大数据·数据库·重构