3.2. virt-install を使用したゲストの作成

virt-install コマンドを使用して仮想マシンを作成し、コマンドラインからこれらの仮想マシン上でオペレーティングシステムをインストールできます。virt-install を対話的またはスクリプトの一部として使用すると、仮想マシンの作成を自動化できます。対話的なグラフィカルインストールを使用する場合は、virt-install を実行する前に virt-viewer をインストールする必要があります。さらに、virt-install をキックスタートファイルと使用すると、仮想マシンのオペレーティングシステムの無人インストールを開始できます。

注記

一部の virt-install コマンドが正常に完了するには、root 権限が必要になることがあります。
virt-install ユーティリティーは複数のコマンドラインオプションを使用しますが、ほとんどの virt-install オプションは必要ありません。
ゲスト仮想マシンのインストールに必要となる主なオプションは、以下のとおりです。
--name
仮想マシンの名前。
--memory
ゲストに割り当てられたメモリー (RAM) の容量 (MiB 単位)。
ゲストストレージ
以下のゲストストレージオプションのいずれかを使用します。
  • --disk
    仮想マシンのストレージ設定の詳細を指定します。--disk none オプションを使うと、ディスク領域を確保せずに仮想マシンが作成されます。
  • --filesystem
    ゲスト仮想マシンのファイルシステムへのパスを指定します。
インストール方法
以下のインストール方法のいずれかを使用します。
  • --location
    インストールメディアの場所を指定します。
  • --cdrom
    仮想 CD-ROM デバイスとして使われるファイルまたはデバイスを指定します。ISO イメージへのパスまたは CD-ROM デバイスへのパスのどちらかを指定することができます。最小限のブート ISO イメージを取得またはアクセスする URL を指定することもできます。
  • --pxe
    ゲストのインストールプロセスを開始するために、PXE ブートプロトコルを使用して初期 ramdisk およびカーネルをロードします。
  • --import
    OS のインストールプロセスをスキップし、既存のディスクイメージを利用してゲストを構築します。ブートに使用するデバイスは、disk または filesystem オプションで最初に指定するデバイスです。
  • --boot
    インストール後の VM ブート設定を指定します。このオプションでは、ブートデバイスの順序を指定し、オプションのカーネル引数を使ってカーネルおよび initrd を永続的にブートオフし、BIOS ブートメニューを有効にすることが可能です。
オプションの全リストを表示するには、以下のコマンドを入力します。
# virt-install --help
オプションの属性の全リストを表示するには、以下のコマンドを入力します。
# virt install --option=?
virt-installの man ページにも、各コマンドのオプション、重要な変数、および例が記載されています。
virt-install の実行前に、qemu-img を使用してストレージオプションを設定する必要があることもあります。qemu-img の使用に関する手順は、14章qemu-img の使用 を参照してください。

3.2.1. ISO イメージから仮想マシンをインストール

以下の例では、ISO イメージから仮想マシンがインストールされます。
# virt-install \ 
  --name guest1-rhel7 \ 
  --memory 2048 \ 
  --vcpus 2 \ 
  --disk size=8 \ 
  --cdrom /path/to/rhel7.iso \ 
  --os-variant rhel7 
--cdrom /path/to/rhel7.iso オプションを指定すると、特定の場所にある CD または DVD イメージから仮想マシンがインストールされます。

3.2.2. 仮想マシンイメージのインポート

以下の例では、仮想ディスクイメージから仮想マシンがインポートされます。
# virt-install \ 
  --name guest1-rhel7 \ 
  --memory 2048 \ 
  --vcpus 2 \ 
  --disk /path/to/imported/disk.qcow \ 
  --import \ 
  --os-variant rhel7 
--import オプションを指定すると、--disk /path/to/imported/disk.qcow オプションによって指定された仮想ディスクイメージから仮想マシンがインポートされます。

3.2.3. ネットワークから仮想マシンをインストール

