前面的文章裏,我們已經配置好了Server和Agent,並且server能夠自動發現agent。
由於時間間隔過久,我這裏的環境信息發生了變化,注意調整。
郵件告警的前提:你已經配置好了server和agent之間的關係,server能夠從agent抓取數據(能夠監控到客戶端)
實驗環境:
Server:192.168.1.12
Agent:192.168.1.9
郵件發送工具:mailx
1、檢查系統環境(這是習慣)
# systemctl is-enabled firewalld //關閉防火牆
Disabled
# getenforce //關閉SElinux
Disabled
2、關閉其他郵件發送工具
# systemctl is-enabled sendmail //關閉sendmail
Disabled
# systemctl is-enabled postfix //關閉postfix
Disabled
3、安裝mailx工具
# yum -y install mailx
# rpm -ivh /mnt/cdrom/Packages/dos2unix-6.0.3-7.el7.x86_64.rpm
(解決郵件發送的內容變成附件的問題)
4、修改Server端郵件配置文件
# vim /etc/mail.rc
set sendcharsets=iso-8859-1,utf-8
set from=185****[email protected] //發件人的郵箱
set smtp=smtp.163.com:25 //發件人的郵箱服務器
set smtp-auth-user=185****[email protected] //發件人郵箱
set smtp-auth-password=<郵箱密碼> //郵箱密碼
5、測試郵件能否發送(去QQ郵箱查看是否收到)
# echo "wo yao fa she la "|mail -s "zabbix test" [email protected]
6、編寫發送郵件的腳本
# cd /usr/local/zabbix/alertscripts
# vim sendmail.sh(先把郵件內容寫在文件中,然後發送)
#!bin/bash
FILE=/tmp/mailtmp.txt
echo "$3" > $FILE
dos2unix -k $FILE
/bin/mail -s "$2" $1 < $FILE
# chmod 755 sendmail.sh
# chown zabbix. sendmail.sh
# touch /tmp/mailtmp.txt
# chmod 755 /tmp/mailtmp.txt
# chown zabbix. /tmp/mailtmp.txt
7、修改配置文件zabbix_server.conf
# vim etc/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts //去這個目錄下找腳本
到此,系統配置完成,下面我們去web頁面進行配置。
爲了不必要的麻煩,還是重啓下Server和Agent吧。
Web界面調試
1、添加報警媒介類型
2、 添加用戶信息
3、 添加報警動作
4、 調整模板監控參數(讓環境觸發閾值,發生告警)
1、添加報警媒介類型(我這裏新建了一個,沒有使用默認的)
【管理】----【報警媒介類型】----【創建媒介類型】
名稱:自定義就行
類型:腳本
腳本名稱:跟配置文件保持一致
腳本參數:3.0以後的版本需要手動添加,就這三個就行
2、添加用戶信息
【用戶】---【創建用戶】
3、添加報警動作
【配置】----【動作】----【觸發器】----【創建動作】
條件:這裏設置的是告警級別,只要有信息就發送郵件
這裏郵件提示可以設置爲中文,去網上搜一下吧,這裏不多說了
1-1:表示故障發生就發送郵件,
故障持續1小時,也只發送一封郵件,因爲上面設置的爲3600s
如果上面設置爲7200s,那麼故障持續每隔2小時發送一封郵件。
1-0:0表示無窮大的意思。
如果設置爲1-0它會一直不斷的發送郵件,
郵件的間隔呢,就是這裏設置的時間,
這裏設置了120s,每2分鐘發送一封郵件
這裏配置基本上同前面就好了
這裏也是,配置基本上同前面就行
注意:最後調整完,【用於動作中】這裏一定要有剛纔我們創建的動作“test_mail”
4、調整模板參數(讓環境觸發閾值,發生告警)
爲了能快速看到報警效果,
我這裏把“空閒內存”設置爲了20G,如果小於20G,觸發告警動作。
最後,來到第一個頁面
【檢測中】----【問題】----【選擇主機羣組】
耐心等一會兒,就會看到告警提示。
鼠標放在【完成1】上,會看到發送郵件的信息。
如果發送失敗,會顯示【失敗1】
結束!!!