この項では、フェイルオーバー用にEssbaseを構成するために必須のopmn.xmlファイル内の要素および属性について説明します。opmn.xmlファイルでは、すべての要素は<ias_component>構成要素内にあります。(このエントリはシステム・コンポーネントを表します。)
親: notification-server
属性: local、remote、request
port要素には、ONSリスナー・スレッドのホストおよびポート・バインディングに関する構成情報が含まれます。
例:
<ias-component id="<Essbase-Cluster-Name>">
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1"
service-weight="101">
<environment>
...
</environment>
<port id="essbase-port-range" range="32768-33768"/>
</process-type>
</ias-component>親: notification-server
属性: none
topology要素には、クラスタ内のONSトポロジに関する構成情報が含まれます。
例:
<topology> <nodes list="adc2170731:6712,dadvmn0429:6712"/> </topology>
親: topology
属性: list
nodes要素は、ローカルOPMNサーバーと同じクラスタ内のOPMNサーバーに固有のアドレスのリストを示します。ローカルのOPMNサーバーはリストに含まれています。複数のnodes要素を構成できます。
例:
<topology> <nodes list="adc2170731:6712,dadvmn0429:6712"/> </topology>
有効な値: 0より大きい整数値
process-typeは、service-failoverとして構成できます(numがゼロでない場合)。これは、実行中のクラスタ内のどこかにnum個存在するプロセスを表します。このプロセスの実行は制限されており、1つのサービス・インスタンスで実行されるこのタイプのプロセスは1つのみです。このため、クラスタ内の特定のservice-failoverに対するプロセスの最大数は、クラスタ内の参加サービス・インスタンスの数を超えることはできません。クラスタ内でこのservice-failoverに参加するサービス・インスタンスの数よりnumの値の方が大きく、service-failoverがアクティブである(起動済である)場合、クラスタ全体の合計プロセス数がnumになるまで、クラスタに追加された各参加インスタンスによりそのservice-failoverプロセスが自動的に起動されます。
service-failoverプロセスは、サービスに参加する任意のインスタンス上で実行できます。これは、すべてのインスタンスが同じias-component id、process-type idおよびprocess-set idを使用してサービスを構成する必要があることを意味します。サービス自体を対象とする場合、要求にはias-componentとprocess-typeの両方を指定する必要があります(process-setを含めることもできます)。
service-failover process-typeに指定できるのは、1つのprocess-setのみです。1つのフェイルオーバー・サービスのプロセス数が常に1つとなるため、このprocess-setにnumprocs、minprocsまたはmaxprocsを指定することはできません。
service-failoverは、(管理対象プロセスのように) 1つの依存関係として指定することも、複数の依存関係として指定することもできます。1つの依存関係として指定した場合、クラスタ内のどこかでこのタイプのプロセスの1つがアクティブになると同時に、service-failoverの依存関係チェックはnumの構成値とは関係なくtrueとして評価されます。
例:
<ias-component id="<Essbase-Cluster-Name>">
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1"
service-weight="101">
<environment>
<variable id="EPM_ORACLE_HOME" value="<Oracle Home-Location>”>
</environment>
...
</process-type>
</ias-component>デフォルト: 100
有効な値: 0より大きい整数値
service-failoverプロセスを実際に実行するサービス・インスタンスは、構成されている(またはデフォルトの) service-weight値に基づいて選択されます。この加重が大きいサービス・インスタンスの方が、加重が小さいサービス・インスタンスより優先して選択されます。サービスに対する一連のサービス・インスタンスの加重が同じである場合は、構成されている数のサービス・インスタンスがセットから選択され、プロセスが実行されます。
service-weight属性を指定できるのは、service-failover属性がゼロ以外の値に設定されている場合のみです。
例:
<ias-component id="<Essbase-Cluster-Name>">
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1"
service-weight="101">
<environment>
<variable id="EPM_ORACLE_HOME" value="<Oracle Home-Location>”>
</environment>
...
</process-type>
</ias-component>親: <process-set>
有効な値: trueまたはfalse
管理対象プロセスが予期せずに終了した場合、つまり、要求によって停止したわけではない場合、このプロセスはOPMNによって自動的には再起動されません。
例:
<ias-component id="<Essbase-Cluster-Name>">
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1"
service-weight="101">
<environment>
...
</environment>
<process-set id="AGENT" restart-on-death="true">
<module-data>
<category id="start-parameters">
<data id="start-executable" value="$ESSBASEEXE"/>
<data id="agent-port" value="1423"/>
<data id="start-args" value="-b"/>
</category>
...
</module-data>
</process-type>
</ias-component>親: <process-set>
有効な値: 0より大きく3600より小さい整数
アクションごとにタイムアウト値を構成できます。
例:
<ias-component id="<Essbase-Cluster-Name>">
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1"
service-weight="101">
<environment>
...
</environment>
<start timeout="600" retry="2" />
<stop timeout="600"/>
<restart timeout="600" retry="2" />
</process-type>
</ias-component>