zabbix添加郵件報警機制
作者:尹正傑
還記得之前跟大家聊過的一個如何監控一個目錄的話題嗎?我們雖然監控出來數據了,也有數據了,但是,只是監控也沒有用啊~因為我們不能24小時盯着屏幕然后
出了事情在去處理問題吧!所以啊,你需要一個報警機制!(歡迎加入:高級運維工程師之路 598432640【一手資源發源地】)
在部署這個環境的時候遇到了一些麻煩:感謝好友(網友名稱叫:”冷眸 °“和”小東哥“)無私的給我指點迷津~讓我能更快速的了解這個軟件的使用~
說到報警常用的有三種:
一是郵件報警,這個在生產環境中用到的是最多的,幾乎沒有企業都會采用這種方式;
二是微信報警,至於不完微信的小哥哥小姐姐可能對這個不敢興趣,后期有機會我們也可以寫個博客關於微信報警的;
三就是我們最常用的一種聯系方式,短信~之前是有免費的飛信機器人,現在資源貌似不好找了,我們可以了解一下啊!
接下來就讓我們接着上次對目錄監控的進行郵件報警吧!咱們的郵件指的是生產環境中的配置喲~屬於干貨~
服務器前端配置(web)
一.配置觸發器(trigger)
1.編輯模板的觸發器 (從上往下依次點擊,會彈出如下對話框)
2.選擇需要添加觸發器的監控項
3.編輯一下你需要觸發報警的值
4.添加一下描述信息,讓你以后方便知道這個觸發器到底是干嘛的
5.點擊添加
二:添加報警媒介
1.點擊創建媒介類型
2.只要類型選擇腳本,並在下面添加3個變量
3.點擊更新(可以看到我們新加的報警媒介)
4.添加用戶的媒介(我沒有創建新的用戶,俺用的是zabbix自帶的用戶呢)
5.添加測試的郵件
三.添加動作(action)
1.創建動作
2.為這個動作起個名稱,這個你可以自定義的喲
3.匹配條件,這個條件是根據你的觸發器名稱來匹配的,所以我們只需要吧cactalog這個匹配上去就好了,實際生產環境中我們可以根據實際情況來匹配
4.其實這個才是action的核心,因為就靠這個選項來配置要發送給誰,以及發送的步驟,在這里,你可以定義幾個步驟,例子:1-2;2-3;3-0(這就表示3個動作,我們可以把這3個
步驟定義到發送給不通的用戶,來達到增加報警的級別,zabbix的這個功能我不得不豎起我的大拇指給他點贊啊!)
5.點擊添加,然后注意要啟用這個動作喲。
服務器后端配置
好了,我們點完簡單而又繁瑣的web之后,讓我們一起把后端的工作搞定吧~
首先你要清楚監控是服務器在監控,要發送郵件肯定需要發送郵件的工具,我聽說他們說sendmail和postfix都挺好使的,最后我選擇了mailx。
還有就是你要清楚一個編碼的問題,windows默認是gbk編碼,linux在字符界面默認是ASCII編碼,當然你可以指定成成utf-8編碼(可以理解成unicode的一個延伸)
1.為了解決這2個問題,我們需要安裝2個軟件包
[root@bogon yinzhengjie]# yum -y install mailx dos2unix
2.編輯mailx的配置文件,寫上相應的163.com的賬號和機器碼(關於如何獲取機器碼,可以參考我的另外一篇文章)
[root@bogon yinzhengjie]# tail -3 /etc/mail.rc | grep -v "^#"
3.編寫郵件發送腳本
還記的我們前面配置的媒介上面讓大家寫過的一個腳本名稱嗎?它其實就是來到zabbix指定目錄去調用這個腳本
[root@bogon yinzhengjie]# cd /usr/local/zabbix/share/zabbix/alertscripts
[root@bogon alertscripts]# less warning_scripts.sh
#!/bin/bash
#export LANG=zh_CN.UTF-8
FILE=/tmp/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE
/bin/mail -s "$2" $1 < $FILE
[root@bogon alertscripts]#
以上這個腳本可以把發送的內容傳遞給mailx工具去發送郵件,好~打完收工!讓我們看看去客戶端搞點事情吧~
客戶端配置:
在配置之前,我們可以在zabbix前端看到目錄大小的監控情況
來,讓我們一起把監控去把這個目錄變大吧~
[root@bogon yinzhengjie]# dd if=/dev/zero of=/yinzhengjie/data/alarm/big_file.txt bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.3404 s, 308 MB/s
[root@bogon yinzhengjie]# du -sh /yinzhengjie/data/alarm/
211M /yinzhengjie/data/alarm/
[root@bogon yinzhengjie]#
agent端的目錄變大了,我們來看看現在監控的是不是也變大呢?
查看報警報警郵箱賬號:
到此~我們生產環境中的郵件報警就已經搞定了~