VMware Global Community
Yuu001
Contributor
Contributor
Jump to solution

コマンドを使用したディスクの障害検知について

みなさん、こんにちは。

esxcliを使用したディスクの障害を検知したく、どのコマンドを使用すればよいかご教授いただけないでしょうか?

下のコマンドを使えれば、わかるのかなとは思うのですが、どのようにすればよいかわからず困っています。

# esxcli storage  core device smart get

# esxcli storage core device state get

esxcliに限らず、このようにしたらコマンドでできるなどの情報をいただけると幸いです。

1 Solution

Accepted Solutions
kawaman
Leadership
Leadership
Jump to solution

こんにちは

esxcli storage core device list

で出力されるデバイス・ドライブ毎のstatusが障害検知に利用できるかと思います。

csv形式で成形して私は以下のようにして利用しています。

esxcli --formatter=csv --format-param=fields="Display Name,status,Is Offline, Size" storage core device list

statsu の表示については以下が参考になります。

vSANのdegradedなども検知されますので、ディスク障害検知にはなるかなと思います。

What is "Status: degraded" ?

View solution in original post

6 Replies
kawaman
Leadership
Leadership
Jump to solution

こんにちは

esxcli storage core device list

で出力されるデバイス・ドライブ毎のstatusが障害検知に利用できるかと思います。

csv形式で成形して私は以下のようにして利用しています。

esxcli --formatter=csv --format-param=fields="Display Name,status,Is Offline, Size" storage core device list

statsu の表示については以下が参考になります。

vSANのdegradedなども検知されますので、ディスク障害検知にはなるかなと思います。

What is "Status: degraded" ?

gowatana
Leadership
Leadership
Jump to solution

こんにちは。

# esxcli storage  core device smart get

こちらのコマンドラインの場合は、-d でデバイス名(esxcli storage core device list コマンドの最初の1行目に表示されるもの)を指定すると情報取得できます。

# esxcli storage core device state get

こちらは、おそらく「esxcli storage core device stats get」で、デバイスを指定しなくても取得できます。
ただし、USB デバイスなどがある場合は、それもまとめて表示されます。逆に、「-d デバイス名」も指定可能です。

ただし、ESXiはもともとSSHは無効化が推奨ということもあり、どちらも定常監視むけというより、トラブルシュートむけのコマンドというような気がします。

そのため、vCenter アラーム(「ホストのストレージ ステータス」アラームなど)での監視や、
ESXiをインストールしているハードウェアに管理ボード(iLO, iDRAC, iRMCなど)がついているようであれば、そちらでの監視を検討してみるとよいかもしれません。

(これらの方法であればVMware / HWベンダのサポートもうけられると思うので・・・)

以上です。ご参考まで。

Yuu001
Contributor
Contributor
Jump to solution

kawamanさん

こんにちは

ありがとうございます。

esxcli storage core device list

で出力されるデバイス・ドライブ毎のstatusが障害検知に利用できるかと思います。

ありがとうございます。ドライブ毎のstatusですね。

環境が現状使えなかったため、VMware HOLを使用して、コマンドを見させていただきました。

このステータスで確認できそうですね。

csv形式で成形して私は以下のようにして利用しています。

esxcli --formatter=csv --format-param=fields="Display Name,status,Is Offline, Size" storage core device list

使用例まで教えていただきありがとうございます。

参考にさせていただきます。

0 Kudos
Yuu001
Contributor
Contributor
Jump to solution

gowatanaさん

こんにちは

ありがとうございます。

こちらのコマンドラインの場合は、-d でデバイス名(esxcli storage core device list コマンドの最初の1行目に表示されるもの)を指定すると情報取得できます。

ご指摘ありがとうございます。

smartについてはdevice名を指定が必須であることは認識していました。

記載しておらず申し訳ありません。

こちらは、おそらく「esxcli storage core device stats get」で、デバイスを指定しなくても取得できます。

ただし、USB デバイスなどがある場合は、それもまとめて表示されます。逆に、「-d デバイス名」も指定可能です。

申し訳ありません、タイプミスまで指摘いただきありがとうございます。

ただし、ESXiはもともとSSHは無効化が推奨ということもあり、どちらも定常監視むけというより、トラブルシュートむけのコマンドというような気がします。

そのため、vCenter アラーム(「ホストのストレージ ステータス」アラームなど)での監視や、

