4.3. ホストの起動時に仮想マシンを自動的に起動する

実行中の仮想マシン (VM) のホストが再起動すると、仮想マシンはシャットダウンされるため、デフォルトで手動で再起動する必要があります。ホストの実行中に仮想マシンがアクティブであることを確認するには、仮想マシンが自動的に起動するように設定できます。

手順

  1. virsh autostart ユーティリティーを使用して、ホストの起動時に仮想マシンが自動的に起動するように設定します。

    たとえば、次のコマンドは、demo-guest1 仮想マシンを自動的に起動するように設定します。

    # virsh autostart demo-guest1
    Domain 'demo-guest1' marked as autostarted
  2. libvirt が管理していないネットワークインターフェイスを使用する場合は、systemd 設定にも追加の変更を行う必要があります。これを行わないと、影響を受ける仮想マシンの起動に失敗する可能性があります。

    注記

    このようなインターフェイスには、以下の例が含まれます。

    • NetworkManager が作成したブリッジデバイス
    • <forward mode='bridge'/> を使用するように設定されたネットワーク
    1. systemd 設定ディレクトリーツリーに、virtqemud.service.d ディレクトリーが存在しない場合は作成します。

      # mkdir -p /etc/systemd/system/virtqemud.service.d/
    2. 以前に作成したディレクトリーに、10-network-online.conf systemd ユニットオーバーライドファイルを作成します。このファイルのコンテンツは、virtqemud サービスのデフォルトの systemd 設定を上書きします。

      # touch /etc/systemd/system/virtqemud.service.d/10-network-online.conf
    3. 10-network-online.conf ファイルに以下の行を追加します。この設定変更により、ホストのネットワークの準備ができてから、systemd が virtqemud サービスを起動するようになります。

      [Unit]
      After=network-online.target

検証

  1. 仮想マシンの設定を表示し、自動開始 オプションが有効になっていることを確認します。

    たとえば、次のコマンドは、自動開始 オプションなど、demo-guest1 仮想マシンの基本情報を表示します。

    # virsh dominfo demo-guest1
    Id:             2
    Name:           demo-guest1
    UUID:           e46bc81c-74e2-406e-bd7a-67042bae80d1
    OS Type:        hvm
    State:          running
    CPU(s):         2
    CPU time:       385.9s
    Max memory:     4194304 KiB
    Used memory:    4194304 KiB
    Persistent:     yes
    Autostart:      enable
    Managed save:   no
    Security model: selinux
    Security DOI:   0
    Security label: system_u:system_r:svirt_t:s0:c873,c919 (enforcing)
  2. libvirt が管理していないネットワークインターフェイスを使用する場合は、10-network-online.conf ファイルの内容が次の出力と一致するかどうかを確認してください。

    $ cat /etc/systemd/system/virtqemud.service.d/10-network-online.conf
    [Unit]
    After=network-online.target

関連情報