作为运维工程师,最重要的事情就是保证该网站正常稳定的运行,需要实时监控网站、服务器的运行状态,并且有故障及时去处理。
监控网站无需人工时刻去访问WEB网站或者登陆服务器去检查, 可以借助开源监控软件例如Zabbix、Cacti、Nagios、Ganglia等监控来实现对网站的7x24小时的监控,并且可以做到有故障及时报警通知SA解决。
Zabbix除了可以使用邮件报警之外,还可以通过多种方式把告警信息发送到指定人,例如短信报警方式,越来越多的企业开始使用Zabbix结合微信作为主要的告警方式,因为每个人每天都在使用微信,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理。
本文以Zabbix最新版本3.2.6为蓝本,演练Zabbix监控实现微信报警,设置的步骤有哪些呢,具体方法步骤如下:
(1) 微信企业号注册
企业号注册地址:https://qy.weixin.qq.com/填写企业注册信息,等待审核完,并且微信扫描登录企业公众号,如图6-91(a)、6-91(b)所示:
图6-91(a) 微信企业公众号注册
图6-91(b) 微信企业公众号登录
(2) 通讯录添加运维部门及人员
登录新建的企业号,通过提前把企业成员信息添加到组织或者部门,需要填写手机号、微信号或邮箱,通过这样方式让别人扫码关注企业公众号,为了后面企业号推送消息给企业成员,如图6-92(a)、6-92(b)所示:
图6-92(a) 微信企业公众号通讯录
图6-92(b) 微信企业公众号通讯录
(3) 企业应用-创建应用
除了对个人添加微信报警之外,还可以添加不同管理组,接受同一个应用推送的消息, 成员账号,组织部门ID,应用Agent ID,CorpID和Secret,调用API接口需要用到这些信息,如图6-93(a)、6-93(b)、6-94(c)所示:
图6-93(a) 微信企业公众号创建应用
图6-93(b) 微信企业公众号创建应用
图6-93(c) 微信企业公众号创建应用
(4) 获取企业CorpID
单击企业公众号首页“我的企业”,即可看到,如图6-94所示:
图6-94 微信企业公众号CorpID
(5) 微信接口调试
调用微信接口需要一个调用接口的凭证:Access_token通过CorpID和Secret可以获得Access_token,微信企业号接口调试地址: http://qydev.weixin.qq.com/debug,如图 6-95(a)、6-95(b)所示:
图6-95(a)微信企业公众号调试
图6-95(b)微信企业公众号调试
(6) 获取微信报警工具
mkdir –p /usr/local/zabbix/alertscripts cd /usr/local/zabbix/alertscripts wget http://dl.cactifans.org/tools/zabbix_weixin.x86_64.tar.gz tar zxvf zabbix_weixin.x86_64.tar.gz mv zabbix_weixin/weixin . chmod o+x weixin mv zabbix_weixin/weixincfg.json /etc/ rm -rf zxvf zabbix_weixin.x86_64.tar.gz rm -rf zabbix_weixin/ |
修改/etc/ weixincfg.json配置文件中corpid、secret、agentid,并测试脚本发送信息,如图6-96(a)、6-96(b)所示:
cd /usr/local/zabbix/alertscripts ./weixin wuguangke 京峰教育报警测试 Zabbix故障报警 ./weixin contact subject body 标准信息格式: Contact,为你的微信账号,注意不是微信号,不是微信昵称,可以把用户账号设置成微信号或微信昵称,Subject 告警主题,Body 告警详情。 |
图6-96(a) Zabbix Server端微信配置文件
图6-96(b) Zabbix Server端微信配置文件
(7) 脚本调用设置
Zabbix_Server端设置脚本执行路径,编辑zabbix_server.conf文件,添加如下内容:
AlertScriptsPath=/usr/local/zabbix/alertscripts |
(8) Zabbix Server报警配置
设置Actions动作,并设置触发微信报警,如图6-97(a)、6-97(b)、7-97(c)所示:
图6-97(a) Zabbix Server Action动作配置
图6-97(b) Zabbix Server Action动作配置
图6-97(c) Zabbix Server Action动作配置
(9) 配置Media Type 微信脚本
AdministrationàMedia TypesàCreate Media Type如图6-98(a)、6-98(b)所示:
图6-98(a) Zabbix Server Media Types配置
(10) 配置接收微信信息的用户
AdministrationàUsersàAdminàMedia如图6-99所示:
图6-99 Zabbix Server Users Media
(11)微信报警信息测试
磁盘容量剩余不足20%,会触发微信报警,如图6-100(a)、6-100(b)、6-100(c)所示:
图6-100(a)Zabbix 微信报警信息
图6-100(b)Zabbix 微信报警故障信息
图6-100(c)Zabbix 微信报警恢复信息