Logical Domains Manager を使用して、ドメイン間の依存関係を確立できます。依存する 1 つ以上のドメインを持つドメインは、マスタードメインと呼ばれます。別のドメインに依存するドメインは、スレーブドメインと呼ばれます。
master プロパティーを設定することによって、各スレーブドメインに最大 4 つのマスタードメインを指定できます。たとえば、次に示すコンマで区切られたリストでは、pine スレーブドメインに 4 つのマスタードメインを指定しています。
# ldm add-domain master=alpha,beta,gamma,delta pine
alpha、beta、gamma、および delta マスタードメインはすべて、stop の失敗ポリシーを指定します。
各マスタードメインには、マスタードメインに障害が発生した場合のスレーブドメインの動作を指定できます。たとえば、マスタードメインに障害が発生した場合、そのスレーブドメインでパニックを発生させる必要があることがあります。スレーブドメインに複数のマスタードメインがある場合は、各マスタードメインが同じ失敗ポリシーを持つ必要があります。したがって、最初に失敗したマスタードメインは、そのスレーブドメインのすべてで、定義済みの失敗ポリシーをトリガーします。
マスタードメインの障害ポリシーは、failure-policy プロパティーに次のいずれかの値を設定することによって制御できます。
ignore は、すべてのスレーブドメインを無視します
panic は、すべてのスレーブドメインにパニックを発生させます (ldm panic コマンドを実行することと似ています)
reset は、すべてのスレーブドメインをただちに停止して再起動します (ldm stop -f コマンド、ldm start コマンドの順に実行することと似ています)
stop は、すべてのスレーブドメインを停止します (ldm stop -f コマンドを実行することと似ています)
この例では、マスタードメインの障害ポリシーが次のように指定されています。
primary# ldm set-domain failure-policy=ignore apple primary# ldm set-domain failure-policy=panic lemon primary# ldm set-domain failure-policy=reset orange primary# ldm set-domain failure-policy=stop peach primary# ldm set-domain failure-policy=stop alpha primary# ldm set-domain failure-policy=stop beta primary# ldm set-domain failure-policy=stop gamma primary# ldm set-domain failure-policy=stop delta
このメカニズムを使用して、ドメイン間の明示的な依存関係を作成できます。たとえば、ゲストドメインが、サービスドメインに暗黙に依存し、その仮想デバイスを提供しているとします。ゲストドメインが依存しているサービスドメインが実行されていない場合、ゲストドメインの入出力はブロックされます。ゲストドメインをサービスドメインのスレーブドメインとして定義することによって、サービスドメインが停止した場合のゲストドメインの動作を指定できます。このような依存関係が確立されていない場合、ゲストドメインはサービスドメインが使用可能になるのを待機します。
ドメインの依存関係の XML の例は、Example 22–6を参照してください。