仮想ディスク オプションを使用して、データストアに格納されている仮想ディスクの設定、移行、管理を行うことができます。これらのタスクのほとんどは、vSphere Client からも実行できます。
サポートされているディスク フォーマット
仮想ディスクを作成またはクローン作成する場合、-d|--diskformat
サブオプションを使用して、ディスク フォーマットを指定できます。
次のフォーマットから選択します。
zeroedthick
(デフォルト):仮想ディスクに必要な容量は、作成中に割り当てられます。物理デバイスに残っているあらゆるデータは、作成中には消去されませんが、仮想マシンへ初めて書き込みを行うときに必要に応じてゼロアウトされます。仮想マシンがディスクから古いデータを読み取ることはありません。eagerzeroedthick
:仮想ディスクに必要な容量は、作成時に割り当てられます。zeroedthick
フォーマットの場合とは異なり、物理デバイスに残っているデータは、作成時に消去されます。ほかのタイプのディスクに比べて、ディスクの作成に非常に長い時間がかかることがあります。thin
:シン プロビジョニング仮想ディスクです。thick
フォーマットの場合と異なり、仮想ディスクに必要な容量は作成時に割り当てられませんが、必要に応じて割り当てられ、消去されます。rdm:
device:仮想互換モードの Raw ディスク マッピングです。rdmp:
device:物理互換モード(パススルー)の Raw ディスク マッピングです。2gbsparse
:最大エクステント サイズ 2 GB のスパース ディスクです。VMware Fusion などのホスト型 VMware 製品でこのフォーマットのディスクを使用できます。ただし、thick
またはthin
などの互換性フォーマットでvmkfstools
でディスクを最初に再インポートしない場合には、ESXi ホストでスパース ディスクをパワーオンにできません。
NFS データストアでのディスク フォーマット
NFS に使用できるディスク フォーマットは thin
、thick
、zeroedthick
、および 2gbsparse
のみです。
ESXiホストではなく NFS サーバが割り当てポリシーを決定するため、Thick
、zeroedthick
、およびthin
フォーマットは、通常、同様に動作します。ほとんどの NFS サーバのデフォルトの割り当てポリシーはthin
です。ただし、 Storage APIs - Array Integration をサポートする NFS サーバで、仮想ディスクをzeroedthick
フォーマットで作成できます。予約スペース操作により、NFS サーバはスペースを割り当てて保証することが可能となります。
アレイ統合 API の詳細については、vSphere のストレージ ハードウェア アクセラレーションを参照してください。
仮想ディスクの作成
仮想ディスクを作成するには、vmkfstools
コマンドを使用します。
-c|--createvirtualdisk size[bB|sS|kK|mM|gG] -d|--diskformat [thin|zeroedthick|eagerzeroedthick] -W|--objecttype [file|vsan|vvol] --policyFile fileName
このオプションは、データストア上の指定したパスに仮想ディスクを作成します。仮想ディスクのサイズを指定します。サイズ の値を入力する際、末尾に k
(キロバイト)、m
(メガバイト)、またはg
(ギガバイト) を追加すると、単位のタイプを指定できます。単位のタイプに大文字と小文字の区別はありません。vmkfstools
は、k
とK
のいずれも KB として認識します。単位のタイプを指定しない場合、vmkfstools
ではデフォルトでバイトに設定されます。
-c
オプションとともに、次のサブオプションを指定できます。
-d|--diskformat
は、ディスク フォーマットを指定します。-W|--objecttype
は、仮想ディスクが VMFS 上または NFS データストア上のファイルであるか、または vSAN または Virtual Volumes データストア上のオブジェクトであるかを指定します。--policyFile fileName
はディスクの仮想マシン ストレージ ポリシーを指定します。
仮想ディスクを作成する例
この例は、disk.vmdk という名前の 2 GB の仮想ディスク ファイルの作成方法を示しています。myVMFS
という名前の VMFS データストアにディスクを作成します。このディスク ファイルは、仮想マシンがアクセスできる空の仮想ディスクです。
vmkfstools -c 2048m /vmfs/volumes/myVMFS/disk.vmdk
仮想ディスクの初期化
仮想ディスクを初期化するには、vmkfstools
コマンドを使用します。
-w|--writezeros
シン仮想ディスクの拡張
シン仮想ディスクを拡張するには、vmkfstools
コマンドを使用します。
-j|--inflatedisk
このオプションは、すべての既存データを保持したまま、thin
仮想ディスクを eagerzeroedthick
に変換します。このオプションは、まだ割り当てられていないブロックの割り当ておよび消去を行います。
Zeroedthick 仮想ディスクから Eagerzeroedthick ディスクへの変換
任意の zeroedthick 仮想ディスクを eagerzeroedthick ディスクに変換するには、vmkfstools
コマンドを使用します。
-k|--eagerzero
変換の実行中に仮想ディスク上の任意のデータを保持します。
この例に従ってください。
vmkfstools --eagerzero /vmfs/volumes/myVMFS/VMName/disk.vmdk
ゼロクリアされたブロックの削除
vmkfstools
コマンドを使用して、ゼロクリアされたブロックを削除します。
-K|--punchzero
このオプションは、ゼロクリアされたすべてのブロックの割り当てを解除し、割り当て済みで有効なデータを含むブロックだけを残します。処理後の仮想ディスクはシン フォーマットになります。
仮想ディスクの削除
vmkfstools コマンドを使用して、VMFS ボリューム上の指定されたパスで仮想ディスク ファイルを削除します。
次のオプションを使用します。
-U|--deletevirtualdisk
仮想ディスクの名前の変更
vmkfstools コマンドを使用して、VMFS ボリュームの指定されたパスにある仮想ディスク ファイルの名前を変更します。
元のファイル名またはファイル パスである oldName と、新しいファイル名またはファイル パスである newName を指定する必要があります。
-E|--renamevirtualdisk oldNamenewName
仮想ディスクまたは RDM のクローン作成または変換
vmkfstools コマンドを使用して、指定した仮想ディスクまたは Raw ディスクのコピーを作成します。
非 root ユーザーは、仮想ディスクまたは RDM にクローン作成できません。元のファイル名またはファイル パスである oldName と、新しいファイル名またはファイル パスである newName を指定する必要があります。
-i|--clonevirtualdisk oldName newName -d|--diskformat [thin|zeroedthick|eagerzeroedthick|rdm:device|rdmp:device|2gbsparse] -W|--objecttype [file|vsan|vvol] --policyFile fileName -N|--avoidnativeclone
作成したコピーに対応するパラメータを変更するには、次のサブオプションを使用します。
-d|--diskformat
は、ディスク フォーマットを指定します。-W|--objecttype
は、仮想ディスクが VMFS 上または NFS データストア上のファイルであるか、または vSAN または Virtual Volumes データストア上のオブジェクトであるかを指定します。--policyFile fileName
はディスクの仮想マシン ストレージ ポリシーを指定します。
デフォルトでは、ESXiはネイティブの方法を使用してクローン作成操作を実行します。使用しているアレイでクローン作成テクノロジーがサポートされている場合は、操作をアレイにオフロードできます。ESXiネイティブ クローン作成を回避するには、-N|--avoidnativeclone
オプションを指定します。
仮想ディスクのクローン作成または変換例
この例では、templates
リポジトリから、ファイル システム myVMFS にある myVMFS
という名前の仮想ディスク ファイルに、マスタ仮想ディスクの内容のクローンを作成します。
vmkfstools -i /vmfs/volumes/myVMFS/templates/gold-master.vmdk /vmfs/volumes/myVMFS/myOS.vmdk
次の例のように、仮想マシンの構成ファイルに数行追加すると、この仮想ディスクを使用するように仮想マシンを構成できます。
scsi0:0.present = TRUE scsi0:0.fileName = /vmfs/volumes/myVMFS/myOS.vmdk
ディスクのフォーマットを変更する場合は、-d|--diskformat
サブオプションを使用します。
このサブオプションは、ESXiと互換性のないフォーマット(2gbsparse フォーマットなど)で仮想ディスクをインポートする際に役立ちます。ディスクの変換後、ESXiに作成した新しい仮想マシンにこのディスクを接続できます。
vmkfstools -i /vmfs/volumes/myVMFS/templates/gold-master.vmdk /vmfs/volumes/myVMFS/myOS.vmdk -d thin
仮想ディスクの拡張
仮想マシン作成後、vmkfstools コマンドを使用して、仮想マシンに割り当てられたディスクのサイズを拡張できます。
-X|--extendvirtualdisk newSize[bBsSkKmMgGtT]
newSize
パラメータを指定し、末尾に適切な単位を追加します。単位のタイプに大文字と小文字の区別はありません。vmkfstools
は、k
と K
のいずれも KB として認識します。単位のタイプを指定しない場合、vmkfstools
ではデフォルトで KB に設定されます。
newSize
パラメータは、ディスクに追加するサイズではなく、新しいサイズ全体を定義します。
たとえば、4 g の仮想ディスクを 1 g 分拡張するには、次のように入力します。vmkfstools -X 5gdisk name。
-d eagerzeroedthick オプションを使用することによって、仮想ディスクを eagerzeroedthick フォーマットに拡張できます。
-X
オプションを使用する場合は、次の考慮事項が適用されます。
- スナップショットが関連付けられている仮想マシンの基本ディスクを拡張しないでください。拡張すると、スナップショットのコミットや、ベース ディスクの元のサイズへの復元ができなくなります。
- ディスクの拡張後、ディスクのファイル システムの更新が必要な場合があります。その結果、ゲスト OS はディスクの新しいサイズを認識し、使用できるようになります。
仮想ディスクのアップグレード
このオプションは、指定した仮想ディスク ファイルを ESX Server 2 フォーマットから ESXi フォーマットに変換します。
タイプが LEGACYSPARSE、LEGACYPLAIN、LEGACYVMFS、LEGACYVMFS_SPARSE、LEGACYVMFS_RDM の仮想ディスクを変換するにはこのオプションを使用します。
-M|--migratevirtualdisk
仮想互換モードの Raw デバイス マッピングの作成
vmkfstools コマンドを使用して、VMFS ボリューム上で Raw デバイス マッピング (RDM) ファイルを作成し、Raw LUN をこのファイルにマッピングします。このマッピングが完了すると、通常の VMFS 仮想ディスクにアクセスする場合と同じように LUN にアクセスできます。マッピングするファイルの長さは、参照する Raw LUN のサイズと同じです。
-r|--createrdm device
device パラメータを指定する場合は、次の形式を使用してください。
/vmfs/devices/disks/disk_ID:P
仮想互換モードの RDM を作成する例
この例では、my_rdm.vmdk という名前の RDM ファイルを作成し、そのファイルに disk_ID Raw ディスクをマッピングします。
vmkfstools -r /vmfs/devices/disks/disk_ID my_rdm.vmdk
仮想マシンの構成ファイルに次の行を追加すると、my_rdm.vmdk
マッピング ファイルを使用するように仮想マシンを構成できます。
scsi0:0.present = TRUE scsi0:0.fileName = /vmfs/volumes/myVMFS/my_rdm.vmdk
物理互換モードの Raw デバイス マッピングの作成
vmkfstools コマンドを使用して、パススルー Raw デバイスを VMFS ボリューム上のファイルにマッピングします。このマッピングによって、仮想マシンが仮想ディスクにアクセスするときに、ESXi SCSI コマンド フィルタリングをバイパスできます。このタイプのマッピングは、仮想マシンが企業独自の SCSI コマンドを送信する必要がある場合に役に立ちます。たとえば、SAN 対応のソフトウェアを仮想マシンで実行する場合などです。
-z|--createrdmpassthru deviceexample.vmdk
このタイプのマッピングが完了すると、それを使用して、他の VMFS 仮想ディスクにアクセスする場合と同じように Raw ディスクにアクセスできます。
device パスを指定する場合は、次の形式を使用してください。
/vmfs/devices/disks/device_ID
.vmdk 名に、この形式を使用します。コマンドを使用する前にデータストアを作成することを確認してください。
/vmfs/volumes/datastore_name/example.vmdk
vmkfstools -z /vmfs/devices/disks/naa.600a0000000000000... /vmfs/volumes/datastore1/mydisk.vmdk
RDM の属性の一覧表示
vmkfstools コマンドを使用して、Raw ディスク マッピングの属性を一覧表示します。これらの属性は、RDM ファイルがマップするストレージ デバイスを識別するのに役立ちます。
-q|--queryrdm my_rdm.vmdk
このオプションは、Raw ディスク RDM の名前を出力します。このオプションは、その Raw ディスクに関するほかの識別名情報 (ディスク ID など) も出力します。
RDM 属性の一覧表示の例
# vmkfstools -q /vmfs/volumes/VMFS/my_vm/my_rdm.vmdk Disk /vmfs/volumes/VMFS/my_vm/my_rdm.vmdk is a Passthrough Raw Device Mapping Maps to: vml.020000000060050768019002077000000000000005323134352020
仮想ディスク構造の表示
vmkfstools コマンドを使用して、仮想ディスクの構造に関する情報を取得します。
-g|--geometry
出力形式は、Geometry information C/H/S
です。 ここで C
はシリンダ数、H
はヘッド数、S
はセクタ数を表します。
仮想ディスクの確認と修復
vmkfstools コマンドを使用して仮想ディスクをチェックし、仮想ディスクが破損している場合は修復します。
-x|--fix [check|repair]
次に例を示します。
vmkfstools -x check /vmfs/volumes/my_datastore/my_disk.vmdk
整合性のためのディスク チェーンのチェック
vmkfstools コマンドを使用して、スナップショット チェーン全体を確認します。チェーン内のリンクが壊れているかどうか、または無効な親子関係が存在するかどうかを判断できます。
-e|--chainConsistent