1、Zabbix简介
一、zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
二、zabbix能监视各类网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各类问题。
三、zabbix由2部分构成,zabbix server与可选组件zabbix agent。
四、zabbix server能够经过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它能够运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
2、完整的Zabbix监控平台包括:Zabbix-Server、Zabbix-DB、Zabbix-WEB、Zabbix-Client、Zabbix-Proxy;python
2、钉钉告警配置json
一、添加钉钉机器人  选择钉钉自定义机器人
二、配置服务器 三、建立钉钉文件夹 /usr/local/zabbix/share/zabbix/alertscripts/dingding.py 将如下内容复制的dingding.py文件夹 #!/usr/bin/python3 import requests import json import sys #告警群,测试环境 url = 'https://oapi.dingtalk.com/robot/send?access_token=4144092c9868f58f6637cf938de2adca0104bc06ff4bde85a133c176f' def send_msg(msg): """ :param msg: 要发送的消息 :return: 200 or False """ #url = url program = {"msgtype": "text", "text": {"content": msg}, } headers = {'Content-Type': 'application/json'} try: f = requests.post(url, data=json.dumps(program), headers=headers) except Exception as e: return False return f.status_code def main(): msg = sys.argv[1] send_msg(msg) if __name__ == '__main__': main()
3、配置zabbix监控平台
1)建立报警媒介
2)添加报警媒介api
3)添加动做
4)默认信息安全
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障! 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障! 告警主机:{HOSTNAME1} 告警时间:{EVENT.DATE} {EVENT.TIME} 告警等级:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警项目:{TRIGGER.KEY1} 问题详情:{ITEM.NAME}:{ITEM.VALUE} 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID} 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}:{TRIGGER.NAME}已恢复! 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复! 告警主机:{HOSTNAME1} 告警时间:{EVENT.DATE} {EVENT.TIME} 告警等级:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警项目:{TRIGGER.KEY1} 问题详情:{ITEM.NAME}:{ITEM.VALUE} 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID} 服务器:{HOST.NAME}: 报警确认! 确认信息:"{ACK.MESSAGE}" 服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障! 确认人:{USER.FULLNAME} 时间:{ACK.DATE} {ACK.TIME} 当前的问题是: {TRIGGER.NAME} 时间ID:{EVENT.ID}
5) 配置用户报警媒介服务器
六、测试发送钉钉信息网络