本文章转自@twt社区,【作者】泊涯。
Zabbix是基于WEB界面提供应用系统监视和网络监视功能的企业级开源解决方案,能够监视各种网络参数,保证系统的安全运营;并提供灵活的通知机制,以让系统管理员快速定位/解决存在的各种问题。
做为开源用户的支持者,我们大型环境用的软件包含监控软件、数据库、集成应用、软件等都是用开源的,例如CentOS、Zabbix、OpenShift等,这些开源技术在成熟度上虽然不错,但是安装软件有时比较麻烦,例如ç entOS的安全开关,默认情况下会导致我们在安装OpenShift,的zabbix等时失败,而错误日志提示往往与实际相隔十万三千里,但是有经验的工程师在安装完成系统后意识性的修改配置,避免遇到的问题。本文介绍了相关问题的处理方法。
问题:
在安装配置好zabbix后无法正常启动,原因是SELINUX设置问题导致启动失败。
故障分析:
[root@localhost zabbix]# systemctl start zabbix-server.service
zabbix-server.service 的作业失败,因为超出了配置的资源限制。有关详细信息,请参阅“systemctl status zabbix-server.service”和“journalctl -xe”。
[root@localhost zabbix]# journalctl -xe
-- 定义者:systemd
-- 支持:http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 单元 zabbix-server.service 已经开始启动。
1月 07 15:21:17 localhost.localdomain systemd[1]: PID 文件 /run/zabbix/zabbix_server.pid 启动后不可读(还?)。
1月 07 15:21:17 localhost.localdomain systemd[1]: zabbix-server.service 从来没有写过它的 PID 文件。失败。
1月 07 15:21:17 localhost.localdomain systemd[1]: 启动 Zabbix Server 失败。
-- 主题:单元 zabbix-server.service 失败
-- 定义者:systemd
-- 支持:http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 单元 zabbix-server.service 失败。
-- 结果失败。
1月 07 15:21:17 localhost.localdomain systemd[1]: 单元 zabbix-server.service 进入失败状态。
1月 07 15:21:17 localhost.localdomain systemd[1]: zabbix-server.service 失败。
1月 07 15:21:17 localhost.localdomain polkitd[804]: unregistered Authentication Agent for unix-process:6787:8831344(系统总线名称
1月 07 15:21:24 localhost.localdomain polkitd[804]:为 unix-process 注册的身份验证代理:6797:8832061(系统总线名称:
1月07 15:21:27 localhost.localdomain systemd[1]: zabbix-server.service holdoff time over,调度重启。
1月 07 15:21:27 localhost.localdomain systemd[1]: 启动 Zabbix 服务器...
-- 主题:单元 zabbix-server.service 已经开始启动
-- 定义者:systemd
-- 支持:http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 单元 zabbix-server.service 已经开始启动。
1月 07 15:21:27 localhost.localdomain systemd[1]: PID 文件 /run/zabbix/zabbix_server.pid 启动后不可读(还?)。
1月 07 15:21:27 localhost.localdomain systemd[1]: zabbix-server.service 从来没有写过它的 PID 文件。失败。
1月 07 15:21:27 localhost.localdomain systemd[1]: 启动 Zabbix Server 失败。
-- 主题:单元 zabbix-server.service 失败
-- 定义者:systemd
-- 支持:http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 单元 zabbix-server.service 失败。
-- 结果失败。
1月 07 15:21:27 localhost.localdomain systemd[1]: 单元 zabbix-server.service 进入失败状态。
1月 07 15:21:27 localhost.localdomain systemd[1]: zabbix-server.service 失败。
1月07日15:21:27 localhost.localdomain polkitd[804]: unregistered Authentication Agent for unix-process:6797:8832061(系统总线名称
1907-1944/1944 行(完)
上次登录时间:2020 年 1 月 7 日星期二 23:24:43 从 10.100.81.67
查看zabbix日志分析:
发现日志提示权限问题:
5966:20200107:145500.376 使用配置文件:/etc/zabbix/zabbix_server.conf
5966:20200107:145500.376 无法设置资源限制:[13] 权限被拒绝
5966:20200107:145500.376 无法禁用核心转储,退出...
5976:20200107:145506.314 启动 Zabbix 服务器。Zabbix 4.4.4(修订版 3131fdac04
故障处理:
优化修改 SELINUX=disabled
[root@localhost selinux]# vi config
该文件控制系统上 SELinux 的状态。
SELINUX= 可以采用以下三个值之一:
enforcing - 强制执行 SELinux 安全策略。
permissive - SELinux 打印警告而不是强制执行。
禁用 - 未加载 SELinux 策略。
SELINUX=禁用
SELINUXTYPE= 可以采用以下三个值之一:
目标 - 目标进程受到保护,
最低限度 - 修改目标政策。只有选定的#processes 受到保护。
mls - 多级安全保护。
SELINUXTYPE=目标
重启动:
[root@localhost ~]# systemctl start zabbix-server.service
[root@localhost ~]# systemctl status zabbix-server.service
● zabbix-server.service - Zabbix 服务器
已加载:已加载(/usr/lib/systemd/system/zabbix-server.service;已禁用;供应商预设:已禁用)
活跃:从二 2020-01-07 15:26:56 CST 开始活跃(运行);6s前
进程:1529 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
主 PID: 1531 (zabbix_server)
C组:/system.slice/zabbix-server.service
└─1531 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
1月 07 15:26:56 localhost.localdomain systemd[1]: 启动 Zabbix 服务器...
1月07 15:26:56 localhost.localdomain systemd[1]: zabbix-server.service: 监督进程1531不是我们的孩子。...退出。
1月 07 15:26:56 localhost.localdomain systemd[1]:启动Zabbix Server。
提示:有些行被省略,使用 -l 显示完整。
[root@localhost ~]#
至此,问题已经得到解决。
总结:
要另外的朋友,一般在安装一些开源软件,如MYSQL、GRES、zabbix、openshift等,在前先检查下系统版本是否需要安装软件、在检查下安装、防火墙、安全等是否开启,如下:
1、iptables开启和关闭;
2、SELinux开启和关闭;
3、CentOS 6和CentOS 7 firewalld防火墙的开与关等。
网友评论