- ESXi 7.0.3
ついうっかり仮想ディスクをシックプロビジョニングで作成してしまい、のちに気が付いてシンプロビジョニングに変換したくなることがままある。
データストアが2つ以上ある場合はStorage vMotionの際にディスクフォーマットを選択できるから、苦労なくシンへと変換できる。
一方、データストアが唯一つしかない場合はそう気軽にいかない。vmkfstools
コマンドによってシンプロビジョニングでクローンを作成し、仮想マシンを再登録し直す手間を要する。
クローンを作成するから、前もってデータストアの空き容量に十分なゆとりのあることを確認しておかねばならない。また、万が一に備えて仮想マシンのバックアップを用意しておくと無難である。これらの支度ができたら仮想マシンをシャットダウンする。そしてESXiのSSHを有効にし、SSH接続する。
ますは仮想マシンのVMDKファイルがあるディレクトリへ移動する。特別なことをしていなければ概ね/vmfs/volumes/データストア名/仮想マシン名
にあるはずである。
# cd /vmfs/volumes/esxi2ds/osk2a-3f-lb06/ # ls -lh *.vmdk -rw------- 1 root root 32.0G Oct 8 15:55 osk2a-3f-lb06-flat.vmdk -rw------- 1 root root 507 Oct 8 15:52 osk2a-3f-lb06.vmdk
そうしたらvmkfstoolsコマンドでディスクフォーマットがシンの仮想ディスククローンを作成する。ディスクフォーマットは-d
オプションで指定する。
# vmkfstools -i osk2a-3f-lb06.vmdk osk2a-3f-lb06-thin.vmdk -d thin Destination disk format: VMFS thin-provisioned Cloning disk 'osk2a-3f-lb06.vmdk'... Clone: 100% done.
ファイルを改めて確認してみると新たに2ファイル作成されていた。これらがシンプロビジョニングのVMDKファイルである。
# ls -lh *.vmdk -rw------- 1 root root 32.0G Oct 8 15:55 osk2a-3f-lb06-flat.vmdk -rw------- 1 root root 32.0G Oct 8 16:03 osk2a-3f-lb06-thin-flat.vmdk -rw------- 1 root root 561 Oct 8 16:03 osk2a-3f-lb06-thin.vmdk -rw------- 1 root root 507 Oct 8 15:52 osk2a-3f-lb06.vmdk
既存のVMDKファイルは適当にリネームし、シンプロビジョニングのVMDKファイルには既存のVMDKファイル名を付ける。
# mv osk2a-3f-lb06.vmdk osk2a-3f-lb06.vmdk_ # mv osk2a-3f-lb06-thin.vmdk osk2a-3f-lb06.vmdk
そうしたら、一旦仮想マシンの登録を解除する。
改めて仮想マシンを登録する。
これで無事にシンへと変更できた。仮想マシンが正常に起動し、動作に問題が無いようであれば不要なファイルを削除してすべて完了である。
# vmkfstools -U osk2a-3f-lb06.vmdk_