一. 环境介绍

系统版本:Centos7.4
zabbix-agent 版本:zabbix-agent 3.4.7

二. 问题现象

启动zabbix-agent时启动失败
查看zabbix-agent的时候显示没有正常运行

三. 处理故障过程思路

查看zabbix-agent显示以下内容
记 Centos zabbix-agent启动失败解决思路-LMLPHP
根据提示,分别使用systemctl status zabbix-agent和journalctl -xe查看服务启动失败的原因
显示内容如下
记 Centos zabbix-agent启动失败解决思路-LMLPHP
 
记 Centos zabbix-agent启动失败解决思路-LMLPHP
这些信息并不能提供服务启动失败的真正原因。
这时候,不妨打开的告警日志,毕竟,只要zabbix-agent服务启动,告警日志都会有输出信息的,果然我们找到了原因
记 Centos zabbix-agent启动失败解决思路-LMLPHP
zabbix-agent 服务在启动的时候,不能创建pid文件。
在终端看一下该目录是否存在,果然,不存在。
记 Centos zabbix-agent启动失败解决思路-LMLPHP
于是,创建了/var/run/zabbix/目录,重启zabbix-agent服务
记 Centos zabbix-agent启动失败解决思路-LMLPHP
 
记 Centos zabbix-agent启动失败解决思路-LMLPHP
依旧报错,重新查看告警日志,告警内容以下输出
记 Centos zabbix-agent启动失败解决思路-LMLPHP
 
记 Centos zabbix-agent启动失败解决思路-LMLPHP
配至文件中的DBhost参数无效
记 Centos zabbix-agent启动失败解决思路-LMLPHP
我们打开配至文件查看并修改为正确的参数。
记 Centos zabbix-agent启动失败解决思路-LMLPHP
重新启动zabbix-agent并查看运行状态,发现依旧有报错
记 Centos zabbix-agent启动失败解决思路-LMLPHP
打开zabbix-agent 查看日志告警
记 Centos zabbix-agent启动失败解决思路-LMLPHP
原来,/var/run/zabbix/的属主和属组还是root,zabbix并不能在其中创建文件,后修改该目录的属主和属组,启动OK。
记 Centos zabbix-agent启动失败解决思路-LMLPHP
查看属主和属组属于zabbix 重启zabbix-agent服务器 查看运行状态显示正常。
记 Centos zabbix-agent启动失败解决思路-LMLPHP
 

四. 总结

遇到启动失败的情况,根据systemctl的提示,通过systemctl status zabbix-agent 和journalctl -xe 命令查看服务启动失败的原因往往并不是很明确,反而给了一种错误的暗示,以为这个跟系统有关。其实,通过查看服务的日志,往往更能清晰的知道服务启动失败的原因。
05-28 11:57