第20章 virsh を使用したゲスト仮想マシンの管理
virsh は、ゲスト仮想マシンを管理するコマンドラインインターフェイスツールで、Red Hat Enterprise Linux 7 で仮想化を制御する主要な手段として機能します。virsh コマンドラインツールは、libvirt 管理 API に構築され、ゲスト仮想マシンの作成、デプロイ、および管理に使用できます。virsh ユーティリティーは、仮想化管理スクリプトを作成するために最適で、root 権限のないユーザーは読み取り専用モードで使用できます。virsh パッケージは、libvirt-client パッケージの一部として yum とともにインストールされます。
インストール手順については、「仮想化パッケージの手動インストール」 を参照してください。virsh の概要 (実用的なデモンストレーションを含む) は、Virtualization Getting Started Guide を参照してください。本章の残りのセクションでは、使用方法に基づいた論理的な順序で設定された virsh コマンドについて説明します。
注記
ヘルプを使用する場合、または man ページを読み込む場合は、ゲスト仮想マシンという用語の代わりに、'domain' という用語が使用されることに注意してください。これは、libvirt が使用する用語です。画面の出力が表示され、'domain' が使用されている場合は、ゲストまたはゲスト仮想マシンに切り替わりません。すべての例では、ゲスト仮想マシン 'guest1' が使用されます。いずれの場合も、これをゲスト仮想マシンの名前に置き換える必要があります。ゲスト仮想マシンの名前を作成する場合は、短くて覚えやすい整数 (0,1,2...) やテキスト文字列名を使用するか、すべての場合で仮想マシンの完全な UUID を使用することもできます。
重要
使用しているユーザーに気をつける必要があります。あるユーザーを使用してゲスト仮想マシンを作成した場合、別のユーザーを使用してそのユーザーに関する情報を取得することはできません。virt-manager で仮想マシンを作成する場合は、これが特に重要です。デフォルトのユーザーは、特に指定がない限り、この場合は root になります。virsh list --all コマンドを使用して仮想マシンのリストを表示できない場合は、仮想マシンの作成に使用したユーザーとは別のユーザーを使用してコマンドを実行している可能性が最も高いです。詳細は、重要 を参照してください。
20.1. ゲスト仮想マシンの状態とタイプ
virsh コマンドの一部は、ゲスト仮想マシンのステータスの影響を受けます。
- Transient - 一時的なゲストは再起動しても存続しません。
- Persistent - 永続的なゲスト仮想マシンは再起動しても存続し、削除されるまで持続します。
仮想マシンのライフサイクル期間中、libvirt は、以下の状態のいずれかでゲストを分類します。
- Undefined - これは、定義されていないか作成されていないゲスト仮想マシンです。したがって、libvirt はこの状態のゲストを認識せず、この状態のゲスト仮想マシンについて報告しません。
- Shut off - これは定義されているものの、実行していないゲスト仮想マシンです。永続ゲストのみが停止と見なされます。このため、一時的なゲスト仮想マシンがこの状態になると、ゲスト仮想マシンは存在しなくなります。
- Running - この状態のゲスト仮想マシンは定義されており、現在機能しています。この状態は、永続ゲスト仮想マシンおよび一時ゲスト仮想マシンの両方で使用できます。
- Paused - ハイパーバイザーでのゲスト仮想マシンの実行が一時停止しているか、状態が再開するまで一時的に保存されています。この状態のゲスト仮想マシンは、一時停止していることを認識しません。また、再開時に時間が経過していることにも気づきません。
- Saved - この状態は paused 状態に似ていますが、ゲスト仮想マシンの設定は永続ストレージに保存されます。この状態のゲスト仮想マシンは一時停止していることを認識しません。また、復元後に時間が経過したことも通知しません。