天天看點

zabbix利用sendEmail郵件報警

  sendEmail是一款輕量級,巧小,無需安裝的郵件發送指令。隻需下載下傳,解壓就可以使用。

官網位址:http://caspian.dotconf.net/menu/Software/SendEmail/

下載下傳安裝sendEmail郵件包

[root@node2 ~]# wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz

[root@node2 ~]# tar xvf sendEmail-v1.56.tar.gz 

[root@node2 ~]# cp -a sendEmail-v1.56/sendEmail /usr/local/bin/

[root@node2 ~]# ll /usr/local/bin/sendEmail 

-rwxr-xr-x 1 root root 80213 Sep 30  2009 /usr/local/bin/sendEmail

[root@node2 ~]# sendEmail  -h    --幫助

2.編寫shell監控腳本

[root@node2 ~]# mkdir  -p /etc/zabbix/alertscripts

[root@node2 ~]# vim /etc/zabbix/alertscripts/SendEmail.sh 

#!/bin/bash

# Filename:    SendEmail.sh

# Date:        2015/01/04

# Description: zabbix郵件告警腳本

# Notes:       使用sendEmail

LOGFILE="/tmp/Email.log"

:>"$LOGFILE"

exec 1>"$LOGFILE"

exec 2>&1

SMTP_server='smtp.sina.com'       #SMTP伺服器,變量值需要自行修改

username='[email protected]'       #使用者名,變量值需要自行修改

password='xxxxxx'              #密碼,變量值需要自行修改

from_email_address='[email protected]' # 發件人Email位址,變量值需要自行修改

to_email_address="$1"               # 收件人Email位址,zabbix傳入的第一個參數

message_subject_utf8="$2"           # 郵件标題,zabbix傳入的第二個參數

message_body_utf8="$3"              # 郵件内容,zabbix傳入的第三個參數

# 轉換郵件标題為GB2312,解決郵件标題含有中文,收到郵件顯示亂碼的問題。

message_subject_gb2312=`iconv -t GB2312 -f UTF-8 << EOF

$message_subject_utf8

EOF`

[ $? -eq 0 ] && message_subject="$message_subject_gb2312" || message_subject="$message_subject_utf8"

# 轉換郵件内容為GB2312,解決收到郵件内容亂碼

message_body_gb2312=`iconv -t GB2312 -f UTF-8 << EOF

$message_body_utf8

[ $? -eq 0 ] && message_body="$message_body_gb2312" || message_body="$message_body_utf8"

# 發送郵件

sendEmail='/usr/local/bin/sendEmail'

set -x

$sendEmail -s "$SMTP_server" -xu "$username" -xp "$password" -f "$from_email_address" -t "$to_email_address" -u "$message_subject" -m "$message_body" -o message-content-type=text -o message-charset=gb2312

[root@node2 ~]# chmod 755 /etc/zabbix/alertscripts/SendEmail.sh 

[root@node2 ~]# chown zabbix:zabbix /etc/zabbix/alertscripts/SendEmail.sh 

[root@node2 ~]# vim /etc/zabbix/zabbix_server.conf 

AlertScriptsPath=/etc/zabbix/alertscripts

[root@node2 ~]# touch  /tmp/Email.log 

[root@node2 ~]# chown  zabbix:zabbix /tmp/Email.log 

[root@node2 ~]# /etc/init.d/zabbix-server restart

[root@node2 alertscripts]# ./SendEmail.sh [email protected] 111 222   --測試郵件發送

[root@node2 alertscripts]# tailf  /tmp/Email.log 

+ /usr/local/bin/sendEmail -s smtp.sina.com -xu [email protected] -xp system -f [email protected] -t [email protected] -u 111 -m 222 -o message-content-type=text -o message-charset=gb2312

Oct 27 14:22:11 node2 sendEmail[6872]: Email was sent successfully!

3.在zabbix添加監控報警機制

<a href="http://s3.51cto.com/wyfs02/M00/74/F0/wKioL1YvGmXxAkf7AAJpMHHQxBc355.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M01/74/F3/wKiom1YvGjKTwqL7AAG4EFWxk6U922.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M01/74/F0/wKioL1YvGmWCwSS5AAMCRnH8TYc834.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/74/F3/wKiom1YvGjLC9-RWAAILLWzh030504.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M00/74/F3/wKiom1YvGjLhxdvvAAFqhVXANNg769.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/74/F0/wKioL1YvGmXhMr63AAIzH67gDIM204.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/74/F0/wKioL1YvGmWiEXoKAAJgFL4iE8I660.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M00/74/F3/wKiom1YvGjPQdkfOAAJhdD_wmrc959.jpg" target="_blank"></a>

本文轉自 z597011036 51CTO部落格,原文連結:http://blog.51cto.com/tongcheng/1706712,如需轉載請自行聯系原作者