仮想マシンハードディスク(vmdk)の形式変換について(Thick/Thin)

VMware

仮想マシンハードディスク(vmdk)の形式変換について(Thick/Thin)

本記事では、vSphere ESXi上で動作する仮想マシンの”仮想マシンハードディスク”の展開形式及びその変換について紹介致します。

vSphere環境における仮想マシンハードディスクの形式の種類の紹介

vSphere環境において、仮想マシンの仮想ハードディスクの展開手法は3種類あります。

  • シック プロビジョニング(Lazy Zeroed)
  • シック プロビジョニング(Eager Zeroed)
  • シン プロビジョニング

3つの中からどれかを必ず選択する必要があります。それぞれの違いを簡単に図にしてみました。

シック(Thick)は”分厚い”という意味の英単語です。上図では1と2がこれに該当し、vmdkの作成タイミングでそのサイズ分をデータストアから消費します。1と2の間ではvmdk内部でゼロ初期化を全領域で終えるのがEagaer Zeroed(Eagerは熱心な、という意味)、書き込みが発生する都度、その領域に対して最小限のゼロ初期化を行うのがLazy Zeroed(Lazyは怠けている、という意味)です。

シン(Thin)は”薄い”という意味の英単語です。1と2とでは、ゲストOS内で1GBしか消費をしていないのにも関わらず、5GB分が即座にデータストアから消費されてしまいますので、容量効率面ではシックは優秀だとは言えません。シン ディスクの利点はこの容量効率性にあります。

  • 書き込みパフォーマンスを求める仮想ディスクには、シックプロビジョニング(Eager Zeroed)
  • ディスク領域確保と迅速なデプロイを求める仮想ディスクには、シックプロビジョニング(Lazy Zeroed)
  • 容量効率と迅速なデプロイを求める仮想ディスクには、シンプロビジョニング

仮想ディスクのプロビジョニング ポリシーについて

仮想ディスクの形式変換:シンからシックへ


次の手順を実施することで可能です。シン仮想ディスクの拡張

拡張をしたい対象の仮想ディスクを、データストア ブラウザから右クリック後”拡張”をクリックする事で変換可能です。この手法ではシック プロビジョニング(Eager Zeroed)形式に変換されます。vmdkのサイズが大きい場合は、それに応じて時間が掛かります。

仮想ディスクのシックまたはシン プロビジョニングの変更 (2014832)

操作そのものはとても簡単ですが、唯一の注意点は”拡張”をクリックした瞬間直ぐに拡張が開始される事です。(割と大事な操作なのに、”本当によろしいですか?”のようなメニューが出ないのでびっくりします)

仮想ディスクの形式変換:シックからシンへ


次の手順を実施することで可能です。仮想ディスクのシックまたはシン プロビジョニングの変更 (2014832)

Storage vMotionを実施する際に、プルダウンメニューから”シン プロビジョニング”を指定する事で変換が可能です。

以下の図では、Storage vMotionを実際に行い、変換完了前の仮想マシンが確認可能です。(仮想マシンのハードウェアの項目内ではシック プロビジョニングの記述が確認出来ます)

vMotinが完了すると、ディスクタイプがシン プロビジョニングに変化したことが確認出来ます。

Storage vMotionでの移行先がNFSかつVAAI非対応のNASの場合は、シン プロビジョニングしか選択が出来ません。
仮想マシンでのシン プロビジョニング ディスクの使用 (1005418)
NAS デバイスでのハードウェア アクセラレーション


今回の検証では、VMFS、NFSどちらが宛先データストアとなった場合もシック形式からシン形式への変換が正常に完了しました。

おまけ:複数のVMDKを持つ仮想マシンのStorage vMotion

このようなケースの場合、Storage vMotion実行時にvmdk単位で移動先及び形式を選択することも可能です。下図内の”詳細”をクリックするとvmdk単位での移行先及び形式指定画面が表示されます。

プルダウンメニューより、データストアとディスク形式を指定すれば、それ以外は通常のStorage vMotionと同じです。

おまけ:1つのデータストアしか無い環境でのシン プロビジョニングへの変換

Storage vMotionを実行するには、最低2つのデータストアが必要ですが、環境制約上1つのデータストアしか存在しない環境では、”仮想マシンのクローン”を実施する際に上記で紹介しているディスク変換用プルダウンメニューがあります。これを利用することで同様の変換が可能となります。

おまけ:ストレージ製品ごとのvmdkの展開タイプの制限について

世の中に存在するストレージ製品の中では、既定値としてシン プロビジョニングにてボリュームを作成するものも存在します。Dell EMCの場合はDell Storage SC(Compellent)はこれに該当します。

情報ソースとしては、”Dell EMC SC Series Best Practices with VMware vSphere 5.x–6.x”のPage 53を参照ください。こちらに画像ベースでのキャプチャも添付しておきます。

上記に従えば、Dell Storage SCの場合は、仮想レイヤーでのThick化命令も、全て物理レイヤーでThinとして取り扱う動きであるため、全vmdkの展開タイプがThih Provisioning相当で取り扱われると言えます。
本項目はストレージによってはThickが使えないものもある、という点を抑えて頂くことを目的とした項目です。ですので、実際の現場においてはご利用頂くストレージ製品のマニュアルやサポートへの問い合わせをされることをおすすめいたします。

まとめ

結論としては、vSphere環境におけるvmdkの展開スタイルは、”シンからシック”、”シックからシン”のいずれも変換可能です。(但し一部の例外を除く)

コメント