第15章 仮想マシン

15.1. 仮想マシンの要素

vms コレクションは、Red Hat Enterprise Virtualization 環境内の仮想マシンに関する情報を提供します。API ユーザーは、エントリーポイント URL から取得した rel="vms" リンクでこの情報にアクセスします。
GET 要求に関する追加の情報は、All-Content: true ヘッダーを使用して取得することができます。
以下の表には、仮想マシンリソースの表現に含まれる特定の要素をまとめています。

表15.1 仮想マシンの要素

要素タイプ説明プロパティー
link rel="applications"リレーションシップ仮想マシンリソースの applications サブコレクションへのリンク。仮想マシンにインストールされているアプリケーションを表示します。 
link rel="disks"リレーションシップ仮想マシンリソースの disks サブコレクションへのリンク 
link rel="nics"リレーションシップ仮想マシンリソースの nics サブコレクションへのリンク 
link rel="numanodes"リレーションシップ仮想マシンリソースの numanodes サブコレクョンへのリンク 
link rel="cdroms"リレーションシップ仮想マシンリソースの cdroms サブコレクションへのリンク 
link rel="snapshots"リレーションシップ仮想マシンリソースの snapshots サブコレクションへのリンク 
link rel="tags"リレーションシップ仮想マシンリソースの tags サブコレクションへのリンク 
link rel="permissions"リレーションシップ仮想マシンパーミッションの permissions サブコレクションへのリンク 
link rel="statistics"リレーションシップ仮想マシンリソースの statistics サブコレクションへのリンク
link rel="reporteddevices"
リレーションシップ
仮想マシンリソースの tags サブコレクションへのリンク
 
link rel="watchdogs"
リレーションシップ
仮想マシンリソースの watchdogs サブコレクションへのリンク
 
link rel="sessions"
リレーションシップ
仮想マシンリソースの sessions サブコレクションへのリンク
 
type列挙型仮想マシンのタイプ。列挙値の一覧は capabilities に記載されています。
status下記参照仮想マシンのステータス
memory整数ゲストに割り当てられたメモリーの容量 (バイト単位)
cpu複合型
仮想マシンの CPU の詳細を定義します。topology サブ要素は、ゲストが使用できる論理 sockets の数および 1 ソケットあたりのコア数を指定します。仮想マシンが使用可能なコア数の合計は、ソケット数に 1 ソケットあたりの cores 数を乗算した値に相当します。
cputune サブ要素は、一連の vcpupin 要素を使用して仮想 CPU を物理ホストの CPU にマップします。各 vcpupin 要素には仮想 CPU の属性 (vcpu) および使用する物理 ホストの CPU を定義する属性 (cpuset) が含まれます。cpuset は、単一の CPU (cpuset="0")、複数の CPU (cpuset="0,2")、CPU 範囲 (cpuset="0-3")、除外条件付きの CPU 範囲 (cpuset="0-3,^2") のいずれかに指定します。
cpu_mode サブ要素は、仮想 CPU とホスト CPU の関係の密接度を定義します。これには、custom (モードが指定されていない場合のデフォルト)、host_model (libvirt が最も適切に理解できるようにホスト CPU をコピーする)、host_passthrough (libvirt が認識できなくてもホストの全アスペクトを渡す) の 3 つの値があります。ただし、host_passthrough を指定すると仮想マシンの移行ができなくなります。
os type=文字列 (例: RHEL5WindowsXP)ゲストのオペレーティングシステムのタイプ
os boot dev=列挙型boot 要素の dev 属性によって記述される起動デバイスの一覧。列挙値の一覧は capabilities に記載されています。
os kernel文字列仮想マシンの起動用に設定されたカーネルイメージへのパス。このオプションは BIOS ブートローダーを介さない、Linux カーネルの直接のブートをサポートしています。
os initrd文字列以前に指定したカーネルで使用される initrd イメージへのパス。このオプションは BIOS ブートローダーを介さない、Linux カーネルの直接のブートをサポートしています。
os cmdline文字列定義されたカーネルも使用されるカーネルコマンドラインパラメーターの文字列。このオプションは BIOS ブートローダーを介さない、Linux カーネルの直接ブートをサポートしています。
high_availability複合型仮想マシンまたはそのホストがクラッシュした際に、その仮想マシンを自動的に再起動するようにする場合は、enabledtrue に設定します。priority 要素は、仮想マシンの再起動の順序を制御します。 
display複合型
ディスプレイの type (vnc または spice)、ポート、および monitors 数。allow_reconnect のブール値は、クライアントがディスプレイを介して再接続可能かどうかを指定します。
smartcard_enabled サブ要素は、クライアントに接続されたスマートカードがパススルーされるかどうかを指定するブール値 (true または false) です。デフォルトは false です。
 
