1. 程式人生 > >2018-4-16 16周4次課 zabbix郵件告警

2018-4-16 16周4次課 zabbix郵件告警

zabbix

19.12 添加自定義監控項目


·需求:監控某臺web的80端口連接數,並出圖

兩步:1)zabbix監控中心創建監控項目;2)針對該監控項目以圖形展現


·對於第一步,需要到客戶端定義腳本

[root@localhost ~]# vim /usr/local/sbin/estab.sh

技術分享圖片

[root@localhost ~]# chmod 755 /usr/local/sbin/estab.sh


·客戶端上編輯配置文件 /etc/zabbix/zabbix_agentd.conf

·自定義監控項的key為my.estab.count,後面的 [*] 裏面寫腳本的參數,如果沒有參數則可以省略,腳本為/usr/local/sbin/estab.sh

技術分享圖片


·重啟客戶端

[root@localhost ~]# systemctl restart zabbix-agent

·首先到服務端驗證,執行命令

[root@localhost ~]# zabbix_get -s 192.168.65.129 -p 10050 -k 'my.estab.count'
0

·在網頁中主機的監控項中創建新監控項,鍵值為my.estab.count

技術分享圖片


·可以添加觸發器

技術分享圖片


·可以新建圖形

技術分享圖片



·錯誤匯總:

zabbix ZBX_NOTSUPPORTED: Timeout while executing a shell script.

技術分享圖片

紅線這段並沒有註釋掉!!!





19.13/19.14 配置郵件告警


·首先登錄你的163郵箱,設置開啟POP3、IMAP、SMTP服務

·開啟並記錄授權碼


·然後到監控中心設置郵件告警

·“管理”——>“報警媒介類型”——>“創建媒體類型”


名稱:自定義

類型:腳本

腳本名稱:mail.py

添加腳本參數:

{ALERT.SENDTO} 報警發送給誰

{ALERT.SUBJECT}報警標題

{ALERT.MESSAGE}報警內容

技術分享圖片


·創建報警腳本 mail.py

腳本位置 /usr/lib/zabbix/alertscripts

在 /etc/zabbix/zabbix_server.conf 中定義

技術分享圖片


·編輯報警腳本 mail.py (紅框內容根據實際情況自定義)

[root@localhost ~]# cd /usr/lib/zabbix/alertscripts
[root@localhost alertscripts]# vim mail.py

技術分享圖片

腳本內容:http://note.youdao.com/noteshare?id=dac98a142b86abba9b118e113969d4c4&sub=D3F1B8A4BC5249F8A5E99715B5E29E66



·更改mail.py執行權限

[root@localhost alertscripts]# chmod 755 mail.py


·測試腳本是否能發郵件

格式:python 腳本 目標郵箱 “郵件主題” “郵件內容”

[root@localhost alertscripts]# python mail.py [email protected] "hello there!" "you are genius!"

技術分享圖片

[root@localhost alertscripts]# python mail.py [email protected] "測試" "這是一條測試郵件"

技術分享圖片


郵箱中已經收到了郵件!

郵件腳本已經正常!!!



·在網頁端創建一個接受告警郵件的用戶,“管理” ——> “用戶” ——> “創建用戶”

·填寫必要信息

技術分享圖片


·報警媒介中添加收件人郵箱地址

技術分享圖片

技術分享圖片


·權限默認為所有組都無權限

技術分享圖片


·權限要到用戶組裏去改

技術分享圖片

技術分享圖片


·此時用戶的權限已經變為所有組可讀寫

技術分享圖片


·創建完成之後確認,媒介有無,權限有無!


·添加動作,即 觸發器觸發後做什麽

“新的觸發條件”,A維護狀態 非在 維護,B觸發器示警度>=未分類

技術分享圖片

(維護狀態 非在 維護指的是服務在重啟時不提示)


技術分享圖片


HOST:{HOST.NAME} {HOST.IP} 主機名或ip

TIME:{EVENT.DATE} {EVENT.TIME} 發生的日期、時間

LEVEL:{TRIGGER.SEVERITY} 報警級別

