20.6. 仮想マシンの起動、再開および復元

20.6.1. ゲスト仮想マシンの起動

virsh start domain; [--console] [--paused] [--autodestroy] [--bypass-cache] [--force-boot] コマンドは、すでに定義されているものの、最後の保存された状態または新規の起動時以降は非アクティブになっている仮想マシンを起動します。デフォルトでは、virsh managedsave コマンドで保存されたドメインは、以前の状態に復元されます。それ以外の場合は、新規に起動します。このコマンドは以下の引数を取り、仮想マシンの名前が必要です。
  • --console - virsh を実行中の端末をドメインのコンソールデバイスにアタッチします。これはランレベル 3 になります。
  • --paused - ドライバーがサポートしている場合、ゲスト仮想マシンを一時停止の状態に起動します。
  • --autodestroy: ゲスト仮想マシンは virsh の接続が解除されると自動的に破棄されます。
  • --bypass-cache: ゲスト仮想マシンが managedsave にある場合に使用されます。
  • --force-boot - managedsave オプションを破棄し、新規の起動を生じさせます。

例20.3 仮想マシンの起動方法

以下の例では、guest1 という仮想マシンを起動します。これは既に作成したもので、現在は非アクティブな状態にあるものです。また、このコマンドではゲストのコンソールを virsh を実行している端末にアタッチします。
virsh start guest1 --console
Domain guest1 started
Connected to domain guest1
Escape character is ^]

20.6.2. 起動時に自動的に起動するように仮想マシンを設定

virsh autostart [--disable] domain コマンドは、ホストマシンの起動時にゲスト仮想マシンを自動的に起動します。--disable 引数をこのコマンドに追加すると、autostart が無効になります。この場合のゲストは、ホスト物理マシンの起動時に自動的に起動しません。

例20.4 ホスト物理マシンの起動時に仮想マシンを自動的に起動させる方法

以下の例では、既に作成したもの guest1 という仮想マシンが、ホストの起動時に自動的に起動するようにします。
virsh autostart guest1

20.6.3. ゲスト仮想マシンの再起動

virsh reboot domain [--mode modename] コマンドを使用してゲスト仮想マシンを再起動します。このアクションは再起動後のみに返されるので、その時点からゲスト仮想マシンが実際に再起動するまで、時間のずれが発生する可能性があります。ゲスト仮想マシンの XML 設定ファイルで on_reboot 要素を変更すると、ゲスト仮想マシンの再起動の動作を制御することができます。デフォルトでは、ハイパーバイザーは適切なシャットダウン方法を自動選択します。代替方法を指定する場合、--mode 引数で、initctlacpiagentsignal を含むコンマ区切りの一覧を指定できます。ドライバーがそれぞれのモードを試行する順序は定義されず、virsh で指定された順序には関連がありません。順序付けを厳密に制御するためには、1 度に 1 つのモードを使用してコマンドを繰り返します。

例20.5 ゲスト仮想マシンの再起動方法

以下の例では、guest1 という名前のゲスト仮想マシンを再起動します。この例では、再起動に initctl メソッドを使用しますが、必要に合わせてモードを選択することができます。
virsh reboot guest1 --mode initctl

20.6.4. ゲスト仮想マシンの復元

virsh restore <file> [--bypass-cache] [--xml /path/to/file] [--running] [--paused] コマンドは、virsh save コマンドで以前に保存されたゲスト仮想マシンを復元します。virsh save コマンドについての情報は、「ゲスト仮想マシンの設定の保存」 を参照してください。復元操作により、保存されたゲスト仮想マシンが再起動しますが、これには時間がかかる場合があります。ゲスト仮想マシンの名前および UUID は保存されますが、ID は仮想マシンの保存時の ID と必ずしも一致する訳ではありません。
virsh restore コマンドは、以下の引数を取ります。
  • --bypass-cache: 復元により、ファイルシステムのキャッシュが回避されますが、このフラグを使用すると、復元操作が遅くなることに注意してください。
  • --xml: この引数は、XML ファイル名と共に使用する必要があります。この引数は通常省略されますが、復元されるゲスト仮想マシンに代替 XML ファイルを指定するために使用できます。この際、変更はドメイン XML のホスト固有の部分にのみ加えられます。たとえば、これはゲストの保存後に取られるディスクのスナップショットによって生じる、基礎となるストレージのファイル名の違いを説明するために使用できます。
  • --running: ゲスト仮想マシンを実行状態で起動するために保存イメージに記録された状態をオーバーライドします。
  • --paused - ゲスト仮想マシンを一時停止の状態で起動するために、保存イメージに記録された状態を上書きします。

例20.6 ゲスト仮想マシンの復元方法

以下の例では、ゲスト仮想マシン起動して、その設定ファイル guest1-config.xml で稼働させます。
virsh restore guest1-config.xml --running

20.6.5. ゲスト仮想マシンの再開

virsh resume domain コマンドは、一時停止されたドメインの CPU を再開します。この操作は即座に実行されます。ゲスト仮想マシンは、一時停止された時点からの操作を再開します。ただし、この操作では、定義されていないゲスト仮想マシンは再開されないことに注意してください。この操作では 一時的 な仮想マシンは再開されず、永久的な仮想マシンのみが再開されます。

例20.7 一時停止しているゲスト仮想マシンの復元方法

以下では、guest1 仮想マシンが復元されます。
virsh resume guest1