検索

第3章 仮想マシンの作成

download PDF

RHEL 9 で仮想マシンを作成する場合は、コマンドラインインターフェイス または RHEL 9 Web コンソール を使用します。

3.1. コマンドラインインターフェイスを使用した仮想マシンの作成

virt-install ユーティリティーを使用して、RHEL 9 ホストで仮想マシンを作成するには、以下の手順に従ってください。

前提条件

  • ホストシステムで仮想化が 有効 になっている。
  • ディスク領域、RAM、CPU など、仮想マシンに割り当てるのに十分なシステムリソースがある。推奨される値は、仮想マシンで行うタスクやワークロードにより大きく異なる可能性があります。
  • オペレーティングシステム (OS) のインストールソースがローカルまたはネットワークで利用できる。これには、次のいずれかを使用できます。

    • インストールメディアの ISO イメージ
    • 既存の仮想マシンインストールのディスクイメージ

      警告

      RHEL 9 では、ホストの CD-ROM デバイスまたは DVD-ROM デバイスからインストールすることができません。RHEL 9 で利用可能な仮想マシンのインストール方法を使用する際に、インストールソースに CD-ROM または DVD-ROM を選択するとインストールに失敗します。詳細は Red Hat ナレッジベース を参照してください。

      また、Red Hat は、限られたゲストオペレーティングシステムのセット のみをサポートしていることにも注意してください。

  • 任意: インストールをより速く、簡単に設定するために、キックスタートファイルを利用できます。

手順

仮想マシンを作成して OS のインストールを開始するには、以下の必須引数を指定して、virt-install コマンドを使用します。

  • --name: 新しいマシンの名前
  • --memory: 割り当てるメモリーの量
  • --vcpus: 割り当てる仮想 CPU の数
  • --disk: 割り当てるストレージのタイプとサイズ
  • --cdrom または --location: OS インストールソースのタイプと場所