cluster id=GUID仮想マシンのホストクラスターへの参照
template id=GUIDそのマシンのベースとなっているテンプレートへの参照
domain id=GUID仮想マシンのドメインへの参照
start_timexsd:dateTime の形式: YYYY-MM-DDThh:mm:ssその仮想マシンを起動した日付と時刻
stop_timexsd:dateTime の形式: YYYY-MM-DDThh:mm:ssその仮想マシンを終了した日付と時刻
creation_timexsd:dateTime の形式: YYYY-MM-DDThh:mm:ssその仮想マシンを作成した日付と時刻
originrhevovirtvmwarexen のいずれかその仮想マシンの元となったシステム
statelessブール値: true または false仮想マシンがステートレスの場合は true に指定します。ステートレスの仮想マシンには、ブート時に作成されたスナップショットが含まれ、シャットダウン時には削除されます。これは、再起動後に状態が永続化されないことを意味します。 
delete_protectedブール値: true または falsetrue に設定した場合には、仮想マシンは削除できません。 
sso文字列仮想マシンのシングルサインオンメソッドへの参照。ip 属性を使用する method 要素が含まれます。 
placement_policy複合型仮想マシン移行の配置ポリシーを設定します。デフォルトの host=affinity (migratableuser_migratablepinned のいずれか) が必要です。host 要素を空白にすると、優先ホストなしの設定になります。複数の host 要素を使用して、クラスター内の優先ホストのサブセットを指定します。 
memory_policy複合型仮想マシンのメモリーポリシーを設定します。仮想マシンが稼働するためのホスト上の最小限の guaranteed メモリー容量を定義します。 
quota id=GUID仮想マシンのクォータを設定します。 
custom_properties複合型パラメーターとしてカスタムのスクリプトに渡される、ユーザー定義の環境変数セット。各 custom_property には name および value の属性が含まれます。列挙値の一覧は capabilities に記載されています。 
usb複合型仮想マシンの USB ポリシーを定義します。enabled 要素をブール値に設定し、type 要素を native または legacy に設定する必要があります。 
migration_downtime整数ライブマイグレーション中に仮想マシンを停止状態にできる最大時間をミリ秒単位で示します。値が 0 の場合には、VDSM のデフォルトが使用されることになります。 
cpu_profile id=GUID仮想マシンの CPU プロファイルへの参照 
next_run_configurationブール値: true または false次回の再起動時に仮想マシンの設定の変更が適用されるには、true に設定します。 
numa_tune_mode文字列ホスト NUMA ノードのメモリー割り当てモードへ (interleavestrictpreferred のいずれか) の参照  
guest_info複合型ゲストクライアントの情報への参照。address= 属性を使用する ip 要素が含まれます。
vmpool複合型仮想マシンプールへの参照。この要素が表示されるのは、仮想マシンがプールの一部である場合のみです。
timezonetz データベース形式: Area/LocationWindows 仮想マシンに設定する Sysrprep タイムゾーン 
domain複合型Windows 仮想マシンのテンプレート用の Sysprep ドメイン設定。domains コレクションからの name が必要です。 
initialization複合型
Linux ベースの仮想マシンの場合は Cloud-Init を、Windows ベースの仮想マシンには Sysprep を使用して、起動時に仮想マシンに適用する値の一覧を定義します。

Cloud-Init

  • host_name: 仮想マシンのホスト名
  • timezone: 仮想マシンのタイムゾーン
  • user_name: 仮想マシンのユーザー名
  • root_password: ユーザーのパスワード、またはユーザーが指定されていない場合は root パスワード
  • authorized_ssh_keys: 仮想マシンの認証済みキーファイルに追加する SSH キー。改行区切りで各 SSH を指定することで、複数の SSH キーを入力することができます。
  • regenerate_ssh_keys: 仮想マシンの SSH キーを再生成するかどうか。許容値は true または false です。
  • dns_servers: スペース区切りの DNS サーバーの一覧
  • dns_search: スペース区切りの DNS 検索ドメイン一覧
  • nic_configurations: 仮想マシンのネットワークインターフェースコントローラーを定義します。ネットワークインターフェースコントローラーは、このコレクション内で nic_configuration オブジェクトとして定義され、それぞれnameipboot_protocolon_boot を指定します。
  • custom_script: 起動時に仮想マシンで実行するカスタムスクリプト

Sysprep

  • host_name: 仮想マシンのホスト名
  • domain: 仮想マシンがメンバーのドメイン
  • authorized_ssh_keys: 仮想マシンの認証済みキーファイルに追加する SSH キー。改行区切りで各 SSH を指定することで、複数の SSH キーを入力することができます。
  • regenerate_ssh_keys: 仮想マシンの SSH キーを再生成するかどうか。許容値は true または false です。
  • timezone: 仮想マシンのタイムゾーン
  • root_password: 仮想マシンの管理ユーザーのパスワード
  • custom_script: 起動時に仮想マシンで実行するカスタムスクリプト
  • input_locale: ユーザー入力のロケール
  • ui_language: ボタンやメニューなどのユーザーインターフェースの要素に使用する言語
  • system_locale: システム全体のロケール
  • user_locale: ユーザーのロケール
  • active_directory_ou: 仮想マシンが属する Active Directory ドメインの組織単位
  • org_name: 仮想マシンが属する組織名
payloads複合型
ブート時に仮想マシンにコンテンツを提供する payload 要素のセットを定義します。各 payload には type 属性 (cdrom または floppy) と file 要素が必要です。各 file 要素には、ファイルの名前と場所を指定する name 要素と、ファイルに渡すコンテンツを定義する content 要素が必要です。
payloads 要素は、cloud-init 機能によって使用されます。cloud-init を使用して仮想マシンを設定する場合には、type 属性が cd-rom に指定され、設定パラメーターを仮想マシンに渡す openstack/latest/meta_data.jsonopenstack/latest/user_dataの 2 つの file サブ要素とともに自動的に作成されます。
 
status には、以下のいずれかの列挙値が含まれます: unassigneddownuppowering_uppowered_downpausedmigrating_frommigrating_tounknownnot_respondingwait_for_launchreboot_in_progresssaving_staterestoring_statesuspendedimage_illegalimage_lockedpowering_down。これらのステータスは capabilities の下の vm_states に記載されています。