https://www.zabbix.com/documentation/3.2/manual/config/notifications
步骤概览:
在正式配置告警时,需要事先定义好item(监控项)、trigger(触发器)
-
配置Media type
作用: 选择告警信息通过什么渠道发送,如邮件、SMS、自定义脚本。一般使用的是自定义脚本。 -
配置 Users
-
配置Action
作用:配置告警主题和内容;
配置告警发送条件,如Trigger值(PROBLEM/OK)、主机所属组等;
配置Operations,通过什么渠道发送、发送给谁等
第一步: 配置 Media type

这里的 Script paraments 就是 下面脚本的 $1 $2 $3 等参数。支持macro 写法
第二步: 配置Users

第三步:配置Actions
- Actions

注意这里的conditions是需要自己增加的。
- Operations


第四步:脚本邮件配置
- 配置文件
[zabbix@master ~]$ cat /usr/local/zabbix/etc/zabbix_server.conf | grep "AlertScriptsPath"
### Option: AlertScriptsPath
#AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/local/zabbix/alertscripts
- 脚本
[root@master ~]# cat /usr/local/zabbix/alertscripts/mail.sh
#!/bin/bash
to=$1
subject=$2
body=$3
/usr/local/zabbix/bin/sendEmail -s mail.cc.sandai.net -f monitor@cc.sandai.net -t "$to" -xu monitor@cc.sandai.net -xp 121212 -u "$subject" -m "$body"
这里使用了sendEmail 命令发送邮件。但是sendEmail 是root权限,而我的zabbix运行使用的是zabbix账户, 因此我在配置时,发现手动执行脚本可以发送邮件,但是zabbix就是不能发送邮件(提示是发送成功的)。 这里就是由于权限问题导致的。因此我将sendEmail 命令cp一个到/usr/local/zabbix/bin 目录下,并更改为zabbix用户。
一般我们可以直接使用root用户运行zabbix,也就不需要这么多麻烦了。但是这次也让我对权限有更深的理解了。
Zabbix 3.0
定义Media Type----选定告警信息通过什么发送,如邮件或者脚本或者 SMS; 我一般用脚本,因此还要选择脚本参数:{ALERT:XXX}

配置Users ----- 配置Media信息(该用户使用类型的Media发送信息、发送给谁)

需要注意下: 这里创建的user如果只用于发送信息,那么应该给这个用户设置权限,如不能放问所有主机组和主机信息

配置Action
- 配置告警主题和内容格式

- 配置 告警条件
https://www.zabbix.com/documentation/3.0/manual/config/notifications/action/conditions

我这里的使用的是AND 条件, 也就是说,下面的condition A B C 都要成立才会发邮件。 Trigger value = PROBLEM 这个是必须的,因为我们看的就是PROBLEM 信息, 此外,有问题的主机还需要满足 是杭州节点 的才会发送。
- 配置Operations


网友评论