Red Hat Training

A Red Hat training course is available for RHEL 8

8.3. コマンドラインインターフェイスで仮想マシンのクローン作成

特定のプロパティーセット (例: テスト目的) で新しい仮想マシンをすばやく作成するために、既存の仮想マシンのクローンを作成します。CLI を使用してこれを行うには、以下の手順を行います。

前提条件

  • 移行元の仮想マシンがシャットダウンしている。
  • クローンとして作成したディスクイメージを保存するのに十分なディスク領域があることを確認します。
  • (必要に応じて) 仮想マシンのクローンを複数作成する場合は、ソースの仮想マシンから一意のデータと設定を削除して、クローンとして作成した仮想マシンが正しく機能することを確認することを推奨します。手順は、仮想マシンテンプレートの作成 を参照してください。

手順

  1. 環境とユースケースに適したオプションを指定して virt-clone ユーティリティーを使用します。

    サンプルのユースケース

    • 次のコマンドは、doppelganger という名前のローカルの仮想マシンのクローンを作成し、doppelganger-clone 仮想マシンを作成します。また、クローン元の仮想マシンのディスクイメージと同じ場所に、同じデータで doppelganger-clone.qcow2 ディスクイメージを作成します。

      # virt-clone --original doppelganger --auto-clone
      Allocating 'doppelganger-clone.qcow2'                            | 50.0 GB  00:05:37
      
      Clone 'doppelganger-clone' created successfully.
    • 次のコマンドは、 geminus1 という名前で仮想マシンのクローンを作成し、geminus2 という名前でローカル仮想マシンを作成します。この仮想マシンは、geminus1 の複数ディスクのうち 2 つだけを使用します。

      # virt-clone --original geminus1 --name geminus2 --file /var/lib/libvirt/images/disk1.qcow2 --file /var/lib/libvirt/images/disk2.qcow2
      Allocating 'disk1-clone.qcow2'                                      | 78.0 GB  00:05:37
      Allocating 'disk2-clone.qcow2'                                      | 80.0 GB  00:05:37
      
      Clone 'geminus2' created successfully.
    • 仮想マシンを別のホストにクローンするには、ローカルホストで定義を解除せずに仮想マシンを移行します。たとえば、次のコマンドは、以前に作成した仮想マシン geminus2 を 10.0.0.1 リモートシステムにローカルディスクを含めてクローンします。これらのコマンドを使用するには、10.0.0.1 への root 権限も必要になることに注意してください。

      # virsh migrate --offline --persistent geminus2 qemu+ssh://root@10.0.0.1/system
      root@10.0.0.1's password:
      
      # scp /var/lib/libvirt/images/disk1-clone.qcow2 root@10.0.0.1/user@remote_host.com://var/lib/libvirt/images/
      
      # scp /var/lib/libvirt/images/disk2-clone.qcow2 root@10.0.0.1/user@remote_host.com://var/lib/libvirt/images/

検証

仮想マシンのクローンが正常に作成され、正しく機能していることを確認するには、以下を行います。

  1. クローンが、ホストの仮想マシンの一覧に追加されていることを確認します。

    # virsh list --all
    Id   Name                  State
    ---------------------------------------
    -    doppelganger          shut off
    -    doppelganger-clone    shut off
  2. クローンを起動し、起動しているかどうかを確認します。

    # virsh start doppelganger-clone
    Domain 'doppelganger-clone' started

関連情報