zabbix 郵件報警

zabbix 郵件報警

  • 首先須要有一個發送郵件的服務。可使用阿里雲的郵件推送服務。 阿里雲 -> 管理控制檯 -> 產品與服務 -> 雲通訊 -> 郵件推送 當即開通 -> 發信域名 -> 新建域名 -> 點擊配置 dnspod -> TXT記錄/MX記錄/CNAME 驗證 發信地址 -> 新建發信地址 -> 域名/帳號/發信類型(觸發) -> 設置smtp密碼 SMTP服務地址: smtpdm.aliyun.com ,SMTP服務端口號:25或80或465(SSL加密)
  • 在zabbix server上建立一個發郵件的腳本,使用Python編寫的。
vi mail.py #內容
#!/usr/bin/python
#coding:utf-8

import smtplib
from email.mime.text import MIMEText
import sys

mail_user = 'zhangsan@gongzi.site'         發送郵件的郵箱
mail_pass = 'xxxxxxxx'                     郵箱密碼

def send_mail(to_list,subject,content):
    me = "zabbix 監控告警平臺"+"<"+mail_user+">"
    msg = MIMEText(content, 'plain', 'utf-8')
    msg['Subject'] = subject
    msg['From'] = me
    msg['to'] = to_list

    try:
        s = smtplib.SMTP("smtpdm.aliyun.com", 25)
        s.login(mail_user,mail_pass)
        s.sendmail(me,to_list,msg.as_string())
        s.close()
        return True
    except Exception,e:
        print str(e)
        return False

if __name__ == "__main__":
    send_mail(sys.argv[1], sys.argv[2], sys.argv[3])
  • 測試腳本是否可用
python mail.py 85735253@qq.com "測試郵件" "cececececece"
## 打開上面這個qq郵箱,查看是否有收到測試郵件
  • 設置zabbix配置文件,將腳本移動到配置文件中指定的目錄下。
vim /etc/zabbix/zabbix_server.conf 
找到:AlertScriptsPath=/usr/lib/zabbix/alertscripts
cd /usr/lib/zabbix/alertscripts
把mail.py 挪到這個目錄下來
給它一個755權限  chmod 755 mail.py
  • 設置zabbix web UI
1) 設置報警媒介
Administration -> Media types -> 右上角(Create Media type)
Name: baojing
Type: Script
Script name: mail.py
Script parameters -> Add {ALERT.SENDTO}/ Add {ALERT.SUBJECT}/Add {ALERT.MESSAGE}
Add

2)設置接收郵件地址
Administration -> Users -> Admin(或者新建用戶) 
Media  -> Add 
Type: baojing
Send to: 郵箱地址,如 85735253@qq.com 
Add
Update

3)配置動做
Configuration -> Actions -> Create action
Name: 發郵件
Operations 
	New  
	Send to Users -> Admin
	Send only to -> baojing
	Conditions -> new -> Add 
	Add

Recovery operations
	New  
	Send to Users -> Admin
	Send only to -> baojing
	Add

Add
  • 測試報警
Configuration -> Hosts -> Triggers 
故意調整一個trigger
Monitoring -> Problems
相關文章
相關標籤/搜索