标签:zabbix
19.12 添加自定义监控项目·需求:监控某台web的80端口连接数,并出图
两步:1)zabbix监控中心创建监控项目;2)针对该监控项目以图形展现
·对于第一步,需要到客户端定义脚本
[root@localhost ~]# vim /usr/local/sbin/estab.sh
[root@localhost ~]# chmod 755 /usr/local/sbin/estab.sh
·客户端上编辑配置文件 /etc/zabbix/zabbix_agentd.conf
·自定义监控项的key为my.estab.count,后面的 [*] 里面写脚本的参数,如果没有参数则可以省略,脚本为/usr/local/sbin/estab.sh
·重启客户端
[root@localhost ~]# systemctl restart zabbix-agent
·首先到服务端验证,执行命令
[root@localhost ~]# zabbix_get -s 192.168.65.129 -p 10050 -k 'my.estab.count' 0
·在网页中主机的监控项中创建新监控项,键值为my.estab.count
·可以添加触发器
·可以新建图形
·错误汇总:
zabbix ZBX_NOTSUPPORTED: Timeout while executing a shell script.
红线这段并没有注释掉!!!
19.13/19.14 配置邮件告警
·首先登录你的163邮箱,设置开启POP3、IMAP、SMTP服务
·开启并记录授权码
·然后到监控中心设置邮件告警
·“管理”——>“报警媒介类型”——>“创建媒体类型”
名称:自定义
类型:脚本
脚本名称:mail.py
添加脚本参数:
{ALERT.SENDTO} 报警发送给谁
{ALERT.SUBJECT}报警标题
{ALERT.MESSAGE}报警内容
·创建报警脚本 mail.py
脚本位置 /usr/lib/zabbix/alertscripts
在 /etc/zabbix/zabbix_server.conf 中定义
·编辑报警脚本 mail.py (红框内容根据实际情况自定义)
[root@localhost ~]# cd /usr/lib/zabbix/alertscripts [root@localhost alertscripts]# vim mail.py
·更改mail.py执行权限
[root@localhost alertscripts]# chmod 755 mail.py
·测试脚本是否能发邮件
格式:python 脚本 目标邮箱 “邮件主题” “邮件内容”
[root@localhost alertscripts]# python mail.py ???????@163.com "hello there!" "you are genius!"
[root@localhost alertscripts]# python mail.py ??????@qq.com "测试" "这是一条测试邮件"
邮箱中已经收到了邮件!
邮件脚本已经正常!!!
·在网页端创建一个接受告警邮件的用户,“管理” ——> “用户” ——> “创建用户”
·填写必要信息
·报警媒介中添加收件人邮箱地址
·权限默认为所有组都无权限
·权限要到用户组里去改
·此时用户的权限已经变为所有组可读写
·创建完成之后确认,媒介有无,权限有无!
·添加动作,即 触发器触发后做什么
“新的触发条件”,A维护状态 非在 维护,B触发器示警度>=未分类
(维护状态 非在 维护指的是服务在重启时不提示)
HOST:{HOST.NAME} {HOST.IP} 主机名或ip
TIME:{EVENT.DATE} {EVENT.TIME} 发生的日期、时间
LEVEL:{TRIGGER.SEVERITY} 报警级别
NAME:{TRIGGER.NAME} 哪一个触发器告警
messages:{ITEM.NAME}:{ITEM.VALUE} 告警的状态码
ID:{EVENT.ID} 事件的ID
·操作”,选择发送的用户为刚创建的用户,仅送到选择“BAOJING”
·切换到“恢复操作”,把信息改成如下
HOST:{HOST.NAME} {HOST.IP}
TIME:{EVENT.DATE} {EVENT.TIME}
LEVEL:{TRIGGER.SEVERITY}
NAME:{TRIGGER.NAME}
messages:{ITEM.NAME}:{ITEM.VALUE}
ID:{EVENT.ID}
·点击“新的”,“操作”,选择发送的用户为刚创建的用户,仅送到选择“BAOJING”
·添加完成后,状态为已启用
告警已经设置完成!
19.15 测试告警
·自定义一个触发器
主机 ——> alex ——> 触发器 ——> 创建触发器
让触发器可以出发,然后去仪表板观察,稍等片刻就会出现错误信息,同时邮箱也会收到提示。
解决问题之后,也会出现解决的提示邮件
19.16 不发邮件的问题处理
zabbix邮件告警配置流程:
1,开启服务:邮箱开启POP3、IMAP、SMTP服务
2,授权码:开启并记录授权码
3,告警媒介:监控中心设置邮件告警,新增报警媒介
1)名称自定义 此处为mail.py
2)类型为脚本
3)脚本名称可自定,需与服务器上一致
4)脚本参数 {ALERT.SENDTO} ,{ALERT.SUBJECT},{ALERT.MESSAGE} (顺序不可改)
4,编辑脚本 此处为mail.py
1)脚本位置/usr/lib/zabbix/alertscripts/ 下编辑(目录在/etc/zabbix/zabbix_server.conf 定义)
2)脚本内容:根据实际更改内容(用户名、密码、服务器地址等),在http://note.youdao.com/noteshare?id=dac98a142b86abba9b118e113969d4c4&sub=D3F1B8A4BC5249F8A5E99715B5E29E66
5,授权::chmod 755 /usr/lib/zabbix/alertscripts/mail.py
6,更改权限:更改Zabbix administrator 组权限为 所有组 读写
7,新建用户:
1)加入到 Zabbix administrator 组中
2)报警媒介 类型,收件人,严重性
8,添加动作:
1)动作:名称自定义,条件默认(或增加触发器示警度>=未分类)
2)操作:可以用默认,但太乱,用以下
HOST:{HOST.NAME} {HOST.IP}
TIME:{EVENT.DATE} {EVENT.TIME}
LEVEL:{TRIGGER.SEVERITY}
NAME:{TRIGGER.NAME}
messages:{ITEM.NAME}:{ITEM.VALUE}
ID:{EVENT.ID}
增加新的操作:发送到用户、仅送到、条件默认(可写为事件已确认 = 非确认)
3)恢复操作:和操作内容一致即可
9,新增触发器:增加新的触发器,达到一定条件就告警
10,仪表板查看:之后就能在仪表板看到异常告警了,告警时,zabbix会给邮箱发邮件提醒
11,邮箱提示:邮箱中会有 PROBLEM 提示问题的邮件,当问题解决后,也会有个 OK 的邮件提示
·如果遇到发不了告警邮件:
1,脚本要能发邮件,可以用 python 脚本 目标邮箱 “邮件主题” “邮件内容” 来测试
2,报警媒介的配置是否正确:名称、类型、脚本名称、脚本参数
3,用户报警媒介,邮箱是否正确,是否有读写权限
4,动作——操作—— 默认信息、操作;恢复操作是否正常
5,如果实在没办法,可以恢复快照重新配置一遍
标签:zabbix
原文地址:http://blog.51cto.com/11530642/2103712