ESXi6.7~7.0で、HPサーバ(ML350Gen9)のRAIDステータスをcronで取得
富士通サーバは標準でiRMCの監視でハード故障時にメール送信できますが、HPサーバのiLOはオプションライセンスを買わないとできません。
ZabbixのiLOテンプレートも使えそうなのが見つからなかったのでどうしようかと思っていたのですが、OEM HP版ESXiイメージでインストールしていると、ESXiにはHPのRAID管理コマンド ssacli も入っていることに気づきました
https://blog.ndk.name/manage-hpe-smart-array-in-vmware-esxi/
それで適当なLinuxサーバからcronでRAIDステータスを毎日取得してお茶を濁すことにします。
テストしたHPサーバは ML350Gen9 で、インストールイメージはHPE版のカスタムISOを使っています。カスタムISOでインストールしていないとHPのRAID管理コマンド入っていないからダメですよ。
追記:ESXi7.0u3でも動作することを確認しました。
*ESXiサーバでまずステータスが取得できるか確認します
ESXiにSSHログインしてHPのssacliコマンドを実行してみます。これ以外のオプションは上記のページを参照してください。
RAIDカードのステータス。まずどのスロットに入っているかを確認します。ここで取得できたスロットを 番号を次の2つのコマンドで使用します。
/opt/smartstorageadmin/ssacli/bin/ssacli ctrl all show status
RAIDアレイのステータス。スロットの指定が必要です。
/opt/smartstorageadmin/ssacli/bin/ssacli ctrl slot=0 logicaldrive all show status
DISKごとのステータス。こちらもスロットの指定が必要です。
/opt/smartstorageadmin/ssacli/bin/ssacli ctrl slot=0 pd all show status
いかがですか、うまくいきましたか?それではLinuxサーバからこのコマンドを実行させるように設定していきましょう。どうしてESXiサーバ自身でCronを動かしたりメールさせないか疑問に思いますか?それはESXiサーバは再起動するとストレージ以外に置いた自前のシェルスクリプトやCronは消えますし、外部へのメール送信はFireWALLでブロックされているから、適当なLinux機を使って外からコマンド実行するほうが手軽だからです。
*Linuxサーバで作業します
1.ESXiサーバホストxxx.xxx.xxx.xxxに公開鍵をコピー
ssh-keygen cat /root/.ssh/id_rsa.pub | ssh root@xxx.xxx.xxx.xxx "cat >> /etc/ssh/keys-root/authorized_keys"ssh root@xxx.xxx.xxx.xxx でLinuxサーバからESXiホストにパスワード無しでログインできることを確認し、 リモートからコマンド実行してステータスを取得できることを確認します。
ssh root@xxx.xxx.xxx.xxx "\ /opt/smartstorageadmin/ssacli/bin/ssacli ctrl all show status;\ /opt/smartstorageadmin/ssacli/bin/ssacli ctrl slot=0 logicaldrive all show status;\ /opt/smartstorageadmin/ssacli/bin/ssacli ctrl slot=0 pd all show status"
2./etc/crontabに適当な時間に実行するよう追加 します。
メールのタイトルを「VM1 RAID-CHECK」としたいのでmailxを追加して実行結果をパイプで流し込みます。ESXiホスト名はVM1としていますが好きな名前に変えて下さい。
31 0 * * * root ssh root@xxx.xxx.xxx.xxx "/opt/smartstorageadmin/ssacli/bin/ssacli ctrl all show status;/opt/smartstorageadmin/ssacli/bin/ssacli ctrl slot=0 logicaldrive all show status;/opt/smartstorageadmin/ssacli/bin/ssacli ctrl slot=0 pd all show status"|mail -s "VM1 RAID-CHECK" メール宛先
こんなメールが届きます。
From: rootTo: xxxx@xxxxxxxxxxxxxxx Subject: VM1 RAID-CHECK Date: Tue, 09 May 2023 12:11:45 +0900 User-Agent: Heirloom mailx 12.5 7/5/10 Smart Array P440ar in Slot 0 (Embedded) Controller Status: OK Cache Status: OK Battery/Capacitor Status: OK logicaldrive 1 (3.82 TB, RAID 5): OK physicaldrive 1I:6:1 (port 1I:box 6:bay 1, 600 GB): OK physicaldrive 1I:6:2 (port 1I:box 6:bay 2, 600 GB): OK physicaldrive 1I:6:3 (port 1I:box 6:bay 3, 600 GB): OK physicaldrive 1I:6:4 (port 1I:box 6:bay 4, 600 GB): OK physicaldrive 2I:6:5 (port 2I:box 6:bay 5, 600 GB): OK physicaldrive 2I:6:6 (port 2I:box 6:bay 6, 600 GB): OK physicaldrive 2I:6:7 (port 2I:box 6:bay 7, 600 GB): OK physicaldrive 2I:6:8 (port 2I:box 6:bay 8, 600 GB): OK
メールでエラーが通知が来れば、ESXiサーバ自身のWebGUI管理画面でRAIDステータスを確認すればOKです。
監視→ハードウェア→ストレージ と進むとこんな感じで確認できます。
ESXi6.7
ESXi7.0u3
コメント
コメントを投稿