ESXi7.0の仮想マシンに外付けHDDのデータストアを割当てる

ESXi7.0を動かしたいと思った動機は、Windows Server 2019 を立ち上げ、WSUSの運用をテストしてみたかったから。

仮想マシンとして Windows Server 2019 Essentials を構築したのは下記のとおりです。

WSUSは、その取り扱うデータ(アップデートファイル)のボリュームから貴重なSSDではなく、HDDに置きたいという思いがあり、外付けHDDでデータストアの領域を増やせないかと考えたわけです。

最初は、ST150EのUSBポートに外付けHDDを付けた後、ESXiへのブラウザからの操作で何とかなるんじゃないの?と軽く考えていたんですが、非常に甘かったですね。

NTFSフォーマットの外付けHDDをUSBポートに接続しても何も表示されず

外付けHDDをESXiに認識させる

試行錯誤で何とかなるものでもなさそうなので、詳しい手順は、こちらを参考にさせて頂きました。

以上。

というくらい、丁寧に解説して頂いているので、概ね迷うことも無かったのですが、ひとつだけ、ひっかかった点がありましたので記載しておきます。

[root@localhost:~] eval expr $(partedUtil getptbl /dev/disks/mpx.vmhba37:C0:T0:L0 | tail -1 | awk ‘{print $1 ” \* ” $2 ” \* ” $3 ” – 1″}’)

の部分。

パーティションサイズを計算するところですが、全角文字を半角に変更したりと、若干の手直しはしたものの、

121601*255*63-1

と表示されたんですね。

awkに慣れてないのもあるんですが、その解析に時間をかけるのは違うよね、と、計算式を計算して、次のステップに進みました。(次のステップでは、表示された計算式ではなく、計算結果[976768064]を使った、ということです)

もうひとつ、気持ち悪かったのが、次の行、

[root@localhost:~] partedUtil setptbl /dev/disks/mpx.vmhba37:C0:T0:L0 gpt “1 2048 976768064 AA31E02A400F11DB9590000C2911D1B8 0″

[AA31E02A400F11DB9590000C2911D1B8]は、何なんだ、と。

ls /dev/disks

で出てきた値を使わなくちゃいけないんじゃないの?

と思いつつ、ネットで検索すると、この値ばかりなんですね。どうやら、この値を使うのが定石のようです。

データストアの名前は USB-HDD とシンプルに。

931.35GBの外付けHDDが見えた
画像はフォルダ作成後(作成前のフォルダは、.sdd.sf のみ)

見えましたね。

仮想マシンから使用できるようにする

ここまでは、ESXiがデータストアとして認識できるようになっただけで、仮想マシンから使えるようにするためには、仮想マシン側の設定が必要です。

仮想マシンから「設定の編集」を開き、

[ハードディスクの追加]から[新規標準ハードディスク]を選びます。

[新規ハードディスク]の設定項目が表示されますので、サイズ、場所を変更します。他はそのままで大丈夫です。

外付けHDDの半分の容量を割当てました。

ここで、仮想マシンを起動します。

新しく接続したドライブが見えていないのは、想定の範囲内です。フォーマットもしてないですからね。

[ディスクの管理]を開きます(メニュー → [Windows管理ツール] → [コンピューターの管理] → [記憶域] → [ディスクの管理] と開くのがセオリーかもしれませんが、検索窓で「ディスク」と入力して[ハードディスク パーティションの作成とフォーマット]を開くのが早くて好きです)。

想定通り、未割り当てになっています。が、オフラインですね。

右クリックでのメニューに「オンライン」があったかどうか、定かでないですが、コマンドプロンプトを開いて、DISKPARTでオンラインに変更しました。

後は、通常のディスクの初期化でOKです。

オンラインになったので、初期化を行う
初期化完了(全領域をNTFSでフォーマット)

無事に、Eドライブとして、見えました。