lang110 发表于 2019-1-18 07:28:53

Zabbix篇四:钉钉机器人报警


安装篇


Zabbix安装篇一:服务端安装教程
Zabbix安装篇二:Linux批量安装客户端Zabbix-agent
Zabbix安装篇三:windows批量安装客户端Zabbix-agent
Zabbix安装篇四:钉钉机器人报警
监控篇

Zabbix监控篇一:监控SQL Server数据库
Zabbix监控篇二:监控Mariadb数据库
Zabbix监控篇三:监控Exchange Server
Zabbix监控篇四:监控路由器
  一、概述:

  1、简介:
        zabbix通过钉钉机器人进行报警通知,能监视各种网络参数,保证服务器系统的安全运营;灵活的通知机制使用效果还是挺不错的,6个人就可以注册钉钉团队,怎么用自己可以查下,反正是免费使用(马云不知道会不会给我加鸡腿)
        群机器人是钉钉群的高级扩展功能。群机器人可以将第三方服务的信息聚合到群聊中,实现自动化的信息同步。例如:通过聚合GitHub,GitLab等源码管理服务,实现源码更新同步;通过聚合Trello,JIRA等项目协调服务,实现项目信息同步。不仅如此,群机器人支持Webhook协议的自定义接入,支持更多可能性,例如:你可将运维报警提醒通过自定义机器人聚合到钉钉群。
  2、使用心得:
     相比使用×××和邮件报警,钉钉机器人报警比较及时,因为内部就用钉钉进行工作,移动端和电脑端都能时刻察觉,而且还没有限制发送消息的数量,使用了一年多时间,非常稳定,唯一的遗憾是不会编辑写go语言,不然可以修改脚本的内容信息,让通知机制更加灵活。
  二、钉钉机器人创建:
  钉钉提供了一个 webhook 地址,获取到Webhook地址后,用户可以使用任何方式向这个地址发起 HTTP POST 请求,即可实现给该群组发送消息。
  1、创建钉钉群----添加机器人
http://s1.运维网.com/images/20180912/1536733148424985.jpg
  添加自定义机器人,复制下webhook值
  http://s1.运维网.com/images/20180912/1536733210309390.jpg
  
三、配置脚本
脚本下载路径:http://down.运维网.com/data/2451909
1、下载编写好的程序文件到zabbix的/usr/lib/zabbix/alertscripts目录(我这里是默认路径,具体检查/etc/zabbix/zabbix_server.conf)
  
  # cd /usr/lib/zabbix/alertscripts/
  # ll
  total 5696
  -rw-r--r--. 1 root root 5828913 Sep 13 23:22 webhook-zabbix-robot-64
  #vim /etc/zabbix/zabbix_server.conf
  

  http://s1.运维网.com/images/20180912/1536737743763806.jpg
  解压更改名称为webhook-zabbix-robot-64并且chmod +x webhook-zabbix-robot-64 && chown zabbix.zabbix webhook-zabbix-robot-64
  创建/tmp/dingding.log 并更改属主为zabbix
  

  # cd /usr/lib/zabbix/alertscripts/
  # chmod +x webhook-zabbix-robot-64 && chown zabbix.zabbix webhook-zabbix-robot-64       让zabbix拥有权限
  # touch /tmp/dingding.log
  # chmod +x dingding.log && chown zabbix.zabbix dingding.log
  
  # ll
  total 908
  -rwxr-xr-x. 1 zabbix zabbix      0 Sep 13 23:27 dingding.log
  2、报警媒介类型
http://s1.运维网.com/images/20180912/1536734919295808.jpg
  -webhook:为刚才添加机器人的值:
  -msg:为zabbix定义的告警
  -url:为zabbix服务器地址:
  -log:为记录日志,对应刚才创建的日志文件
  3、配置动作

http://s1.运维网.com/images/20180912/1536735433900664.jpg
http://s1.运维网.com/images/20180912/1536735609314793.jpg
  操作默认信息内容如下:


{HOSTNAME1}
{EVENT.DATE} {EVENT.TIME}
{TRIGGER.SEVERITY}
{TRIGGER.NAME}
{TRIGGER.KEY1}
{ITEM.VALUE}
{ITEM.LASTVALUE}
{EVENT.ID}
{HOST.IP}
http://填写自己服务器地址哦/zabbix
{EVENT.AGE}
{EVENT.STATUS}
{EVENT.ACK.STATUS}
{EVENT.ACK.HISTORY}
  http://s1.运维网.com/images/20180912/1536735632274345.jpg
  恢复操作默认信息如下:


{HOSTNAME1}
{EVENT.DATE} {EVENT.TIME}
{TRIGGER.SEVERITY}
{TRIGGER.NAME}
{TRIGGER.KEY1}
{ITEM.VALUE}
{ITEM.LASTVALUE}
{EVENT.ID}
{HOST.IP}
FF4A954A
http://填写自己服务器地址哦/zabbix
{EVENT.AGE}
{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
OK
http://s1.运维网.com/images/20180912/1536735723333070.jpg
  确认操作默认信息如下:

{USER.FULLNAME} acknowledged problem at {ACK.DATE} {ACK.TIME} with the following message:
{ACK.MESSAGE}
Current problem status is {EVENT.STATUS}  最后更新下,
  4、配合用户报警信息
http://s1.运维网.com/images/20180914/1536896168667150.png
http://s1.运维网.com/images/20180914/1536896223800068.png
http://s1.运维网.com/images/20180914/1536896283499596.png
  四、测试

  1、先测试脚本是否有问题:
  # ./webhook-zabbix-robot-64 -webhook=https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxx
  2018/09/13 23:39:46 初始化完成。
  2018/09/13 23:39:46 开始创建消息。
  2018/09/13 23:39:46 消息创建完成。

  2018/09/13 23:39:46 开始POST至Webhook。
  2018/09/13 23:39:47 钉钉机器人接口返回消息:{"errmsg":"ok","errcode":0}
  2、正常触发报警信息

http://s1.运维网.com/images/20180912/1536736209823874.jpg
http://s1.运维网.com/images/20180912/1536736225464106.jpg
  五、失败原因:
  1、关闭防火墙
  2、关闭SELinux

  # /usr/sbin/sestatus
  SELinux status:               disabled
  3、查看动作是否失败:
http://blog.运维网.com/static/js/ueditor1.4.3/themes/default/images/spacer.gif正常显示为完成状态
http://s1.运维网.com/images/20180914/1536905924832031.png
  如果显示失败,可以把作--默认信息的换行符删除掉,或者检查字符是否存在中文字母
{HOSTNAME1}{EVENT.DATE} {EVENT.TIME}{TRIGGER.SEVERITY} {TRIGGER.NAME}{TRIGGER.KEY1}{ITEM.VALUE}{ITEM.LASTVALUE}{EVENT.ID}{HOST.IP}http://ip/zabbix{EVENT.AGE}{EVENT.STATUS} {EVENT.ACK.STATUS}{EVENT.ACK.HISTORY}


页: [1]
查看完整版本: Zabbix篇四:钉钉机器人报警