もっと詳しく

前回、IBM ServeRAID MR10i搭載のIBM System x3650 M2 (Type.7947)上で、RAID1を構成するディスクの1基に障害が発生したまま、しばらく運用しているのを見つけました。なかなか目の届きにくい所にある、こうしたサーバにおけるのディスク障害に備え、 MegaRAID Storage Manager のE メール 通知 機能を設定します。

MSMにおける通知メール設定

RAIDコントローラの管理ツール、MegaRAID Storage Manager (MSM) には、イベントレベルに応じた通知設定の機能があり、Eメールによる通知も網羅されています。設定は「Tools」の中にある 「Monitor Configure Alerts」をクリック。

図01.MSM Tools メニュー

図01.MSM Tools メニュー

イベントは重要度に応じて4段階に分かれ、通知する手段はシステムログ、MSMログ、画面上へのポップアップの他、Eメールでも通知が可能となっていますが、デフォルトでは最も深刻な「Fatal」時にのみ設定されていました。前回、RAID1を構成するディスクの1つに障害が発生するようなケースでは「Critical」であったことから、今回この「Critical」の場合でもEメールによる通知を有効にします。

図02.MSM アラート設定

図02.MSM アラート設定

続いてメール送信の為のSMTPサーバの設定です。使用できるのはかなりレガシーなSMTPに限られるようで、ユーザ認証はサポートされているものの、暗号化はサポートされていないので、今回はISPから提供されているSMTPサーバを指定しました。

図03.MSM メールサーバ設定

図03.MSM メールサーバ設定

最後にメールの宛先を設定します。デフォルトの「root@localhost」と言うアドレスが宛先が残っていると、うまくメールを送信出来ない不具合があるようなので、まず初めにこれを「Remove」ボタンで消してから、上の入力欄に送信先メールアドレスを入力の上、「Add」ボタンで登録します。

図04.MSM メール宛先設定

図04.MSM メール宛先設定

メール宛先欄の下にある「Test」ボタンでテストメールを送ってくれるのですが、何度試行しても失敗します。

Test Email Failed
The test email could not be sent.
Check the mail server settings and try again.

図05.MSM テストメール送信失敗

図05.MSM テストメール送信失敗

外向きに送れない問題をポートプロクシで回避

この不具合について調べてみたところ、こちらのフォーラム

netsh

コマンドを使い、localhost 25番をSMTPサーバの25番へ転送するポートプロキシを設定することで、問題を回避する方法が提示されていたので、試してみます(Great Tnx!!)。

LSI MegaRaid Configure Alerts – The Spiceworks Community

netsh

 コマンドによるポートプロキシの作成は、次の要領で簡単です。

C:> netsh interface portproxy add v4tov4 listenport=25 listenaddress=127.0.0.1 connectport=25 connectaddress=#SMTP_ADDRESS#

この状態でMSMからテストメールを送ると今度は送信成功と表示され、実際にメールを受け取ることが出来ました。

図06.MSM テストメール送信成功

図06.MSM テストメール送信成功

図07.実際に受信したテストメール

図07.実際に受信したテストメール

ちなみに、現在有効なポートプロキシの一覧を表示や削除は、以下のように行います。

C:> netsh interface portproxy show all
Listen on ipv4:             Connect to ipv4:
Address         Port        Address         Port
--------------- ----------  --------------- ----------
127.0.0.1       25          ###.###.###.### 25

C:> netsh interface portproxy delete v4tov4 listenport=25 listenaddress=127.0.0.1
C:> netsh interface portproxy show all
C:>

 

ポートプロキシをタスクスケジューラで自動起動

netsh

コマンドにより設定したこのポートプロキシは永続的なものではなく、OSを再起動すると消えてしまうことから、タスクスケジューラを使って起動時に毎回このコマンドが自動実行されるよう設定します。

まずタスクスケジューラで新規タスクを作成し、そのトリガには「ログオン時」ではなく「スタートアップ時」を選択。

図08.タスクスケジューラ トリガ設定

図08.タスクスケジューラ トリガ設定

アクションは「プログラムの開始」として、プログラムと引数を以下のように入力します。

Program   : netsh
Arguments : interface portproxy add v4tov4 listenport=25 listenaddress=127.0.0.1 connectport=25 connectaddress=#SMTP_ADDRESS#

図09.タスクスケジューラ アクション設定

図09.タスクスケジューラ アクション設定

全般のセキュリティオプションで、「ユーザがログインしているかどうかにかかわらず実行する」を選択して「OK」ボタンを押し、実行に必要なログイン情報を入力したら設定は完了です。

図10.タスクスケジューラ タスクの保存

図10.タスクスケジューラ タスクの保存

 

今回は、Windows Server 2016を例に設定しましたが、MegaRAID Storage ManagerにはLinux版も用意されています。また、MSMは管理ツールとAgentを必ずしも同一機にインストールする必要はないので、監視用に別途Linux機(実機または仮想マシン)を用意してMSMをインストールすれば、Linuxシステムの高い多様性のもと、より簡単にEメール通知を実現出来ると思います。

 

投稿 IBM System x サーバ MegaRAID Storage Managerの通知メール送信バグを回避Fun Scripting 2.0 に最初に表示されました。