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
    ゲストのインストールプロセスを開始する際、初期 ramdisk およびカーネルを読み込むのに PXE ブートプロトコルを使います
  • --import
    OS のインストールプロセスをスキップし、既存のディスクイメージを利用してゲストを構築します。ブートに使用するデバイスは、disk または filesystem オプションで最初に指定するデバイスです
  • --boot
    インストール後の VM ブート設定を指定します。このオプションでは、ブートデバイスの順序を指定し、オプションのカーネル引数を使ってカーネルおよび initrd を永続的にブートオフし、BIOS ブートメニューを有効にすることが可能です
オプションの全リストを表示するには、以下のコマンドを入力します。
# virt-install --help
オプションの属性の全リストを表示するには、以下のコマンドを入力します。
# virt install --option=?
virt-install の man ページも、各コマンドのオプション、重要な変数および例について記載しています。
virt-install を実行する前に、qemu-img を使ってストレージのオプションも設定しなければならない場合があります。qemu-img を使用する方法については、「15章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 の Network Address Translation (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