NAME:{TRIGGER.NAME} 哪一個觸發器告警

messages:{ITEM.NAME}:{ITEM.VALUE} 告警的狀態碼

ID:{EVENT.ID} 事件的ID



·操作”,選擇發送的用戶為剛創建的用戶,僅送到選擇“BAOJING”

技術分享圖片

技術分享圖片


·切換到“恢復操作”,把信息改成如下


HOST:{HOST.NAME} {HOST.IP}

TIME:{EVENT.DATE} {EVENT.TIME}

LEVEL:{TRIGGER.SEVERITY}

NAME:{TRIGGER.NAME}

messages:{ITEM.NAME}:{ITEM.VALUE}

ID:{EVENT.ID}



·點擊“新的”,“操作”,選擇發送的用戶為剛創建的用戶,僅送到選擇“BAOJING”

技術分享圖片


·添加完成後,狀態為已啟用

技術分享圖片

告警已經設置完成!





19.15 測試告警


·自定義一個觸發器

主機 ——> alex ——> 觸發器 ——> 創建觸發器

技術分享圖片

技術分享圖片


讓觸發器可以出發,然後去儀表板觀察,稍等片刻就會出現錯誤信息,同時郵箱也會收到提示。

技術分享圖片


解決問題之後,也會出現解決的提示郵件

技術分享圖片






19.16 不發郵件的問題處理


zabbix郵件告警配置流程:

1,開啟服務:郵箱開啟POP3、IMAP、SMTP服務

2,授權碼:開啟並記錄授權碼

3,告警媒介:監控中心設置郵件告警,新增報警媒介

1)名稱自定義 此處為mail.py

2)類型為腳本

3)腳本名稱可自定,需與服務器上一致

4)腳本參數 {ALERT.SENDTO} ,{ALERT.SUBJECT},{ALERT.MESSAGE} (順序不可改)

4,編輯腳本 此處為mail.py

1)腳本位置/usr/lib/zabbix/alertscripts/ 下編輯(目錄在/etc/zabbix/zabbix_server.conf 定義)

2)腳本內容:根據實際更改內容(用戶名、密碼、服務器地址等),在http://note.youdao.com/noteshare?id=dac98a142b86abba9b118e113969d4c4&sub=D3F1B8A4BC5249F8A5E99715B5E29E66

5,授權::chmod 755 /usr/lib/zabbix/alertscripts/mail.py

6,更改權限:更改Zabbix administrator 組權限為 所有組 讀寫

7,新建用戶:

1)加入到 Zabbix administrator 組中

2)報警媒介 類型,收件人,嚴重性

8,添加動作:

1)動作:名稱自定義,條件默認(或增加觸發器示警度>=未分類)

2)操作:可以用默認,但太亂,用以下

HOST:{HOST.NAME} {HOST.IP}

TIME:{EVENT.DATE} {EVENT.TIME}

LEVEL:{TRIGGER.SEVERITY}

NAME:{TRIGGER.NAME}

messages:{ITEM.NAME}:{ITEM.VALUE}

ID:{EVENT.ID}

增加新的操作:發送到用戶、僅送到、條件默認(可寫為事件已確認 = 非確認)

3)恢復操作:和操作內容一致即可

9,新增觸發器:增加新的觸發器,達到一定條件就告警

10,儀表板查看:之後就能在儀表板看到異常告警了,告警時,zabbix會給郵箱發郵件提醒

11,郵箱提示:郵箱中會有 PROBLEM 提示問題的郵件,當問題解決後,也會有個 OK 的郵件提示


·如果遇到發不了告警郵件:

1,腳本要能發郵件,可以用 python 腳本 目標郵箱 “郵件主題” “郵件內容” 來測試

2,報警媒介的配置是否正確:名稱、類型、腳本名稱、腳本參數

3,用戶報警媒介,郵箱是否正確,是否有讀寫權限

4,動作——操作—— 默認信息、操作;恢復操作是否正常

5,如果實在沒辦法,可以恢復快照重新配置一遍


2018-4-16 16周4次課 zabbix郵件告警