ESXiでCall 「HostDatastoreSystem.QueryVmfsDatastoreCreateOptions」エラーの解決

ESXi6.5で遭遇したので備忘録。

RAIDを削除せずにHDDを入れ替え、BIOSで create したら

ESXi「*.*.*.*」で オブジェクト「ha-datastoresystem」の「HostDatastoreSystem.QueryVmfsDatastoreCreateOptions」 の呼び出しが失敗しました。」

とエラー。Googleおじさんに尋ねたら KB にありました。

次のストレージの追加ウィザード エラーのトラブルシューティング:このディスクからパーティション情報を読み取れません (2079694)

sshでログインして操作するのですが、個々に書かれているコマンド ‘parted’ は既に廃止され、’partedUtil’ を使います。

とにもかくにも対象となる diskName を拾います。

それからsshで接続し、カレンドディレクトリを /vmfs/devices/disks/ にしておきます。

デバイスのリストを見ると、

一行目がディスクデバイス、二行目以降が順にパーティション(とその番号)になります。
今回は一つしかパーティションのないことがわかりました。

そこで、そのパーティションテーブルの状態を調べます。

素っ気ないですが、一行目がディスクラベルで、”msdos”と”gpt”でないといけません。今回は”unknown”となっているので、これがエラーの原因です。
(ちなみに二行目は順に「シリンダー数」「ヘッド数」「トラック当たりのセクター数」「総セクター数」ですが、いまどきのHDDに前者三つには意味が無いのは諸兄ご存知の通りです)

そこでディスクラベルを”gpt”にしてやります。ここからが ‘parted’ ではなく ‘partedUtil’ の出番です。

このときに diskName としてディスクデバイスを指定しなければなりませんでした。

パーティションを指定するのが順当だと思うのですが、なぜかエラーメッセージがくっついてきます。

うまくいってる気配もあるのですが。

この後、vSphere Client に戻ってストレージを追加します。

今度はエラーなく通りました。めでたしめでたし。