以下の例では、ネットワークロケーションから仮想マシンがインストールされます。
# virt-install \ 
  --name guest1-rhel7 \ 
  --memory 2048 \ 
  --vcpus 2 \ 
  --disk size=8 \ 
  --location http://example.com/path/to/os \ 
  --os-variant rhel7 
--location http://example.com/path/to/os オプションは指定のネットワークの場所にあるインストールツリーを指定します。

3.2.4. PXE を使用した仮想マシンのインストール

PXE ブートプロトコルを使って仮想マシンをインストールする場合は、ブリッジネットワークを指定する --network オプションおよび --pxe オプションの両方を指定する必要があります。
以下の例では、PXE を使って仮想マシンがインストールされます。
# virt-install \ 
  --name guest1-rhel7 \ 
  --memory 2048 \ 
  --vcpus 2 \ 
  --disk size=8 \ 
  --network=bridge:br0 \ 
  --pxe \ 
  --os-variant rhel7 

3.2.5. キックスタートを使った仮想マシンのインストール

以下の例では、キックスタートファイルを使って仮想マシンがインストールされます。
# virt-install \ 
  --name guest1-rhel7 \ 
  --memory 2048 \ 
  --vcpus 2 \ 
  --disk size=8 \ 
  --location http://example.com/path/to/os \ 
  --os-variant rhel7 \
  --initrd-inject /path/to/ks.cfg \ 
  --extra-args="ks=file:/ks.cfg console=tty0 console=ttyS0,115200n8" 
initrd-inject および extra-args オプションを指定すると、仮想マシンはキックスタートファイルを使用してインストールされます。

3.2.6. ゲストの作成中にゲスト仮想マシンのネットワークを設定

ゲスト仮想マシンを作成する場合、仮想マシン用のネットワークを指定して設定することができます。このセクションでは、ゲスト仮想マシン用の主なネットワークタイプの各オプションについて説明します。

NAT を用いるデフォルトのネットワーク

デフォルトのネットワークは libvirtd のネットワークアドレス変換 (NAT) の仮想ネットワークスイッチを使用します。NAT の詳細については、「libvirt を使用した Network Address Translation (NAT)」 を参照してください。
NAT を用いるデフォルトのネットワークでゲスト仮想マシンを作成する前に、libvirt-daemon-config-network パッケージがインストールされていることを確認してください。
ゲスト仮想マシン用に NAT ネットワークを設定するには、virt-install の以下のオプションを使います。
--network default

注記

network オプションを指定しないと、ゲスト仮想マシンは NAT を用いるデフォルトのネットワークで設定されます。

DHCP を用いるブリッジネットワーク

ブリッジネットワーク用に設定された場合、ゲストは外部の DHCP サーバーを使用します。ホストが静的なネットワーキング設定で、ゲストがローカルエリアネットワーク (LAN) との完全な受送信接続を必要とする場合は、このオプションを使う必要があります。ゲスト仮想マシンを使ってライブマイグレーションを実施する場合は、このオプションを使う必要があります。ゲスト仮想マシン用に DHCP を用いるブリッジネットワークを設定するには、以下のオプションを使います。
--network br0

注記

virt-install を実行する前に、別途ブリッジを作成しておく必要があります。ネットワークブリッジ作成の詳細については、「Red Hat Enterprise Linux 7 ホストでのブリッジネットワークの設定」を参照してください。

静的な IP アドレスを用いるブリッジネットワーク

ブリッジネットワークを使って、ゲストが静的 IP アドレスを使うように設定することもできます。ゲスト仮想マシン用に静的な IP アドレスを用いるブリッジネットワークを設定するには、以下のオプションを使います。
--network br0 \
--extra-args "ip=192.168.1.2::192.168.1.1:255.255.255.0:test.example.com:eth0:none"
ネットワークブートオプションの詳細については、『Red Hat Enterprise Linux 7 インストールガイド』を参照してください。

ネットワーク設定なし

ゲスト仮想マシンにネットワークインターフェースを設定しない場合は、以下のオプションを使います。
--network=none