zabbix報警配置----郵件報警
-
- zabbix郵件報警
-
-
- 安裝郵件服務
- 配置服務,測試郵件發送功能
- zabbix頁面配置郵件報警
- 測試功能
-
zabbix郵件報警
安裝郵件服務
MTA和MUA:
通俗的說 MUA 就是使用者使用的用戶端,而 MTA 則是真正發送郵件的發送程序,MUA 編寫的郵件最終也交由 MTA 發送至目标端。
mailx是負責檢視、編寫郵件和向 MTA 發送郵件的 MUA。
sendmail,postfix :Sendmail和 postfix 即為負責郵件在網絡上傳輸的 MTA,将郵件從一個MTA傳送至另一個MTA。
- 安裝sendmail或者postfix其中一個。在zabbix-server端進行。
- 安裝啟動postfix
[[email protected] ~]# rpm -qa postfix
postfix-2.10.1-7.el7.x86_64
[[email protected] ~]# systemctl start postfix
[[email protected] ~]# systemctl status postfix
[[email protected] ~]#
- 安裝mailx
[[email protected] ~]# rpm -qa mailx #檢視已經安裝
mailx-12.5-19.el7.x86_64
[[email protected] ~]# yum install mailx -y #沒有安裝的話使用yum安裝
配置服務,測試郵件發送功能
- 擷取收件郵箱用戶端授權碼。我用的是163郵箱。
zabbix報警配置----郵件報警
- 此時會讓掃描二維碼,發送短信驗證完成後擷取授權碼。
- 修改 /etc/mail.rc 檔案,配置mail
set sendcharsets=iso-8859-1,utf-8
set [email protected] #注冊的個人郵箱,用于 zabbix 服務端轉發郵件到指定郵箱。
set smtp=smtp.163.com #填寫發送郵箱伺服器位址 smtp。
set [email protected] #個人郵箱使用者
set smtp-auth-password=XXXXXXXXXXX #郵箱用戶端授權密碼
set smtp-auth=login
set ssl-verify=ignore # #ssl認證方式
set nss-config-dir=/etc/pki/nssdb #證書所在目錄
- root環境 測試一下郵件是否能夠正常發送。
echo "zabbix test mail" |mail -s "zabbix QQ " [email protected] 想自己qq郵箱發送郵件。
- 書寫發送腳本,zabbix使用者測試郵件發送
- 修改zabbix配置檔案,指定腳本存放位置
[[email protected] ]# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts #預設位置
- 書寫腳本,修改權限
[[email protected] ~]# cd /usr/lib/zabbix/alertscripts/
[[email protected] alertscripts]# vim sendmail.sh
[[email protected] alertscripts]# cat sendmail.sh
#!/bin/bash
#$1:目的郵箱位址
#$2:郵件标題
#$3:發送的内容
echo "$3" |mail -s "$2" $1 >> /tmp/sendmail.log 2>&1
[[email protected] alertscripts]# chown zabbix:zabbix sendmail.sh
[[email protected] alertscripts]# chmod 755 sendmail.sh
- 将zabbix使用者/sbin/nologin改為/bin/bash
[[email protected] ~]# vim /etc/passwd
abbix:x:998:996:Zabbix Monitoring System:/var/lib/zabbix:/bin/bash
- 測試
[[email protected] alertscripts]# su zabbix
bash-4.2$ sh sendmail.sh [email protected] zabbixtext "text from zabbix 192.168.126.133"
成功
zabbix頁面配置郵件報警
- 建立報警媒介
- 自己定義名稱,類型選擇腳本。三個參數對應郵箱位址,郵件标題,郵件内容。
- 添加報警媒介
- 選擇admin使用者
- 添加報警媒介
- 選擇更新
- 若不是admin使用者,可以根據需要指定權限。管理者使用者不用修改,權限預設所有伺服器
zabbix報警配置----郵件報警
- 建立動作:當zabbix-agent當機時發送郵件報警。
- 根據主機觸發器 Template App Zabbix Agent: Zabbix agent on {HOST.NAME} is unreachable for5 minutes 設定,主要監測 zabbix_agentd 用戶端連接配接情況。
- 定義操作,發送郵件規則和内容
标題:故障{TRIGGER.STATUS},伺服器:{HOSTNAME1}發生: {TRIGGER.NAME}故障!
預設資訊:
告警主機 IP 位址:{HOST.CONN}
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警資訊: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
目前狀态:{TRIGGER.STATUS}:{ITEM.VALUE1}
- 定義恢複操作:恢複後如何發送郵件。
标題:恢複{TRIGGER.STATUS}, 伺服器:{HOSTNAME1}: {TRIGGER.NAME}已恢複!
恢複資訊:
告警主機 IP 位址:{HOST.CONN}
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警資訊: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
目前狀态:{TRIGGER.STATUS}:{ITEM.VALUE1}
測試功能
- 停止zabbix-agent用戶端
[[email protected] ]# systemctl stop zabbix-agent.service
- 檢視檢測結果
- 接收郵件
下載下傳附件,檢視郵件内容
- 此時恢複zabbix-agent
[[email protected] ]# systemctl start zabbix-agent.service
收到恢複郵件
下載下傳檢視郵件内容: