1.自定義腳本
Zabbix中有統一的報警腳本存放路徑,即:/usr/lib/zabbix/alertscripts。
1
2
3
4
5
6
7
8
[root@zrs1 ~]# cd /usr/lib/zabbix/alertscripts/
[root@zrs1 alertscripts]# vim mailalert.sh
#!/bin/bash
#
Contact=$1
Subject=$2
Mailbody=$3
echo -e "From: mailalert.sh \n$Mailbody" | mail -s $Subject $Contact
[root@zrs1 alertscripts]# chmod +x mailalert.sh
在Media types裏定義新的通知方式爲腳本
腳本1.png
更改users裏面的media中admin的被通知的方式爲腳本
腳本2.png
更改action中的operation爲自定義腳本
腳本 動作.png
爲了測試腳本,可以在其他虛擬機上安裝hping3,這個工具
我在172.16.1.10上安裝並執行:hping --faster 172.16.1.4
可以看到zabbix已經報警了
腳本3.png
郵件也已經發送成功
腳本4.png
2.遠程命令
創建一個新的item監控agent主機nginx服務的80端口,若80端口監控失敗,則執行遠程命令,重啓nginx服務。
遠程命令1.png
創建一個新的trigger
遠程 觸發器2.png
創建一個新的action
遠程 行動3.png
遠程命令2.png
當關閉agent端的nginx服務時,可以在problem裏面看到多了一個綠色的severity,(這裏我開關了四次nginx所以有四個)。
QQ瀏覽器截屏未命名.png
還可以在latest data中看到,graph變化了四次。
QQ瀏覽器截屏未命名.png
當關閉nginx服務時,item檢測不到80端口,就會觸發遠程命令,重啓nginx服務。
如下,可以看到,我關閉nginx後,立馬查看沒有80端口,等過幾秒後再次查看,80端口又出現了,這就意味着遠程命令執行成功。
1.png
3.報警升級
當遠程命令執行不能解決問題時,可以發送郵件的方式通知相關人員
報警升級.png