選択したインストール方法に応じて、必要なオプションと値が異なります。例については、以下のコマンドを参照してください。

  • 次のコマンドでは、demo-guest1 という名前の仮想マシンを作成し、ローカルの /home/username/Downloads/Win10install.iso ファイルに保存されている ISO イメージから、Windows 10 OS をインストールします。この仮想マシンには、2048 MiB の RAM と 2 つの vCPU が割り当てられ、80 GiB の qcow2 仮想ディスクも自動的に割り当てられます。

    # virt-install \
        --name demo-guest1 --memory 2048 \
        --vcpus 2 --disk size=80 --os-variant win10 \
        --cdrom /home/username/Downloads/Win10install.iso
  • 次のコマンドは、demo-guest2 という名前の仮想マシンを作成し、/home/username/Downloads/rhel9.iso イメージを使用して、ライブ CD から RHEL 9 OS を実行します。この仮想マシンにはディスク領域が割り当てられないため、セッション中に行った変更は保持されません。また、仮想マシンには、4096 MiB の RAM と、4 つの vCPU が割り当てられます。

    # virt-install \
        --name demo-guest2 --memory 4096 --vcpus 4 \
        --disk none --livecd --os-variant rhel9.0 \
        --cdrom /home/username/Downloads/rhel9.iso
  • 次のコマンドは、demo-guest3 という名前の RHEL 9 仮想マシンを作成し、既存のディスクイメージ /home/username/backup/disk.qcow2 に接続します。これは、マシン間でハードドライブを物理的に移動するのと似ています。したがって、demo-guest3 で使用できる OS およびデータは、イメージが処理された方法により決定します。また、仮想マシンには、2048 MiB の RAM および 2 つの vCPU が割り当てられます。

    # virt-install \
        --name demo-guest3 --memory 2048 --vcpus 2 \
        --os-variant rhel9.0 --import \
        --disk /home/username/backup/disk.qcow2

    ディスクイメージをインポートする場合は、--os-variant オプションを使用することが強く推奨されます。このオプションを指定しないと、作成された仮想マシンのパフォーマンスに影響を及ぼします。

  • 次のコマンドは、demo-guest4 という名前の仮想マシンを作成し、URL http://example.com/OS-install からインストールします。インストールを開始するには、作業中の OS インストールツリーを URL に指定する必要があります。さらに、OS は、キックスタートファイル /home/username/ks.cfg で自動的に設定されます。この仮想マシンには、2048 MiB の RAM、2 つの vCPU、および 160 GiB の qcow2 仮想ディスクも割り当てられます。

    # virt-install \
        --name demo-guest4 --memory 2048 --vcpus 2 --disk size=160 \
        --os-variant rhel9.0 --location http://example.com/OS-install \
        --initrd-inject /home/username/ks.cfg --extra-args="inst.ks=file:/ks.cfg console=tty0 console=ttyS0,115200n8"

    さらに、ARM 64 ホスト上の RHEL 9 で demo-guest4 をホストする場合は、キックスタートファイルによって kernel-64k パッケージが確実にインストールされるように、次の行を追加します。

    %packages
    -kernel
    kernel-64k
    %end
  • 次のコマンドは、demo-guest5 という名前の仮想マシンを作成し、グラフィックスがない、テキストのみのモードである RHEL9.iso イメージファイルからインストールします。ゲストコンソールをシリアルコンソールに接続します。仮想マシンには、16384 MiB のメモリー、16 個の vCPU、および 280 GiB のディスクが割り当てられます。このようなインストールは、低速なネットワークリンクを介してホストに接続する際に便利です。

    # virt-install \
        --name demo-guest5 --memory 16384 --vcpus 16 --disk size=280 \
        --os-variant rhel9.0 --location RHEL9.iso \
        --graphics none --extra-args='console=ttyS0'
  • 次のコマンドは、demo-guest6 という名前の仮想マシンを作成します。この仮想マシンの設定は demo-guest5 と同じですが、リモートホスト 192.0.2.1 に置かれます。

    # virt-install \
        --connect qemu+ssh://root@192.0.2.1/system --name demo-guest6 --memory 16384 \
        --vcpus 16 --disk size=280 --os-variant rhel9.0 --location RHEL9.iso \
        --graphics none --extra-args='console=ttyS0'
  • 次のコマンドは、demo-guest-7 という名前の仮想マシンを作成します。この仮想マシンの設定は demo-guest5 と同じですが、ストレージとして DASD 仲介デバイス mdev_30820a6f_b1a5_4503_91ca_0c10ba12345a_0_0_29a8 を使用し、デバイス番号 1111 を割り当てます。

    # virt-install \
        --name demo-guest7 --memory 16384 --vcpus 16 --disk size=280 \
        --os-variant rhel9.0 --location RHEL9.iso --graphics none \
        --disk none --hostdev mdev_30820a6f_b1a5_4503_91ca_0c10ba12345a_0_0_29a8,address.type=ccw,address.cssid=0xfe,address.ssid=0x0,address.devno=0x1111,boot-order=1 \
        --extra-args 'rd.dasd=0.0.1111'

    インストールに利用可能な仲介デバイスの名前は、virsh nodedev-list --cap mdev コマンドを使用して取得できることに注意してください。

検証

  • 仮想マシンが問題なく作成されると、仮想マシンのグラフィカルコンソールで virt-viewer 画面が開き、ゲスト OS のインストールが開始します。

トラブルシューティング

  • virt-installcannot find default network エラーを出力する場合は、以下のようにします。

    • libvirt-daemon-config-network パッケージがインストールされていることを確認します。

      # {PackageManagerCommand} info libvirt-daemon-config-network
      Installed Packages
      Name         : libvirt-daemon-config-network
      [...]
    • libvirt のデフォルトネットワークがアクティブで、自動的に起動するように設定されていることを確認します。

      # virsh net-list --all
       Name      State    Autostart   Persistent
      --------------------------------------------
       default   active   yes         yes
    • そうでない場合は、デフォルトのネットワークをアクティブにし、自動起動に設定します。

      # virsh net-autostart default
      Network default marked as autostarted
      
      # virsh net-start default
      Network default started
      • デフォルトのネットワークをアクティベートしても以下のエラーが出て失敗する場合は、libvirt-daemon-config-network パッケージが正常にインストールされていません。

        error: failed to get network 'default'
        error: Network not found: no network with matching name 'default'

        この問題を修正するには、以下のコマンドで libvirt-daemon-config-network を再インストールします。

        # {PackageManagerCommand} reinstall libvirt-daemon-config-network
      • 以下のようなエラーでデフォルトのネットワークをアクティベートできない場合には、デフォルトネットワークのサブネットとホストの既存インターフェイスで競合が発生しています。

        error: Failed to start network default
        error: internal error: Network is already in use by interface ens2

        これを修正するには、virsh net-edit default コマンドを使用して、設定の 192.0.2.* の値を、ホストで使用していないサブネットに変更します。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.