zabbixでsendEmailを使用してアラームメッセージを送信する
1.sendEmailをダウンロードしてインストールする
ダウンロードURL:
http://caspian.dotconf.net/menu/Software/SendEmail/
sendEmailのインストール方法:
# tar xvzf sendEmail-v1.56.tar.gz
# cp sendEmail-v1.56/sendEmail /usr/local/bin/
# chmod +x /usr/local/bin/sendEmail
2.zabbixサーバー側メールを送信するスクリプト
2.1 /etc/zabbix/alertscriptsを作成
# mkdir -p /etc/zabbix/alertscripts
# chown -R zabbix:zabbix /etc/zabbix/alertscripts
2.2 /etc/zabbix/zabbix_server.confを修正
AlertScriptsPath=/etc/zabbix/alertscripts
2.3 zabbix serverが再起動
2.4 メールを送信するスクリプトを作成
# vim /etc/zabbix/alertscripts/SendEmail.sh
#!/bin/bash
SMTP_server=’smtp.xXX.com’ # SMTPサーバ
username=’zabbix@XXX.com’ # ユーザ名
password=’zabbix_StartNews24′ # パスワード
from_email_address=’zabbix@XXX.com’ # 送信者のメールアドレス
to_email_address="$1″ # 受信者のEmail,zabbixの第一パラメータ
message_subject_utf8="$2″ # メール件名,zabbixの第2パラメータ
message_body_utf8="$3″ # メール本文,zabbixの第3パラメータ
#件名文字化けを防ぐ
message_subject_shift-jis=`iconv -t shift-jis -f UTF-8 << EOF
$message_subject_utf8
EOF`
[ $? -eq 0 ] && message_subject="$message_subject_shift-jis" || message_subject="$message_subject_utf8″
# メールの内容はshift-jisで表示される
message_body_shift-jis=`iconv -t shift-jis -f UTF-8 << EOF
$message_body_utf8
EOF`
[ $? -eq 0 ] && message_body="$message_body_shift-jis" || message_body="$message_body_utf8″
# メールを送信
sendEmail=’/usr/local/bin/sendEmail’
$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=shift-jis
# chown zabbix:zabbix /etc/zabbix/alertscripts/SendEmail.sh
# chmod +x /etc/zabbix/alertscripts/SendEmail.sh
3.zabbix管理画面にEmail警告を配置
「Media types」->Type->Script->Script name ->SendEmail.sh
4.zabbix管理画面にactionを定義
4.1 actionを作成
4.2 「Actions」->Default subject->{TRIGGER.STATUS}:{TRIGGER.NAME}{HOST.NAME}
ディフォルトのアラーム内容
警告ホスト:{HOST.NAME}
ホストIP: {HOST.IP}
警告時間:{EVENT.DATE} {EVENT.TIME}
警告レベル:{TRIGGER.SEVERITY}
警告メッセージ:{TRIGGER.NAME}
問題詳細:{ITEM.NAME}:{ITEM.VALUE}
イベントID:{EVENT.ID}