需求:
需要配置zabbix监控,使得zabbix服务器可以监控到另一台服务器上运行的第三方服务的状态,当状态异常时发送告警邮件。
限制:被监控的服务器不允许安装任意客户端,且该台服务器不能联通外网
对zabbix的各种监控方式研究分析后,尝试用通过外部脚本检测的方式完成对第三方服务的监控。
即通过外部检测,定时调用检测脚本,通过脚本调用第三方服务接口获取服务状态。改检测通过对服务器主机添加自定义监控项实现,目前设定监控检查为30s检查一次,数据保留时间为90天。
建立触发器对改服务状态进行监控,当状态改变从正常改为异常时,发送告警邮件。触发器规则为,监控到数据状态从1变更为0时,触发器状态从OK变更为PROBLEM,执行触发器邮件发送操作。
此时存在问题:
由于服务器不能联通外网,不能实现邮件发送功能。
针对此问题提出两种解决方案:
1. 建议开通对某个邮件地址的网络限制,可以直接实现邮件发送功能。
2. 当触发器监控到第三方服务从正常变更为异常时,执行另一个外部脚本,通过该脚本联通另一台可以联通外网的服务器,发送邮件。