4.3. ホストの起動時に仮想マシンを自動的に起動する
実行中の仮想マシン (VM) のホストが再起動すると、仮想マシンはシャットダウンされるため、デフォルトで手動で再起動する必要があります。ホストの実行中に仮想マシンがアクティブであることを確認するには、仮想マシンが自動的に起動するように設定できます。
以下の手順では、コマンドラインで仮想マシンの自動起動をセットアップする方法について説明します。Web コンソールでの仮想マシンの自動起動については、Web コンソールを使用して仮想マシンを起動する を参照してください。
前提条件
- 仮想マシン (VM) を作成し、ゲストオペレーティングシステムをインストールしている。詳細は、仮想マシンの作成 を参照してください。
手順
virsh autostartユーティリティーを使用して、ホストの起動時に仮想マシンが自動的に起動するように設定します。たとえば、次のコマンドは、demo-guest1 仮想マシンを自動的に起動するように設定します。
# virsh autostart demo-guest1正常な出力:
Domain '_demo-guest1_' marked as autostartedlibvirtが管理していないネットワークインターフェイスを使用する場合は、systemd 設定にも追加の変更を行う必要があります。これを行わないと、影響を受ける仮想マシンの起動に失敗する可能性があります。注記このようなインターフェイスには、以下の例が含まれます。
-
NetworkManagerが作成したブリッジデバイス -
<forward mode='bridge'/>を使用するように設定されたネットワーク
systemd 設定ディレクトリーツリーに、
virtqemud.service.dディレクトリーが存在しない場合は作成します。# mkdir -p /etc/systemd/system/virtqemud.service.d/以前に作成したディレクトリーに、
10-network-online.confsystemd ユニットオーバーライドファイルを作成します。このファイルの内容により、virtqemudサービスのデフォルトの systemd 設定をオーバーライドします。# touch /etc/systemd/system/virtqemud.service.d/10-network-online.conf10-network-online.confファイルに以下の行を追加します。この設定変更により、ホストのネットワークの準備ができてから、systemd がvirtqemudサービスを起動するようになります。[Unit] After=network-online.target
-
検証
仮想マシンの設定を表示し、自動開始 オプションが有効になっていることを確認します。
たとえば、次のコマンドは、自動開始 オプションなど、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)
libvirtで管理されていないネットワークインターフェイスを使用している場合は、10-network-online.confファイルの内容が正しく設定されているか確認します。$ cat /etc/systemd/system/virtqemud.service.d/10-network-online.conf正常な出力:
[Unit] After=network-online.target