Show Table of Contents
A.11. Red Hat Enterprise Linux 7 ホスト上での Red Hat Enterprise Linux 6 ゲストのシャットダウン
最小限のインストール (Minimal installation) オプションを指定して Red Hat Enterprise Linux 6 ゲスト仮想マシンをインストールしても、acpid (acpi daemon) パッケージはインストールされません。このパッケージは systemd に引き継がれたので Red Hat Enterprise Linux 7 では不要です。ただし、Red Hat Enterprise Linux 7 ホスト上で実行される Red Hat Enterprise Linux 6 ゲスト仮想マシンにはこれが依然として必要になります。
acpid パッケージがないと、
virsh shutdown コマンドを実行しても Red Hat Enterprise Linux 6 ゲスト仮想マシンがシャットダウンしません。virsh shutdown コマンドはゲスト仮想マシンを正常にシャットダウンするように設計されています。
virsh shutdown コマンドの使用はシステム管理上、より安全かつ簡単な方法となります。virsh shutdown コマンドで正常にシャットダウンできないと、システム管理者は手動でゲスト仮想マシンにログインするか、または Ctrl-Alt-Del のキー組み合わせを各ゲスト仮想マシンに送信しなければならなくなります。
注記
他の仮想化オペレーティングシステムもこの問題の影響を受ける場合があります。
virsh shutdown コマンドが正しく動作するには、ゲスト仮想マシンのオペレーティングシステムが ACPI シャットダウン要求を処理できるよう設定されている必要があります。ACPI シャットダウン要求の受け入れを可能にするには、多くのオペレーティングシステムの場合、ゲスト仮想マシンのオペレーティングシステムで追加の設定が必要になります。
手順A.5 Red Hat Enterprise Linux 6 ゲストの回避策
acpid パッケージをインストールします。
acpidサービスが ACPI 要求をリッスンし、これを処理します。ゲスト仮想マシンにログインし、ゲスト仮想マシンに acpid パッケージをインストールします。#
yum install acpidゲストで acpid サービスを有効にします。
acpidサービスがゲスト仮想マシンの起動シーケンスで起動され、サービスを起動するように設定します。#
chkconfig acpid on#service acpid startゲストドメイン XML を準備します。
以下の要素を組み込むようにドメイン XML ファイルを編集します。virtio シリアルポートをorg.qemu.guest_agent.0に置き換え、表示されているものの代わりにゲストの名前を使用します。この例では、ゲストは guest1 です。ファイルは必ず保存してください。<channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/guest1.agent'/> <target type='virtio' name='org.qemu.guest_agent.0'/> </channel>図A.1 ゲスト XML の置き換え
QEMU ゲストエージェントをインストールします。
『Red Hat Enterprise Linux 6 仮想化管理ガイド』で説明されているように QEMU ゲストエージェント (QEMU-GA) をインストールし、サービスを起動します。ゲストをシャットダウンします。
- 既知のゲスト仮想マシンを一覧表示し、シャットダウンする必要のある仮想マシンの名前を検索できます。
#
virsh list --allId Name State ---------------------------------- 14 guest1 running - ゲスト仮想マシンをシャットダウンします。
#
virsh shutdown guest1guest virtual machine guest1 is being shutdown - ゲスト仮想マシンがシャットダウンするまで数秒間待機します。それがシャットダウンされていることを確認します。
#
virsh list --allId Name State ---------------------------------- 14 guest1 shut off - 編集した XML ファイルを使用して、guest1 という名前のゲスト仮想マシンを起動します。
#
virsh start guest1 - guest1 ゲスト仮想マシンで acpi をシャットダウンします。
#
virsh shutdown --mode acpi guest1 - すべてのゲスト仮想マシンを再び一覧表示します。guest1 が一覧に表示され、それが停止していることが表示されるはずです。
#
virsh list --allId Name State ---------------------------------- 14 guest1 shut off - 編集した XML ファイルを使用して、guest1 という名前のゲスト仮想マシンを起動します。
#
virsh start guest1 - guest1 ゲスト仮想マシンのゲストエージェントをシャットダウンします。
#
virsh shutdown --mode agent guest1 - ゲスト仮想マシンを一覧表示します。guest1 が一覧に表示され、それが停止していることを確認できるはずです。
#
virsh list --allId Name State ---------------------------------- guest1 shut off
ゲスト仮想マシンは、連続するシャットダウンでは上記の回避策を使用せずに
virsh shutdown コマンドを使ってシャットダウンします。
上記の方法以外にも、
libvirt-guests サービスを停止してゲストを自動的にシャットダウンできます。この方法についてさらに詳しくは、「正常なシャットダウンに向けたオプションの方法」 を参照してください。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.