opmn.xmlの共通構成

この項では、フェイルオーバー用にEssbaseを構成するために必須のopmn.xmlファイル内の要素および属性について説明します。opmn.xmlファイルでは、すべての要素は<ias_component>構成要素内にあります。(このエントリはシステム・コンポーネントを表します。)

<port>

親: 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>

<topology>

親: notification-server

属性: none

topology要素には、クラスタ内のONSトポロジに関する構成情報が含まれます。

例:

<topology>
   <nodes list="adc2170731:6712,dadvmn0429:6712"/>
</topology>

<nodes>

親: topology

属性: list

nodes要素は、ローカルOPMNサーバーと同じクラスタ内のOPMNサーバーに固有のアドレスのリストを示します。ローカルのOPMNサーバーはリストに含まれています。複数のnodes要素を構成できます。

例:

<topology>
   <nodes list="adc2170731:6712,dadvmn0429:6712"/>
</topology>

service-failover="num"

有効な値: 0より大きい整数値

process-typeは、service-failoverとして構成できます(numがゼロでない場合)。これは、実行中のクラスタ内のどこかにnum個存在するプロセスを表します。このプロセスの実行は制限されており、1つのサービス・インスタンスで実行されるこのタイプのプロセスは1つのみです。このため、クラスタ内の特定のservice-failoverに対するプロセスの最大数は、クラスタ内の参加サービス・インスタンスの数を超えることはできません。クラスタ内でこのservice-failoverに参加するサービス・インスタンスの数よりnumの値の方が大きく、service-failoverがアクティブである(起動済である)場合、クラスタ全体の合計プロセス数がnumになるまで、クラスタに追加された各参加インスタンスによりそのservice-failoverプロセスが自動的に起動されます。

service-failoverプロセスは、サービスに参加する任意のインスタンス上で実行できます。これは、すべてのインスタンスが同じias-component idprocess-type idおよびprocess-set idを使用してサービスを構成する必要があることを意味します。サービス自体を対象とする場合、要求にはias-componentprocess-typeの両方を指定する必要があります(process-setを含めることもできます)。

service-failover process-typeに指定できるのは、1つのprocess-setのみです。1つのフェイルオーバー・サービスのプロセス数が常に1つとなるため、このprocess-setnumprocsminprocsまたは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>

service-weight="value"

デフォルト: 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>

restart-on-death

親: <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>

start/stop/restart timeout

親: <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>