ポーリングの代わりに、特定の状態変化が発生した場合にイベント通知を受信するように登録できます。個々に、または一括して登録できるイベントのタイプは 3 つあります。詳細は、「イベントタイプ」 を参照してください。
イベントを登録するには、<LDM_interface> メッセージを使用します。「<LDM_interface> タグ」 を参照してください。処理タグには登録または登録解除するイベントのタイプを記述し、<data> セクションは空白のままにしておきます。
<LDM_interface version="1.0"> <cmd> <action>reg-domain-events</action> <data version="3.0"/> </cmd> </LDM_interface> |
Logical Domains Manager は、登録または登録解除が成功したかどうかを示す <LDM_interface> 応答メッセージで応答します。
<LDM_interface version="1.0"> <cmd> <action>reg-domain-events</action> <data version="3.0"/> <response> <status>success</status> </response> </data> <response> <status>success</status> </response> </cmd> <response> <status>success</status> </response> </LDM_interface> |
各タイプのイベントの処理文字列は、イベントサブセクションにリストされます。
イベントメッセージの形式は受信 <LDM_interface> メッセージと同じですが、このメッセージの開始タグは <LDM_event> になる点が異なります。メッセージの処理タグは、イベントをトリガーするために実行された処理です。メッセージのデータセクションにはイベントに関連付けられたオブジェクトが記述されます。詳細は、発生したイベントのタイプによって異なります。
<LDM_event version='1.0'> <cmd> <action>Event command here</action> <data version='3.0'> <Envelope <References/> <Content xsi:type='ovf:VirtualSystem_Type' ovf:id='ldg1'/> <Section xsi:type="ovf:ResourceAllocationSection_type"> <Item> <rasd:OtherResourceType>LDom Resource Type</rasd:OtherResourceType> <gprop:GenericProperty key="Property name">Property Value</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_event> |
次に、登録できるイベントのタイプを示します。
ドメインイベント
ハードウェアイベント
進捗イベント
リソースイベント
これらすべてのイベントは、Logical Domains Manager (ldm) サブコマンドに対応しています。
ドメインイベントは、ドメインに直接実行できる処理を記述します。次の表に、<LDM_event> メッセージの <action> タグにリストされる可能性のあるドメインイベントを示します。
ドメインイベント |
ドメインイベント |
ドメインイベント |
---|---|---|
add-domain |
remove-domain |
bind-domain |
unbind-domain |
start-domain |
stop-domain |
domain-reset |
panic-domain |
migrate-domain |
これらのイベントでは、常に、OVF データセクションにイベントが発生したドメインが記述された <Content> タグのみが含まれます。ドメインイベントを登録するには、<action> タグを reg-domain-events に設定した <LDM_interface> メッセージを送信します。これらのイベントの登録を解除するには、処理タグを unreg-domain-events に設定した <LDM_interface> メッセージが必要です。
ハードウェアイベントは、物理的なシステムハードウェアの変更に関係しています。LDoms ソフトウェアの場合、実行できるハードウェア変更は、ユーザーがサービスプロセッサ (SP) 構成の追加、削除、または設定を行う場合の SP への変更だけです。現在、このタイプのイベントは次の 3 つだけです。
add-spconfig
set-spconfig
remove-spconfig
ハードウェアイベントでは、常に、OVF データセクションにイベントが発生している SP 構成が記述された <Section> タグのみが含まれます。これらのイベントを登録するには、<action> タグを reg-hardware-events に設定した <LDM_interface> メッセージを送信します。これらのイベントの登録を解除するには、<action> タグを unreg-hardware-events に設定した <LDM_interface> メッセージが必要です。
進捗イベントは、ドメインの移行など、長時間にわたって実行されるコマンドに対して発行されます。このイベントは、コマンド実行期間中のそれまでの進捗量を報告します。この時点では、migration-process イベントのみが報告されます。
進捗イベントでは、常に、OVF データセクションにイベントの影響を受ける SP 構成が記述された <Section> タグのみが含まれます。 これらのイベントを登録するには、<action> タグを reg-hardware-events に設定した <LDM_interface> メッセージを送信します。これらのイベントの登録を解除するには、<action> タグを unreg-hardware-events に設定した <LDM_interface> メッセージが必要です。
進捗イベントの <data> セクションは、影響を受けるドメインを記述する <content> セクションによって構成されています。この <content> セクションでは、ldom_info <Section> タグを使用して進捗を更新します。次の汎用プロパティーが ldom_info セクションに表示されます。
--progress – コマンドの進捗の割合
--status – コマンドのステータス。ongoing、failed、または done のいずれか
--source – 進捗を報告しているマシン
任意のドメインでリソースを追加、削除、または変更すると、リソースイベントが発生します。これらの一部のイベントのデータセクションには、OVF データセクションにサービス名が示されている <Section> タグがある、<Content> タグが含まれています。次の表に、<LDM_event> メッセージの <action> タグにリスト可能なイベントを示します。
リソースイベント |
リソースイベント |
---|---|
add-vdiskserverdevice |
remove-vdiskserverdevice |
set-vdiskserverdevice |
remove-vdiskserver |
set-vconscon |
remove-vconscon |
set-vswitch |
remove-vswitch |
remove-vdpcs |
|
その他のリソースイベントでは、常に、OVF データセクションにイベントが発生したドメインが記述された <Content> タグのみが含まれます。
リソースイベント |
リソースイベント |
リソースイベント |
---|---|---|
add-vcpu |
add-crypto |
add-memory |
add-io |
add-variable |
add-vconscon |
add-vdisk |
add-vdiskserver |
add-vnet |
add-vswitch |
add-vdpcs |
add-vdpcc |
set-vcpu |
set-crypto |
set-memory |
set-variable |
set-vnet |
set-vconsole |
set-vdisk |
remove-vcpu |
remove-crypto |
remove-memory |
remove-io |
remove-variable |
remove-vdisk |
remove-vnet |
remove-vdpcc |
リソースイベントを登録するには、<action> タグを reg-resource-events に設定した <LDM_interface> メッセージを送信します。これらのイベントの登録を解除するには、<action> タグを unreg-resource-events に設定した <LDM_interface> メッセージが必要です。
各イベントを個別に登録しないで、3 つのタイプすべてのイベントを待機するように登録することもできます。3 タイプすべてのイベントを同時に登録するには、<action> タグを reg-all-events に設定した <LDM_interface> メッセージを送信します。これらのイベントの登録を解除するには、<action> タグを unreg-all-events に設定した <LDM_interface> メッセージが必要です。