Linux 服务监控脚本

Linux 服务监控脚本


个人搭建的zabbix服务器因性能问题总是关闭,所以写了个脚本对zabbix-server服务进行监控。当服务停止时,脚本会自动拉起服务并记录日志,方面定位排查。
[root@elttwl ~]# vim /opt/scripts/zabbix-monitor.sh
#!/bin/bash
SERVICE=zabbix-server
while true
do
systemctl status $SERVICE > /dev/null
if [ $? -gt 0 ]; then
DATE=`date "+%Y-%m-%d %H:%M:%S"`
STATE="service is not running."
echo $STATE
echo $DATE $STATE >> /var/log/zabbix-monitor/zabbix-monitor.log
systemctl start $SERVICE
echo "service is started."
else
echo "service is running."
fi
sleep 60
done

通过创建Systemd服务使脚本长期稳定运行

[root@elttwl ~]# vim /etc/systemd/system/zabbix-monitor.service
[Unit]
Description=Zabbix-server service monitor
After=network.target
[Service]
Type=simple
User=root
# 监控脚本的路径
ExecStart=/bin/bash /opt/scripts/zabbix-monitor.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=mutil-user.target

执行以下命令使Systemd重新加载配置文件

systemctl daemon-reload

启动服务并设置开机自启

# systemd文件的名字即为服务的名字
systemctl start zabbix-monitor.service
systemctl enable zabbix-monitor.service

posted on   elttwl  阅读(53)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示