1.自定義腳本
Zabbix中有統一的報警腳本存放路徑,即:/usr/lib/zabbix/alertscripts。
[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裏定義新的通知方式爲腳本
更改users裏面的media中admin的被通知的方式爲腳本
更改action中的operation爲自定義腳本
爲了測試腳本,可以在其他虛擬機上安裝hping3,這個工具
我在172.16.1.10上安裝並執行:hping --faster 172.16.1.4
可以看到zabbix已經報警了
郵件也已經發送成功
2.遠程命令
創建一個新的item監控agent主機nginx服務的80端口,若80端口監控失敗,則執行遠程命令,重啓nginx服務。
創建一個新的trigger
創建一個新的action
當關閉agent端的nginx服務時,可以在problem裏面看到多了一個綠色的severity,(這裏我開關了四次nginx所以有四個)。
還可以在latest data中看到,graph變化了四次。
當關閉nginx服務時,item檢測不到80端口,就會觸發遠程命令,重啓nginx服務。
如下,可以看到,我關閉nginx後,立馬查看沒有80端口,等過幾秒後再次查看,80端口又出現了,這就意味着遠程命令執行成功。
3.報警升級
當遠程命令執行不能解決問題時,可以發送郵件的方式通知相關人員