Zabbix监控,zabbix监控系统深度实践
扎比克斯结合企业微信实现微信报警功能
一、扎比克斯概述
二、部署扎比克斯结合企业微信报警
1.注册企业微信
2.配置企业微信
1)创建部门
2)添加成员
3.创建应用
4.配置监控脚本
1)修改Zabbix_server配置文件
2)安装软件名称软件
3)配置监控脚本
4)报警测试
5.扎比克斯网站界面配置
1)配置报警媒介
2)把媒介贴到用户上
3)创建动作
4)设置报警消息
5)设置恢复报警消息
三、测试扎比克斯结合企业微信报警
1.被监控机配置
2.通过扎比克斯网站管理界面来对关系型数据库服务器进行监控
3.关闭关系型数据库服务器的代理人
4.验证
一、扎比克斯概述
扎比克斯可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用扎比克斯结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理。
二、部署扎比克斯结合企业微信报警
1.注册企业微信
注册地址:https://work.weixin.qq.com
2.配置企业微信
1)创建部门
2)添加成员
3.创建应用
4.配置监控脚本
注意:如果未部署扎比克斯监控平台需看:分布式部署扎比克斯监控平台来进行部署。
1)修改Zabbix_server配置文件
[root @ zabbix ~]# vim/usr/local/zabbix/etc/zabbix _ server。主配置文件
在最后面添加:
警报脚本路径=/usr/local/zabbix/share/zabbix/警报脚本
[root@zabbix ~]# systemctl重启zabbix_server
2)安装软件名称软件
软件名称软件包从这个连接下载:https://潘。百度一下。com/s/1 ygqhn 4 bdlzzrw 6x 6 yap hlq
提取码:x3r0
[root @ zabbix ~]# CD/usr/local/zabbix/share/zabbix/alert scripts/
[root@zabbix alertscripts]# ls
[root@zabbix alertscripts]# ls
simplejson-3.8.2.tar.gz
[root @ zabbix警报脚本]# tar zxf simplejson-3.8.2.tar.gz
[root @ zabbix警报脚本]# CD简单JSON-3。8 .2
【root @ zabbix简单JSON-3。8 .2]# python setup.py构建python设置。巴拉圭安装
3)配置监控脚本
下面图片中划线的东西,和下面脚本文件中对应写。
图瑟
托帕提
坐席编号
企业号
公司机密
【root @ zabbix简单JSON-3。8 .2]# CD.
[root @ zabbix警报脚本]# vim testzabbix。巴拉圭
#!/usr/bldjb/python
# _ * _编码:utf-8 _*_
导入urllib,urllib2
导入数据
导入系统
导入软件名称
重新加载(系统)
sys.setdefaultencoding(utf-8 )
def gettoken(corpid,corpsecret):
gettoken _ URL=https://qyapi.weixin.qq.com/cgi-bldjb/gettoken?corpid= corpid 公司机密=公司机密
# print gettoken_url
尝试:
token _ file=URL库2。urlopen(gettoken _ URL)
除了urllib2 .HTTPError as e:
打印e代码
打印电子阅读().解码(“utf8”)
sys.exit()
令牌数据=令牌文件。读取()。解码(“utf-8”)
token _ JSON=JSON。加载(令牌数据)
token_json.keys()
token=token_json[访问令牌]
返回令牌
定义发送数据(访问令牌,用户,主题,内容):
send _ URL=https://qyapi.weixin.qq.com/cgi-bldjb/message/send?访问令牌=访问令牌
send_values={
用户:张三,#企业号中的用户帐号。
顶级派对: 1 ,#企业号中的部门身份证。
msgtype:text ,
agentid:1000002 ,#企业号中的应用身份证。
文本:{
内容:主旨n 内容
},
安全: 0
}
# send _ data=JSON。转储(发送值,确保_ascii=False)
send _ data=简单JSON。转储(发送值,确保_ascii=False).编码(“utf-8”)
打印(发送数据)
send_request=urllib2 .请求(发送url,发送数据)
响应=JSON。加载(URL库2。URL打开(发送请求).read())
打印字符串(响应)
if __name__==__main__ :
user=str(sys.argv[1])
subject=str(sys.argv[2])
content=str(sys.argv[3])
corpid=ww849e7d6548123bc4 #企业号的标识身份证。
corp secret= ipzr _ m pake ao 2 izrofwqqfuadwcnmqgyujb 12345 #应用程序的密钥。
accesstoken=gettoken(corpid,corpsecret)
发送数据(访问令牌、用户、主题、内容)
4)报警测试
【root @ zabbix简单JSON-3。8 .2]# chmod x testzabbix。巴拉圭
[root @ zabbix alert scripts]# chmod x testzabbix . py
[root @ zabbix警报脚本] #。/testzabbix.py1test你好
5.Zabbix Web界面配置
切换到中文
更新后刷新页面。
1)配置报警介质。
可以按如下方式添加脚本参数
{警惕。SENDTO}
{警惕。主题}
{警惕。消息}
2)将媒体贴在用户身上。
3)创建一个操作
4)设置报警信息。
!
服务器:{主机名1}具有:{触发器。NAME}失败!
警报主机:{主机名1}
闹钟时间:{事件。日期} {事件。时间}
警报级别:{触发。严重性}
警报信息:{触发器。姓名}
5)设置恢复报警信息。
三、结合企业微信报警测试Zabbix
1.受监控机器的配置
[root@mysql ~]# ls
anaconda-ks . CFG zabbix-4.2.6.tar.gz扎比克斯-agent-3.2.6-1.el7.x86_64.rpm
[root @ MySQL ~]# rpm-IVH zabbix-agent-3 . 2 . 6-1 . el7 . x86 _ 64 . rpm
[root @ MySQL ~]# vim/etc/zabbix/zabbix _ agentd . conf
95台服务器=192.168.1.1
136 ServerActive=192.168.1.1
147主机名=mysql
[root@mysql ~]# systemctl启动zabbix-agent
2.通过Zabbix Web管理界面监控MySQL服务器。
上面的“配置”,然后“主机”来创建一个主机。请记住在左侧的组中选择“全部”,然后单击“创建主机”
点击模板界面,链接指示器,并选择以下模板
3.关闭MySQL服务器代理
[root @ MySQL ~]# system CTL stop zabbix-agent
4.确认
注意:大概需要等5~6分钟,这个消息比较慢。
打开MySQL上的代理再次验证。
[root@mysql ~]# systemctl启动zabbix-agent