ESXiをインストールしているハードウェアに管理ボード(iLO, iDRAC, iRMCなど)がついているようであれば、そちらでの監視を検討してみるとよいかもしれません。

(これらの方法であればVMware / HWベンダのサポートもうけられると思うので・・・)

前回の投稿もご考慮いただきありがとうございます。

たしかに、SSHやESXi Shellは定常監視向けではないですね。

可能であれば、ハードウェア管理ボードやvCenterで常時監視して、障害時にesxcliコマンドで対処する運用にしたほうが良いですね。

ご指摘ありがとうございます。

常時監視を管理ボードとして使用して障害が通知されたとして、vCenterを見れない場合、

SSHかESXi Shellで障害部分の特定して操作をしなくてはいけないと思うのですが、

その場合、使用するコマンドでよいものがありましたらご教授いただけると助かります。

esxcli storage core device list

この場合もkawamanさんにご教授いただいた、上記コマンドのstatusを確認すれば、障害部分が判断可能かと考えています。

他にもいろいろな方法を考えてみたく、vCenterのアラームをコマンドで確認したほうが良いなどありましたら情報をいただけると助かります。

また、PowerCLIやvSphere CLI、APIで取得したほうが良いなどがあれば、何かしらヒントとなる情報をいただけると幸いです。

いまいちコミュニティのルールがわかっておらず申し訳ないのですが、

コミュニティとして、別のディスカッションとしたほうがよいのであれば、別途新たに立てさせていただきます。

0 Kudos
gowatana
Leadership
Leadership
Jump to solution

こんにちは。

常時監視を管理ボードとして使用して障害が通知されたとして、vCenterを見れない場合、

SSHかESXi Shellで障害部分の特定して操作をしなくてはいけないと思うのですが、

その場合、使用するコマンドでよいものがありましたらご教授いただけると助かります。

こちらですが、この場合も ESXi から見るとなると、まず esxcli storage core device list あたりを見ると思います。
ただし、サーバHW側でRAID 構成している場合には、RAID 構成後の論理的なディスクだけ見えたりするため、ちゃんと障害ディスクが分かるか微妙です。
監視ボードのアラート発報(SNMP トラップとか)をうけとった場合は vCenter/ESXi というより、一般的にはアラートのメッセージや、管理ボード側(たとえば管理ボードの Web UIのようなもの)で障害発生部分の特定ができるはずです。

他にもいろいろな方法を考えてみたく、vCenterのアラームをコマンドで確認したほうが良いなどありましたら情報をいただけると助かります。

また、PowerCLIやvSphere CLI、APIで取得したほうが良いなどがあれば、何かしらヒントとなる情報をいただけると幸いです。

こちらですが、より広い内容のディスカッションだとおもうので、後から他の方も見られることを考慮すると
コメントいただいたとおり、あらたにディスカッションを開始していただいたくとよいと思います。

その際は、vSphere の障害検知には様々な方法があると思いますので、(可能であれば、ですが)想定している環境を記載しておくとより有益なヒントが得られるかもしれません。

(たとえば vSphereのバージョンや、サーバHWのモデル、使用できる監視サーバ製品、すでに利用している監視方法、特に監視したい項目、などなど・・・)

Yuu001
Contributor
Contributor
Jump to solution

gowatanaさん

こんにちは。

返信が遅くなり、申し訳ありません。

こちらですが、この場合も ESXi から見るとなると、まず esxcli storage core device list あたりを見ると思います。
ただし、サーバHW側でRAID 構成している場合には、RAID 構成後の論理的なディスクだけ見えたりするため、ちゃんと障害ディスクが分かるか微妙です。
監視ボードのアラート発報(SNMP トラップとか)をうけとった場合は vCenter/ESXi というより、一般的にはアラートのメッセージや、管理ボード側(たとえば管理ボードの Web UIのようなもの)で障害発生部分の特定ができるはずです。

ESXiとしては、kawamanさんからご教授いただいたコマンド[esxcli storage core device list]を見ることが、初めとしては良さそうですね。

RAIDカード上での構成では確かに、障害ディスクのステータスを返してくれるかわからないですね。

やはりハードウェアベンダーの情報を使用して、被疑を特定するのがベストですね。

ディスカッションについてもご助言ありがとうございます。

まずは、頂いた情報でどこまでできるか検討してからディスカッションを新たにあけるかどうか考えたいと思います。

貴重なお時間をいただきありがとうございました。

大変助かりました。