yassy's note

なんかかきます

EagerZeroedThickのVMDK仮想ディスクを拡張するとLazyZeroedThickに変換される

※過去にまとめたwikiからの移行記事

EagerZeroedThickでフォーマットしたVMDK形式の仮想ディスクについて、vSphereClient(WebClientも含む)で拡張するとLazyZeroedThickになってしまう。

実際にやってみた

仮想マシンにEagerZeroedThickでフォーマット8GBの仮想ディスク(ハードディスク1)を接続。

f:id:yassy_225:20210613120428j:plain

このディスクを10GBに拡張すると、LazyZeroedThick形式のディスクになってしまう。

f:id:yassy_225:20210613120432j:plain

これって仕様なの?

下記KBにもあるが、製品のバグではなく仕様通りの動作とのこと。
KB2054563
当初のEagerZeroedThick形式にしたい場合はvmkfstoolsでLazyZeroedThickから変換してあげる必要がある。

ただ、この挙動で困ったことが発生する場合がある。

困ることって?

普通の環境では無いと思うが、仮想ディスクがぶら下がっているSCSIバスの共有設定が「物理」である場合。

f:id:yassy_225:20210613120435j:plain

SCSIバスの共有設定が「物理」である場合、仮想ディスクの形式はEagerZeroedThickにしなければならないという制約がある。
そのため、このまま仮想マシンをパワーオンしようとすると、「VMware ESXはクラスタリング目的で仮想ディスクを開くことができません。」という下記のエラーが表示され、起動できない。

f:id:yassy_225:20210613120440j:plain

ちなみに、仮想マシンが起動状態の場合は「ディスクの拡張操作に失敗しました: msg.disklib.UNSUPPORTEDFEATURE」という下記のエラーが表示され拡張できない。

f:id:yassy_225:20210613120443j:plain

従って、LazyZeroedThick形式の仮想ディスクのパワーオン・拡張を行う場合は、SCSIバスの共有設定を変えてあげるか、vmkfstoolsを使ってディスク形式をEagerZeroedThickに変換する必要がある。