私が自由に使えるのは、LSI MegaRAID SAS 9260-4iコントローラーを備えたSupermicro X9DR3 / iFマザーボードに基づくテストサーバーで、2台のHDDが接続され、RAID1が構成されていました。
LSI MegaRAID SAS 9260-4iがESXiで公式にサポートされているという事実にもかかわらず、VMware vSphereクライアントの「Health Status」セクションに移動すると、RAIDステータスに関する情報を取得できなくなります。
幸いなことに、これは修正可能です。 サイトlsi.comにアクセスして、目的のコントローラーの「SMISプロバイダー」を含むアーカイブを見つけます。
拡張子が「vib」のファイルをダウンロードして解凍します。 これは、組み込みのESXiセンサーエンジンを使用してコントローラーのステータスを監視するパッケージです。 このvibをサーバーにコピーし、SSHで接続してインストールします。
esxcli software vib install -v /vmfs/volumes/datastore1/500.04.V0.53-0003.vib
サーバーを再起動し、SSH経由で再接続して、パッケージがインストールされていることを確認します。
esxcli software vib list | grep -i lsi
「ヘルスステータス」セクションで、LSI MegaRAIDコントローラのステータスを確認できます。
しかし、もちろん、これは自動監視には十分ではありません。 VMware vSphereクライアントを起動するまで、障害について知ることができないためです。 センサーのポーリングのプロセスを自動化する必要があります。 これを行うには、 http: //www.claudiokuenzler.com/nagios-plugins/check_esxi_hardware.phpで入手可能な「check_esxi_hardware.py」スクリプトを使用します。最初は、Nagiosの拡張機能です。 ただし、非常に用途が広く、他の監視システムに接続することは難しくありません。
スクリプトはPythonプログラミング言語で書かれており、 PyWBEMライブラリが必要です。 Linux、Debian、およびUbuntuでは、標準のシステムリポジトリを介してインストールされます。
apt-get install python-pywbem
「check_esxi_hardware.py」を実行するための構文は非常に簡単です。
check_esxi_hardware.py -H XXX.YYY.WWW.ZZZ -U root -P XXXXXXXX
応答として、サーバーの正常性状態に関する簡単なレポートを受け取ります。
OK - Server: Supermicro X9DR3-F s/n: 0123456789 System BIOS: 3.0a 2013-07-31
詳細情報の出力を有効にすると、スクリプトがLSI MegaRAIDコントローラーを含むすべてのセンサーのステータスをポーリングすることを確認できます。
check_esxi_hardware.py -H XXX.YYY.WWW.ZZZ -U root -P XXXXXXXX -v
スクリプトの欠点は、センサーをポーリングするために、ハイパーバイザーの管理者に認証データを提供する必要があることです。 必ずしもルートであるとは限りませんが、適切な権限を持っている必要があります。そうしないと、センサーに問い合わせることができません。
HDDの1つの障害をシミュレートしてみましょう。 サーバーを再起動し、WebBIOSコントローラーに移動します。 ハードドライブのいずれかを選択します。
そのプロパティに入ります:
オフにします。
ハイパーバイザーをロードすると、VMware vSphereクライアントで実際に障害があることがわかります。
そして、ここにcheck_esxi_hardware.pyが提供するものがあります: