15.5. CLI を使用した仮想マシンのストレージボリュームの管理
CLI を使用して、ストレージプボリュームの次の側面を管理し、仮想マシン (VM) にストレージを割り当てることができます。
15.5.1. CLI を使用したストレージボリューム情報の表示 リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインを使用して、ホストで利用可能なすべてのストレージプールのリストと、指定したストレージプールの詳細を表示できます。
手順
virsh vol-listコマンドを使用して、指定したストレージプールにあるストレージボリュームをリスト表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow virsh vol-infoコマンドを使用して、指定したストレージプール内のストレージボリュームをリスト表示します。virsh vol-info --pool RHEL-Storage-Pool --vol RHEL_Volume.qcow2 Name: RHEL_Volume.qcow2 Type: file Capacity: 60.00 GiB Allocation: 13.93 GiB
# virsh vol-info --pool RHEL-Storage-Pool --vol RHEL_Volume.qcow2 Name: RHEL_Volume.qcow2 Type: file Capacity: 60.00 GiB Allocation: 13.93 GiBCopy to Clipboard Copied! Toggle word wrap Toggle overflow
15.5.2. CLI を使用したストレージボリュームの作成と割り当て リンクのコピーリンクがクリップボードにコピーされました!
ディスクイメージを取得して、仮想ディスクとして仮想マシンに割り当てるには、ストレージボリュームを作成し、その XML 設定を仮想マシンに割り当てます。
前提条件
空き領域が割り当てられていないストレージプールがホストに存在する。
ホストのストレージプールをリスト表示して確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 既存のストレージプールがない場合は、作成します。詳細は、仮想マシンのストレージの管理 を参照してください。
手順
virsh vol-create-asコマンドを使用してストレージボリュームを作成します。たとえば、guest-images-fsストレージプールをもとに 20 GB qcow2 ボリュームを作成するには以下を実行します。virsh vol-create-as --pool guest-images-fs --name vm-disk1 --capacity 20 --format qcow2
# virsh vol-create-as --pool guest-images-fs --name vm-disk1 --capacity 20 --format qcow2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要: ストレージプールタイプによっては、
virsh vol-create-asコマンドがサポートされないため、代わりにストレージボリューム作成の特定のプロセスが必要になります。- iSCSI ベース - iSCSI サーバーに事前に iSCSI LUN を準備します。
-
マルチパスベース -
multipathdコマンドを使用して、マルチパスを準備または管理します。 - vHBA ベース - ファイバーチャンネルカードを事前に準備します。
XML ファイルを作成し、そのファイルに以下の行を追加します。このファイルは、ストレージボリュームをディスクとして仮想マシンに追加するために使用します。
<disk type='volume' device='disk'> <driver name='qemu' type='qcow2'/> <source pool='guest-images-fs' volume='vm-disk1'/> <target dev='hdk' bus='ide'/> </disk><disk type='volume' device='disk'> <driver name='qemu' type='qcow2'/> <source pool='guest-images-fs' volume='vm-disk1'/> <target dev='hdk' bus='ide'/> </disk>Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、前の手順で作成した
vm-disk1ボリュームを使用する仮想ディスクを指定し、このボリュームをideバスにhdkディスクとして指定するように設定します。実際の環境に応じてそれぞれのパラメーターを変更します。重要: 特定のストレージプールタイプでは、別の XML 形式を使用してストレージボリュームディスクを記述する必要があります。
マルチパスベース のプールの場合:
<disk type='block' device='disk'> <driver name='qemu' type='raw'/> <source dev='/dev/mapper/mpatha' /> <target dev='sda' bus='scsi'/> </disk>
<disk type='block' device='disk'> <driver name='qemu' type='raw'/> <source dev='/dev/mapper/mpatha' /> <target dev='sda' bus='scsi'/> </disk>Copy to Clipboard Copied! Toggle word wrap Toggle overflow RBD ベースのストレージ プールの場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
XML ファイルを使用して、ストレージボリュームをディスクとして仮想マシンに割り当てます。たとえば、
~/vm-disk1.xmlで定義されたディスクをtestguest1仮想マシンに割り当てるには、次のコマンドを使用します。virsh attach-device --config testguest1 ~/vm-disk1.xml
# virsh attach-device --config testguest1 ~/vm-disk1.xmlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
- 仮想マシンのゲストオペレーティングシステムで、ディスクイメージが未フォーマットかつ未割り当てのディスクとして利用できるようになっていることを確認します。
15.5.3. CLI を使用したストレージボリュームの削除 リンクのコピーリンクがクリップボードにコピーされました!
ホストシステムからストレージボリュームを削除するには、プールを停止して、その XML 定義を削除する必要があります。
前提条件
- 削除するストレージボリュームを使用する仮想マシンがすべてシャットダウンしている。
手順
virsh vol-listコマンドを使用して、指定したストレージプールにあるストレージボリュームをリスト表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション:
virsh vol-wipeコマンドを使用してストレージボリュームをワイプします。たとえば、ストレージプールRHEL-SPに関連付けられているvm-disk1という名前のストレージボリュームを削除する場合は、次のコマンドを実行します。virsh vol-wipe --pool RHEL-SP vm-disk1 Vol vm-disk1 wiped
# virsh vol-wipe --pool RHEL-SP vm-disk1 Vol vm-disk1 wipedCopy to Clipboard Copied! Toggle word wrap Toggle overflow virsh vol-deleteコマンドを使用して、ストレージボリュームを削除します。たとえば、ストレージプールRHEL-SPに関連付けられているvm-disk1という名前のストレージボリュームを削除する場合は、次のコマンドを実行します。virsh vol-delete --pool RHEL-SP vm-disk1 Vol vm-disk1 deleted
# virsh vol-delete --pool RHEL-SP vm-disk1 Vol vm-disk1 deletedCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
virsh vol-listを再度実行して、ストレージボリュームが削除されたことを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow