zabbix-2.2.2
1.添加被监控主机
configuration——Hosts——create host
主机名(Host name) | 必须是服务器的主机名,例:win-mail |
---|---|
主机名别名(Visible Name) | 自定义 |
组(Groups in groups) | 选择已有的或者建立新的(New group) |
客户端接口(Agent interface) | 192.168.1.250 |
2.在主机上设置监控项
Name | mail port (自定义) |
---|---|
Key | net.tcp.listen[port] 将port修改为6080(被监控端口) |
configuration——Hosts——Items——create item(右上角)
weaver
Name | mail port (自定义) |
---|---|
Key | net.tcp.listen[port] 将port修改为6080(被监控端口) |
保存
3.添加触发器
configuration——Hosts——Triggers——create trigger(右上角)
weaver
- 1.name:check mail port (自定义)
- 2.Expression:Add添加
- 3.select选择Item,右上角可以选择组和主机
- 4.选择我们刚刚建立的mail port
-
5.Function
Trigger - 6.Insert
Severity(告警级别):选High或者Disaster(灾难级) - 7.save
4.设置邮件告警
-
1.zabbix服务器配置
-
检查你的邮箱客户端是否启动
service sendmail status
-
mail配置
-
# vi /etc/mail.rc
set from=zhangsan@qq.com smtp=smtp.qq.com 发邮件用的账号以及SMTP服务器地址
set smtp-auth-user=zhangsan@qq.com smtp-auth-password=123 登录名和密码
set smtp-auth=login
-
测试发送邮件
# echo "test" | mail -s 'test linux' 123456789@qq.com
-
2.设置zabbix邮件告警脚本
- 查找zabbix脚本存放位置
# grep "AlertScripts" /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts
- 写脚本
# vi /usr/lib/zabbix/alertscripts/sendmail.sh
#!/bin/bash
#
contact=$1
subject=$2
body=$3
echo “${body}" | mail -s “${subject}" “${contact}“ >> /var/log/zabbix/sendmail.log 2>&1
- 修改权限
# cd /usr/lib/zabbix/alertscripts/
# chown zabbix.zabbix sendmail.sh
# chmod 755 sendmail.sh
-
3. zabbixweb端配置
-
创建告警媒介
Administration——Media Types——create media type
weaver
名字自定义,script name必须和刚建立的脚本名匹配 -
4.设置接收邮件的用户
-
创建告警媒介
Administration——Users——Users——Admin
weaver
Media——Add
类型选择在Media Type中建立的sendmail,send to发送给谁
-
创建告警动作
Configuration——Actions——Create acton
名字自定义,勾选Recovery message这个,意思是你的服务好了也发通知。
选择Conditions,添加一个触发器,就是刚定义的check mail port这个触发器
选择触发后的操作 weaver
上图中第一行是每一步的操作时间,触发警报后可以添加多步操作,例如:先重启服务,如果还报警就发邮件给管理员,如果还不行就给管理员打电话(当然是开玩笑的,但是可以设置给老板发邮件,后果你清楚)。operation type可以选择发信息或者执行命令,我们这里选择的是send message。下面选择发送给组或者用户。这里就可以选择我们刚定义过的admin用户。然后send only to 选择sendmail,就是我们刚刚在Media Type中建立的脚本
到此就算完成了,
weaver
如果你想测试一下是否可以发送邮件的话,你可以停一下你的服务,只要zabbix探测不到你监控的那个端口,应该就会给你发邮件了
网友评论