2017年11月13日月曜日

Zabbix 3.0でGmailを使って障害通知を行う方法

別記事でZabbix 2.2環境のGmailを使ったメールによる障害通知方法を記載したが、今回はZabbix 3.0環境における設定方法について記載する。

Gmailでは、SMTPではなくSSL/TLSで暗号化を行うSMTPSを利用している。Zabbix 2.2では、SMTPSを用いたメール送信ができないため、別途SMTPSでメール送信するスクリプトを導入する必要があった。
※このあたりの手順については、以下別記事を参照。

・ZabbixでGmailを使って障害メールを送信する設定
https://tech-mmmm.blogspot.jp/2016/05/zabbixgmail.html

Zabbix 3.0ではSSL/TLSを使ったメール送信が実装されたため、前回のように外部スクリプトを利用する必要がなくなった。

設定概要

Zabbixの障害通知の設定は、設定箇所が複数あり、かつ、多くの独自用語が使われている。以下に障害検知からメール送信までの概要図を記載する。


設定箇所は以下の3つとなる。

 ①メディアタイプ  :通知手段(メール、スクリプト、SMSなど)を設定
 ②ユーザーのメディア:通知先メールアドレスと使用するメディアタイプを設定
 ③アクション    :障害検知時の通知条件と通知するユーザーを設定

設定は、「メディアタイプ」→「ユーザーのメディア」→「アクション」の順に実施する。

設定方法

1. メディアタイプを作成

メディアタイプとは通知手段の設定となるが、Gmail送信用のメディアタイプは設定されていないので、新規に作成する。「管理」→「メディアタイプ」を選択し、「メディアタイプの作成」ボタンを押下し、以下の通り作成する。

------------------------------
・名前:Gmail
・タイプ:メール
・SMTPサーバー:smtp.gmail.com
・SMTPサーバーポート番号:465
・SMTP helo:smtp.gmail.com
・送信元メールアドレス:<送信に用いるGmailアカウント>@gmail.com
・接続セキュリティ:SSL/TLS
・認証:Username and password
・ユーザー名:<送信に用いるGmailアカウント> ※「@gmail.com」は不要
・パスワード:<送信に用いるGmailアカウントのパスワード>
・有効:チェック
------------------------------


2. ユーザーのメディアを作成

作成したメディアタイプを使って、メディアを作成する。今回はAdminユーザーに対してメディアを作成することとした。

「管理→「ユーザー」を選択し、Adminを選択する。


「メディア」タブを選択し、「追加」を選択する。


以下の通りメディアの設定を行う。これは送信先メールアドレスに対して、24時間365日(月曜日-日曜日、00:00-24:00)で、すべての深刻度のメール送信を許可する設定となる。

------------------------------
・タイプ:Gmail
・送信先:<送信先のメールアドレス>
・有効な時間帯:1-7,00:00-24:00
・指定した深刻度のときに使用:すべてチェック
・有効:チェック
------------------------------


3. アクションを作成

最後にアクションを設定する。「設定」→「アクション」を選択し、「イベントソース」が「トリガー」であることを確認し、「アクションの作成」ボタンを押下し作成する。


「アクション」タブでは以下の通り設定する。メール件名にホスト名があると障害部位がすぐに判別できるので、件名に{HOST.NAME1}を追加している。また、障害検知時間がわかるように、メッセージの文頭に{EVENT.DATE} {EVENT.TIME}を追加した。

------------------------------
・名前:Send Gmail
・デフォルトの件名:{HOST.NAME1}:{TRIGGER.STATUS}: {TRIGGER.NAME}
・デフォルトのメッセージ:
{EVENT.DATE} {EVENT.TIME}

Trigger: {TRIGGER.NAME}
Trigger status: {TRIGGER.STATUS}
Trigger severity: {TRIGGER.SEVERITY}
Trigger URL: {TRIGGER.URL}

Item values:

1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}
2. {ITEM.NAME2} ({HOST.NAME2}:{ITEM.KEY2}): {ITEM.VALUE2}
3. {ITEM.NAME3} ({HOST.NAME3}:{ITEM.KEY3}): {ITEM.VALUE3}

Original event ID: {EVENT.ID}
------------------------------


「アクションの実行条件」タブでは以下の通り設定した。トリガーの深刻度の条件は、監視設計に応じて適切に設定すること。

------------------------------
・メンテナンスの状態 期間外 メンテナンス
・トリガーの値 = 障害
・トリガーの深刻度 >= 軽度の障害
------------------------------


「アクションの実行内容」タブでは、以下の通り設定する。実行条件が満たされた際に、AdminユーザーのGmail送信のメディアを使ってメール送信を行う設定となる。

------------------------------
・実行内容のタイプ:メッセージの送信
・ユーザーに送信:Admin
・次のメディアのみ使用:Gmail
------------------------------


以上で設定は完了となる。

メール送信テスト

試しにESXiのCPU使用率を上昇させ、トリガーにて障害検知させてみたところ、以下の通りGmailにメールが送信されることが確認できた。



0 件のコメント:

コメントを投稿

人気の投稿