Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

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 引数を追加すると、自動起動が無効になります。この場合のゲストは、ホストの物理マシンの起動時には自動的に起動しません。

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

以下の例では、ホストの起動時に自動起動するためにすでに作成した guest1 仮想マシンを設定します。
# virsh autostart guest1

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

virsh reboot domain [--mode modename] コマンドを使用して、ゲスト仮想マシンを再起動します。このアクションは再起動を実行した後にのみ返されるため、その時点からゲスト仮想マシンが実際に再起動するまでに時間がかかる場合があることに注意してください。ゲスト仮想マシンの XML 設定ファイルの on_reboot 要素を変更することで、再起動中のゲスト仮想マシンの動作を制御できます。デフォルトでは、ハイパーバイザーは適切なシャットダウン方法を自動的に選択しようとします。別の方法を指定する場合は、--mode 引数を使用して、acpiagent を含むコンマ区切りのリストを指定できます。ドライバーが各モードを試行する順序は定義されておらず、virsh で指定された順序とは無関係です。順序を厳格に制御するには、一度に 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 を再起動します。この操作は即座に行われます。ゲスト仮想マシンは、一時停止した時点から実行を再開します。このアクションは、定義されていないゲスト仮想マシンを再開しないことに注意してください。この操作は、transient 仮想マシンを再開せず、永続仮想マシンでのみ機能します。

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

以下の例では、guest1 仮想マシンを復元します。
# virsh resume guest1