ヘッダーをスキップ
Oracle Fusion Middleware Oracle Process Manager and Notification Server管理者ガイド
11gリリース1(11.1.1.1.3)
B60985-01
  ドキュメント・ライブラリへ
ライブラリ
製品リストへ
製品
目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

6 opmn.xmlの一般的な構成

この章では、OPMN opmn.xmlファイルの要素および属性の一般的な構成例を示し、またそれらの要素および属性について説明します。

この章は、次の項で構成されています。

6.1 opmn.xmlの要素および属性の例

例6-1に、opmn.xmlファイル内に記述できる要素と属性のうち、システム・コンポーネントに固有ではないものをすべて示します。

6.1.1 グローバル定義および構文

すべてのパス、モジュール・データ値および環境変数値は、次のグローバル変数を参照できます。これらのグローバル変数は、それぞれのプラットフォーム固有値に展開されます。

表6-1 グローバル変数および定義

グローバル変数 定義

ORACLE_HOME

ORACLE_HOMEへのフルパス

ORACLE_INSTANCE

ORACLE_INSTANCEへのフルパス

:

ライブラリ・パス(またはクラス・パス)の区切り文字(例: Linuxでは:、Microsoft Windowsでは;)

EXE_EXT

実行可能ファイルの拡張子(例: Linuxではなし、Microsoft Windowsでは.exe)

SO_EXT

共有ライブラリの拡張子(例: Linuxでは.so、Microsoft Windowsでは.dll)

SHELL_EXT

シェル・ファイルの拡張子(例: Linuxでは.sh、Microsoft Windowsでは.bat)


上で定義している変数はそれぞれ、LinuxやWindowsの環境変数と同じ構文を使用して参照される必要があります。たとえば、ORACLE_HOME{ORACLE_HOME}または%ORACLE_HOME%という参照はいずれも、ORACLE_HOMEへのフルパスに変換されます。

OPMNはまた、OPMNが実行されているプラットフォームに基づいて、すべてのパス内、モジュール・データ値内または環境変数値内のパス区切り文字を自動的に変換します。たとえば、/oracle/instances/ias1はLinux上ではこのまま変更されませんが、Microsoft Windows上ではOPMNによって\oracle\instances\ias1に変換されます。

OPMNは、^文字をエスケープ文字として使用して、その後ろに配置された文字のパス区切り文字変換を無効にします。したがって、^/は、解析後の文字列では常に/に変換されます。2つの^文字は1つの^に変換されます。

例6-1 一般的な構成の要素および属性

<opmn>
<log path="path" comp="comp-codes" rotation=-size="kBytes" rotation-hour="HOD"/>
<debug="path" comp="comp-codes" rotation-size="kBytes" rotation-hour="HOD"/>
   <notification-server interface="type">
      <ipaddr remote="ip; ip" request="ip; ip"/>
      <port local="port" remote="port" reqest="port"/>
      <ssl enabled="boolean" wallet-file="path" wallet-password="password" openssl-certfile="path"
       openssl-keyfile="path open" openssl-password="password" openssl-lib="path"/>


      <tune io-timeout="timeout" io-idle="interval" timeout="timeout"/>
   </notification-server>
   <process-manager insecure-remote-requests="boolean">
      <process-modules>
         <module path="path" tag="tag-id" status="state" cron="interval">
            <module-data>
               <category id="id">
                  <data id="id" value="value" process-conversion="boolean"/>
               </category>
            </module-data>
         <module-id id="module-id"/>
   </module>
</process-modules>
<ias-instance="id="ias-instance-name"" name="ias-instance-name"ORACLE_HOME="path">
   <environment>
      <variable id="id" value="value" append="boolean" process-conversion="boolean"/>
   </environment>
<!-- module-data-->
<ias-component id="component-id" id-matching="boolean" status="state">
   <!-- environment-->
   <!-- module-data-->
   <dependencies>
      <database db-connect-info="connect" infrastructure-key="key"timeout="depend-timeout"
       cache-timeout="cache-timeout"/>
      <OID address="address" infrastructure="boolean" timeout="depend-timeout"
       cache-timeout="cache-timeout">
         <ssl enabled="boolean" wallet-file="path" wallet-password="password">
      </OID>
      <OSSO host="hostname" port="port" URI="uri" timeout="depend-timeout"
       cache-timeout="cache-timeout">
         <ssl enabled="boolean" wallet-file="path" wallet-password="password">
      </OSSO>
      <managed-process ias-instance="ias-instance-id" ias-component="ias-component-id"
       process-type="process-type-id" process-set="process-set-id" autostart="boolean"
       autostop="boolean" timeout="depend-timeout"cache-timeout="cache-timeout"/>
   </dependencies>
   <process-type="process-type-id" module-id="module-id" status="state" working-dir="path">
      <!-- environment-->
      <!-- module-data-->
      <!-- dependencies-->
      <event-scripts>
         <pre-start path="path">
         <pre-stop path="path">
         <post-crash path="path">
      </event-scripts>
      <start timeout="timeout" retry="num"/>
      <stop timeout="timeout"/>
      <restart timeout="timeout" retry="num"/>
      <ping timeout="timeout" retry="num" interval="interval"/>
      <port id="id" range="range"/>
      <process-set id="process-set-id" restart-on-death="boolean" numprocs="num" minprocs="min"
       maxprocs="max" status="state" working-dir="path" parallel-requests="boolean">
         <!-- environment-->
         <!-- module-data-->
         <!-- dependencies-->
         <!-- event-scripts-->
         <!-- start:-->
         <!-- stop-->
         <!-- restart-->
         <!-- ping-->
         <!-- port-->
      </process-set>
      </process-type>
      </ias-component>
      </ias-instance>
      <launch-targets>
      <launch-target id="id">
      <exec path="path"/>
      <argument value="argument"/>
      <timeout value="seconds"/>
      <max-concurrency value="number"/>
      </launch-target>
      </launch-targets>
   </process-manager>
</opmn>

6.2 opmn.xmlの要素および属性の説明

この項では、システム・コンポーネントに固有ではない、opmn.xmlファイル内の要素と属性について説明します。この項では、さらに、それぞれの要素の属性についても説明します。

opmn


必須: ◎
デフォルト値: なし
親要素: なし
属性: なし

<opmn>は、opmn.xmlファイル内に記述される最上位の要素です。

log


必須: ×
デフォルト値: 「属性」を参照
親属性: <opmn>
属性: pathcomprotation-sizerotation-hour

OPMNのログ・メカニズムの構成を定義します。

path="path" 



必須: ◎
デフォルト値: ORACLE_INSTANCE/diagnostics/logs/OPMN/opmn/opmn.log
有効値: OPMNログ・ファイルのパス名

comp="comp-codes"


必須: ◎
デフォルト値: internalonspm
有効値: comp-codesのリスト。comp-codesリストの項目は、セミコロンを使用して区切る必要があります。

comp属性では、ロギング対象イベントのコンポーネント・コードを指定します。それらのコードは、次のコマンドを使用して、OPMNのランタイム時に動的に表示したり、変更したりできます。

> opmnctl query target=log
> opmnctl set target=log comp=<comp-codes>

ログのデフォルトcomp-codesにはすでに、すべての考えられるログ・メッセージが含まれているため、その値を変更しないことをお薦めします。

次のcomp-codesが、opmn.xmlファイルのログ要素およびデバッグ要素に表示されます。

onsコンポーネントもpmコンポーネントも、component[subcomponents]の構文を使用して指定できるサブコンポーネントから構成されています。指定できるコンポーネントは、onsまたはpm(両方とも指定する場合はセミコロンで区切る)です。コンポーネントの有効なサブコンポーネントのリストは、それぞれカンマで区切ります。たとえば、comp="ons[local,listener];pm"のように指定します。

表6-2に、ONSコンポーネントのコードの一覧を示します。

表6-2 ONSコンポーネントのコード

ONS属性 定義

all

すべてのサブコンポーネント

local

ローカル情報

listener

リスナー情報

discover

検出(サーバーまたはマルチキャスト)情報

servers

ファームに接続されていて現在稼働中のリモート・サーバー

topology

現在のファーム全体のサーバー接続トポロジ

server

リモート・サーバー接続情報

client

クライアント接続情報

connect

全般的な接続情報

subscribe

クライアント・サブスクリプション情報

message

通知の受信および処理情報

deliver

通知配信情報

special

特殊な通知処理

internal

内部リソース情報

secure

SSL操作情報

workers

ワーカー・スレッド


表6-3に、PMコンポーネントのコードの一覧を示します。

表6-3 PMコンポーネントのコード

PM属性 定義

all

すべてのサブコンポーネント

requests

HTTP(ユーザー)リクエスト

remote

リモートHTTPリクエスト

scheduler

スケジューラ・スレッドおよびリソース情報

monitor

モニター・スレッド情報

workers

ワーカー・スレッド

process

管理対象プロセス

depend

依存性処理

internal

内部リソース

schedjobs

周期的にスケジューリングされるジョブ

procjobs

プロセスごとにスケジューリングされるジョブ

dms

DMS処理

modules

process module情報。出力が得られるのは、modLog()(デバッグ・ログの場合はmodDebug)関数をコールするモジュールのみです。modules(module-id)を使用すると、特定のモジュールまたはそのリストを指定できます。複数のmodule-idを指定する場合は、表示するそれぞれのmodule-idをコロンで区切って、modules (module1-id:module2-id)のように指定します。構成され、有効になっているモジュールと一致しないmodule-idは処理されません。


onsまたはpmの各サブコンポーネントには、先頭に否定文字!を付けることができます。これにより、そのサブコンポーネントの選択が解除されます。allと指定した後に、特定のサブコンポーネントを否定することによって、そのサブコンポーネントを表示対象から除外できます。

コンポーネントおよびサブコンポーネントは、検出される順序に従って設定または否定されます。ons[all,!topology]と指定すると、topologyを除くonsのすべてのサブコンポーネントが設定されます。一方、ons[!topology,all]と指定すると、topologyを含むonsのすべてのサブコンポーネントが設定されます。

rotation-size="kBytes"


必須: ×
デフォルト値: なし
有効値: 整数

rotation-sizeは、ログ・ファイルの最大サイズ(KB単位)です。ログ・ファイルのサイズが構成された値に達すると、OPMNのロギング・メカニズムによりログが閉じられ、そのログの名前がタイムスタンプを接尾辞とする名前に変更されて、新しいログ・ファイルが作成されます。この属性は、rotation-hourとともに使用できます。

rotation-hour="HOD"


必須: ×
デフォルト値: なし
有効値: 0〜23の整数値

指定した時刻になると、OPMNのロギング・メカニズムによりログが閉じられ、そのログの名前がタイムスタンプを接尾辞とする名前に変更されて、新しいログ・ファイルが作成されます。この属性は、rotation-sizeとともに使用できます。

debug


必須: ×
デフォルト値: 「属性」を参照
親属性: <opmn>
属性: pathcomprotation-sizerotation-hour

debug要素には、OPMNデバッグ・ログ・メカニズムの構成定義が入ります。


注意:

opmn.debugファイルの使用を有効化する前に、Oracleサポート・サービスにお問い合せください。Oracleサポート・サービスでは、opmn.debugファイルを使用してOPMNの問題のデバッグおよび診断を実行します。opmn.debugファイル内のメッセージは通常、ユーザーに簡単に理解できるものではありません。

path="path"


必須: ◎
デフォルト値: ORACLE_INSTANCE/diagnostics/logs/OPMN/opmn/opmn.log
有効値: OPMNデバッグ・ログ・ファイルのパス名

comp="comp-codes"


必須: ◎
デフォルト値: なし
有効値: comp-codesのリスト。comp-codesリストの項目は、セミコロンを使用して区切る必要があります。

comp属性では、ロギング対象イベントのコンポーネント・コードを指定します。それらのコードは、次のコマンドを使用して、OPMNのランタイム時に動的に表示したり、変更したりできます。

> opmnctl query target=log
> opmnctl set target=log comp=<comp-codes>

OPMNをリロードすると、opmn.xmlファイル内の構成値に戻されます。

次のcomp-codesが、opmn.xmlファイルのログ要素およびデバッグ要素に表示されます。

onsコンポーネントもpmコンポーネントも、component[subcomponents]の構文を使用して指定できるサブコンポーネントから構成されています。指定できるコンポーネントは、onsまたはpm(両方とも指定する場合はセミコロンで区切る)です。コンポーネントの有効なサブコンポーネントのリストは、それぞれカンマで区切ります。たとえば、comp="ons[local,listener];pm"のように指定します。

表6-4に、ONSコンポーネントのコードの一覧を示します。

表6-4 ONSコンポーネントのコード

ONS属性 定義

all

すべてのサブコンポーネント

local

ローカル情報

listener

リスナー情報

discover

検出(サーバーまたはマルチキャスト)情報

servers

ファームに接続されていて現在稼働中のリモート・サーバー

topology

現在のファーム全体のサーバー接続トポロジ

server

リモート・サーバー接続情報

client

クライアント接続情報

connect

全般的な接続情報

subscribe

クライアント・サブスクリプション情報

message

通知の受信および処理情報

deliver

通知配信情報

special

特殊な通知処理

internal

内部リソース情報

secure

SSL操作情報

workers

ワーカー・スレッド


表6-5に、PMコンポーネントのコードの一覧を示します。

表6-5 PMコンポーネントのコード

PM属性 定義

all

すべてのサブコンポーネント

requests

HTTP(ユーザー)リクエスト

remote

リモートHTTPリクエスト

scheduler

スケジューラ・スレッドおよびリソース情報

monitor

モニター・スレッド情報

workers

ワーカー・スレッド

process

管理対象プロセス

depend

依存性処理

internal

内部リソース

schedjobs

周期的にスケジューリングされるジョブ

procjobs

プロセスごとにスケジューリングされるジョブ

dms

DMS処理

modules

process module情報。出力が得られるのは、modLog()(デバッグ・ログの場合はmodDebug)関数をコールするモジュールのみです。modules(module-id)を使用すると、特定のモジュールまたはそのリストを指定できます。複数のmodule-idを指定する場合は、表示するそれぞれのmodule-idをコロンで区切って、modules (module1-id:module2-id)のように指定します。構成され、有効になっているモジュールと一致しないmodule-idは処理されません。


onsまたはpmの各サブコンポーネントには、先頭に否定文字!を付けることができます。これにより、そのサブコンポーネントの選択が解除されます。allと指定した後に、特定のサブコンポーネントを否定することによって、そのサブコンポーネントを表示対象から除外できます。

コンポーネントおよびサブコンポーネントは、検出される順序に従って設定または否定されます。ons[all,!topology]と指定すると、topologyを除くonsのすべてのサブコンポーネントが設定されます。一方、ons[!topology,all]と指定すると、topologyを含むonsのすべてのサブコンポーネントが設定されます。

rotation-size="kBytes"


必須: ×
デフォルト値: なし
有効値: 整数

rotation-sizeは、ログ・ファイルの最大サイズ(KB単位)です。ログ・ファイルのサイズが構成された値に達すると、OPMNのロギング・メカニズムによりログが閉じられ、そのログの名前がタイムスタンプを接尾辞とする名前に変更されて、新しいログ・ファイルが作成されます。

rotation-size属性は、rotation-hour属性とともに使用できます。

rotation-hour="HOD"


必須: ×
デフォルト値: なし
有効値: 0〜23の整数値

ログ・ファイルで使用されるrotation-hour属性は、指定した時刻になると、OPMNのロギング・メカニズムによりログ・ファイルが閉じられ、そのログの名前がタイムスタンプを接尾辞とする名前に変更されて、新しいログ・ファイルが作成されます。この属性は、rotation-size属性とともに使用できます。

notification-server


必須: ◎
デフォルト値: なし
親要素: <opmn>
属性: interface

notification-server要素は、OPMNのONS部分を構成する要素を構成するか、またはその要素を含みます。

interface="type"


必須: ×
デフォルト値: 任意
有効値: 任意、IPv6またはIPv4

OPMNは、デフォルトでIPv6とIPv4の両方のネットワーク・インタフェースをサポートしています(IPv6のサポートの詳細は第3.5項を参照)。OPMNは、リスナー・ポートを両方のインタフェースにバインドし、いずれかのインタフェースを使用して接続を試みます。アドレスが使用可能な場合、OPMNは常にIPv6インタフェースを最初に使用することを試みます。これは、Sun社のJava仮想マシン(JVM)のデフォルトの動作と同じです。

他のOPMNサーバーへ接続する場合は、IPv4とIPv6の両方で同じネットワークを使用する必要があります。たとえば、IPv4インタフェースが使用可能であっても、IPv6によってIPv6ネットワーク・インタフェースのみが強制的に使用されます。したがって、OPMNは、同じネットワーク・インタフェースを使用する他のOPMNサーバーとの間でのみ接続が可能です。同じネットワーク・インタフェースのサポートを提供していないシステムにIPv4またはIPv6を構成すると、OPMNは起動しません。

ipaddr


必須: ◎
デフォルト値: なし
親要素: <notification-server>
属性: remote、request

iapddr要素には、ONSリスナー・スレッドおよびホスト・ポートのバインドに使用するホスト情報を指定します。

remote="ip; ip"


必須: ×
デフォルト値: なし
有効値: ONSが自身のリモート・ポートをバインドするIPアドレス(IPv4またはIPv6の形式で指定)またはホスト名。ONSを強制的に特定のIPアドレスのセットにバインドするように、IP値のリストを構成できます。リスト内の各IP値は、セミコロンで区切る必要があります。

remote属性には、ONSが自身のリモート・ポートをバインドするIPアドレスまたはホスト名を指定します。リモート・ポートは、ONS間の通信に使用されます。ONS間の通知の送受信はリモート・ポートを介して行われ、またOPMNは、ONSを使用し、リモート・ポートを介して他のOPMNサーバーにリモート・リクエストをルーティングします。

request="ip; ip"


必須: ×
デフォルト値: デフォルト・システムのホスト名のIPアドレス
有効値: ONSが自身のリクエスト・ポートをバインドするIPアドレス(IPv4またはIPv6の形式で指定)またはホスト名。ONSを強制的に特定のIPアドレスのセットにバインドするように、IP値のリストを構成できます。リスト上の各値は、セミコロンで区切る必要があります。

request属性には、ONSが自身のリモート・ポートをバインドするIPアドレスまたはホスト名を指定します。このポートは、ステータス情報の取得にのみ使用できます。

port


必須: ◎
デフォルト値: なし
親要素: <notification-server>
属性: local、remote、request

port要素には、ONSリスナー・スレッドおよびホストとポートのバインドに使用するホスト情報が含まれます。

local="port"


必須: ◎
デフォルト値: なし
有効値: 有効なポート番号

local属性には、ONSのローカル・ポートの値を指定します。

remote="port"


必須: ×
デフォルト値: なし
有効値: ポート番号

remote属性には、ONSのリモート・ポートの値を指定します。

request="port"


必須: ×
デフォルト値: なし
有効値: ポート番号

request属性には、ONSのリクエストportの値を指定します。

ssl


必須: ×
デフォルト値: なし
親要素: <notification-server>
属性: enabled、wallet-file、wallet-passwordopenssl-certfileopenssl-keyfileopenssl-passwordおよびopenssl-lib

ssl要素は、ONS間のセキュリティおよび認証構成に使用されます。Oracle SSLレイヤー(wallet-fileおよびwallet-password)またはOpen SSLレイヤー(openssl-certfileopenssl-keyfileopenssl-passwordおよびopenssl-lib)のいずれかを構成できます。両方は使用できません。Oracle SSLレイヤーとOpen SSLレイヤーを同じopmn.xmlファイル内に構成すると、サーバーが起動しません。

Oracle SSLレイヤーは、Oracle Fusion MiddlewareまたはOracle Database製品のいずれかに付属するライブラリを使用します。Oracle SSLレイヤーは、標準のOracleウォレットを使用します。Open SSLレイヤーは、暗号化ハードウェアに対してより優れたパフォーマンス、ドキュメントおよびサポートを提供します。また、Open SSLレイヤーの方が、OPMN内部で使用するハードウェア領域が少なくなります。Open SSLは、セキュリティ・プロトコルを開発するためのオープン・ソースのツール・キットです。詳細は、次を参照してください。

http://www.openssl.org

enabled="boolean"


必須: ◎
デフォルト値: なし
有効値: trueまたはfalse

enabled値がtrueに設定されると、ONSでSSL接続が有効になります。

wallet-file="path"


必須: ×(Oracle SSLでのみ使用)
デフォルト値: なし
有効値: Oracleウォレットのパス名

wallet-password="password"


必須: ×(Oracle SSLでのみ使用)
デフォルト値: なし
有効値: ウォレットのパスワードに使用する文字列

wallet-password属性は、指定されたOracleウォレットのパスワード文字列です。

openssl-certfile="path"


必須: ◎(Open SSLでのみ使用)
デフォルト値: なし
有効値: Open SSLの証明書ファイルのパス名

openssl-keyfile="path"


必須: ◎(Open SSLでのみ使用)
デフォルト値: なし
有効値: Open SSLの鍵ファイルのパス名

openssl-password="password"


必須: ◎(Oracle SSLでのみ使用)
デフォルト値: なし
有効値: openssl-keyfileのパスワードに使用する文字列

openssl-password属性は、指定されたopenssl-keyfileに使用するパスワード文字列です。

openssl-lib="path"


必須: ×(Open SSLでのみ使用)
デフォルト値: なし
有効値: Open SSLライブラリのパス名

tune


必須: ×
デフォルト値: 「属性」を参照
親要素: <notification-server>
属性: io-timeoutio-idletimeout

tune要素には、Tuneable Notification ServerのONSパラメータに関する情報が含まれます。

io-timeout="timeout"


必須: ×
デフォルト値: 30
有効値: 0または4〜3600の整数

io-timeoutは、ローカル・サーバーに直接接続された各リモートOPMN(またはONS)サーバーで使用される、ソケットの読取りタイムアウト値(秒単位)です。リモート・サーバーがio-timeoutに構成された時間内にローカル・サーバーとの接続を介してデータを受信しないと、リモート・サーバーで接続がタイムアウトになり、ソケットが閉じられます。io-timeout値は、リモートOPMN(またはONS)サーバーでローカル・サーバーに対して使用されるタイムアウト時間です。

io-timeout値は、さらに、ONS接続が切断された後のリソース・クリーンアップのタイムアウトとしても使用されます。タイムアウト前に接続が再確立されると、リソースは新しい接続に転送されます。接続が再確立されない場合、リソースはタイムアウト時間が経過した後に解放されます。

ビジー状態またはオーバーロードしているシステムで実行されているサーバーでは、io-timeoutパラメータの値を大きくする必要があります。

値0を指定すると、ローカル・サーバーに対するリモート・サーバー上のio-timeoutチェックが無効化されます。このio-timeoutにより、フェイルオーバー参加状態、重複したONS通知の検出状態および停止中の接続に対するキューに格納された通知のクリーンアップが無効になります。通知は接続が再確立されるまでキューに格納され続けるため、タイムアウト・チェックが無効化され、接続が再確立されない場合、リモートOPMNまたはONSサーバーのメモリー使用量が増加し続ける可能性があります。io-timeoutパラメータの値は、デバッグ時にのみ0に設定してください。

構成された値が0以外で最小値より小さい場合は、最小値に設定され、最大値より大きい場合は、最大値に設定されます。

io-idle="interval"


必須: ×
デフォルト値: io-timeout - (io-timeout / 3)
有効値: 2〜(io-timeout - 2)の整数

ローカル・サーバーの直接接続先の各リモート・サーバーにメッセージを送信する時間間隔(秒単位)を指定します。構成された時間間隔内にローカル・サーバーから任意のリモート・サーバーへ通常のネットワーク通信が行われなかった場合は、リモート・サーバーにメッセージが送信されます。

io-idleパラメータを設定すると、アイドルであるが応答するOPMNサーバーがリモート・サーバーに接続しているときに、その接続がタイムアウトにならなくなります。ビジー状態のシステムでは、この値をio-timeout値よりもはるかに小さい値に設定する必要があります。これにより、リモート・サーバーがタイムアウトを検出する前に、ローカル・サーバーがアイドル・メッセージをキューに入れ、リモート・サーバーに送信できる十分な時間を確保します。

io-timeoutが0の場合、io-idle属性は無視されます。構成された値が最小値より小さい場合は、最小値に設定され、最大値より大きい場合は、最大値に設定されます。

timeout="timeout"


必須: ×
デフォルト値: 20
有効値: 1〜3600の整数

timeoutパラメータは、接続試行およびクライアント接続書込みのためローカルOPMNサーバーに対して使用されるソケット・タイムアウト値(秒単位)を指定します。ローカルOPMNサーバーへの接続のハンドシェイクが、構成されたタイムアウト値よりも長くかかる場合は、ソケットが閉じられ、接続リソースが使用可能になります。クライアント接続ソケットでの書込みが、構成されたタイムアウト値よりも長くかかる場合は、ソケットが閉じられ、接続リソースが使用可能になります。

process-manager


必須: ◎
デフォルト値: なし
親要素: <opmn>
属性: insecure-remote-requests

process-managerには、OPMNのPM部分に対する構成の定義が含まれます。

insecure-remote-requests="boolean"


必須: ×
デフォルト値: false
有効値: trueまたはfalse

insecure-remote-request属性は、セキュリティ機能が構成されるまでリクエストを無効にする、セキュリティ・チェックを行うかどうかを指定します。デフォルトでは、ONSのSSLがenabledでありウォレット・ファイルが認証用に構成されている場合にのみ、OPMNがリモートOPMNサーバーからルーティングされたリクエストの起動、停止、再起動、シャットダウンおよび再ロードを許可します。


注意:

insecure-remote-request属性をtrueに設定すると、セキュリティ・チェックが無効になるため、セキュリティ機能が構成されていない状態でこれらのリクエストをリモートで発行できるようになります。

insecure-remote-requests属性をtrueに設定することには重大なセキュリティ上のリスクを伴うため、セキュリティを強化したファイア・ウォールを設定するか、外部ネットワークから完全に切断した状態で、接続したOPMNサーバーをテストする場合にのみ使用してください。


process-modules


必須: ◎
デフォルト値: なし
親要素: <process-manager>
属性: なし

process moduleは、特定のprocess-type要素のセットをサポートするように設計されており、それらのprocess-type要素が構成されている場合にのみ必要となります。PMは、指定したprocess moduleごとにライブラリを動的にロードします。

module


必須: ◎
デフォルト値: なし
親要素: <process-modules>
属性: path、tag、status、cron

module要素は、PMに対してprocess-type固有のサポートを提供するために使用されます。各モジュールは、共有ライブラリとして実装されます。モジュールは、一連の標準機能をエクスポートし、PMのprocess module APIを使用します。モジュールは、このモジュールがサポートするprocess-typesのリストを備える必要があります。1つの構成済process moduleのみ、特定のprocess-typeをリストします。2つのモジュールに同じprocess-typeをリストすることはできません。

path="path"


必須: ◎
デフォルト値: なし
有効値: モジュールの共有ライブラリのパス名

path属性には、共有ライブラリ・ファイルのパス名を指定する必要があります。ライブラリ・ファイルには、Linuxの場合は.so、Microsoft Windowsの場合は.dllというシステム接尾辞が付きます。接尾辞は省略でき、その場合、接尾辞はOPMNによって自動的に追加されます。パスを指定するときには、ORACLE_HOMEを使用できます。

tag="tag-id"


必須: ×
デフォルト値: path要素で指定される値
有効値: モジュールを一意に識別する文字列

このtag属性によってモジュールを識別します。モジュールは、PMのログ・ファイルにエラーを記録する場合に、またはリクエストへのレスポンスの一部として、自身のタグの値をレポートできます。必須ではありませんが、この属性に意味のある値を設定すると、プロセス管理の問題の追跡に役立ちます。

status="state"


必須: ×
デフォルト値: enabled
有効値: critical、enabledまたはdisabled

モジュールをenabledに設定すると、PMは、モジュールの初期化機能を起動してコールするときに自身の共有ライブラリをロードし、disabledに設定すると、モジュール・エントリは完全に無視されます。モジュールのprocess-typesは、opmn.xmlファイル内に構成されている場合、さらにdisabledに設定されている必要があります。critical状態は、モジュールの初期化が失敗した場合にOPMNが致命的なエラー・コードで終了する点を除き、enabled状態と同じです。

cron="interval"


必須: ×
デフォルト値: なし
有効値: 整数

モジュールのcronコールバック機能をコールする時間間隔を秒単位で指定します。cronコールバックをサポートしないモジュールに対してcronの時間間隔を設定することはできません。モジュールを設計した場合以外、この属性の追加も変更も行わないでください。

module-data


必須: ×
デフォルト値: なし
親要素: <module>、<ias-instance>、<ias-component>、<dependencies>、<process-set>
属性: なし

module-dataブロックが使用されるのは、特定のモジュールにのみ意味のある、モジュール固有の名前と値のペアを定義する場合です。各module-dataブロックは、名前と値のデータのペアを含むいくつかのカテゴリにまとめられます。

module-dataブロックは、opmn.xmlファイル内の複数の要素に対して定義でき、OPMNは、process-setレベルに、それ以上のレベルで定義されたすべての値を含む集約的なmodule-dataブロックを作成します。この階層内に同じcategory iddata idを持つ複数の定義が存在する場合は、最下位レベルに定義された値が使用されます。

表6-5に、階層内の各レベル(一番上が最上位レベル)で定義されたmodule-dataと、すべてのmodule-data定義のprocess-setレベルにおける結果の共用体を示します。

表6-6 module-dataの階層

モジュール 定義

ias-instance

<category id="CatA">
   <data id= "DataAA" value="aaaa"/>
</category>
ias-component
<category id="CatA">
   <data id= "DataAB" value="abab"/>
</category>
<category id="CatB">
   <data id= "DataBA" value="baba"/>
</category>
module
<category id="CatA">
   <data id= "DataAC" value="acac"/>
</category>
process-type
<category id="CatA">
   <data id= "DataAA" value="XXXX"/>
</category>
process-set
<category id="CatB">
   <data id= "DataBB" value="bbbb"/>
</category>
RESULT
<category id="CatA">
   <data id= "DataAA" value="XXXX"/>
   <data id= "DataAB" value="abab"/>
   <data id= "DataAC" value="acac"/>
</category>
<category id="CatB">
   <data id= "DataBA" value="baba"/>
   <data id= "DataBB" value="bbbb"/>
</category>

category


必須: ◎
デフォルト値: なし
親要素:
module-data
属性: id

category要素は、module-dataブロック内の編成レベルを表します。

id="id"


必須: ◎
デフォルト値: なし
有効値: 文字列

このid文字列によってデータ・カテゴリを識別します。単一のmodule-dataブロック内の各category idは、一意にする必要がありますが、複数のmodule-dataブロックに、同じdata category idを含めることができ、その場合カテゴリは、関連していると見なされます。

data


必須: ◎
デフォルト値: なし
親要素: <category>
属性: id、value、process-conversion

module-dataカテゴリ内のデータ名の値を定義します。

id="id"


必須: ◎
デフォルト値: なし
有効値: 文字列

この文字列によってデータ属性を識別します。1つのカテゴリ内の各data idは一意にする必要がありますが、複数のカテゴリに同じデータIDを含めることができます。同じIDを持つ異なるカテゴリ内に定義されている、他のデータ要素と同じIDを持つデータ要素は互いに関連します。

value="value"


必須: ◎
デフォルト値: なし
有効値: 文字列

データ要素のidに関連付けられた値文字列です。data値が(process-set以上の任意のレベルで)定義されているprocess-set内(process-set以上の任意のレベル)で定義された環境変数のうち、この値文字列内で$variableまたは%variable%として参照されているものは、変数値に展開されます。

process-conversion="boolean"


必須: ×
デフォルト値: true
有効値: trueまたはfalse

process-conversion属性を使用することで、区切り文字を設定できます。OPMNは、デフォルトで、data値文字列に含まれるスラッシュを、OPMNが稼働しているシステムに応じたディレクトリ・パスの区切り文字に変換します。UNIXでは\文字が/文字に、Windowsでは/文字が\文字に変換されます。この変換を無効にするには、この属性をfalseに設定します。

process-conversionがtrueの場合、OPMNでは、^文字をエスケープ文字として使用し、その後に続く文字の変換を無効にすることに注意してください。したがって、Windowsシステムでは、文字列中の^/は/となります。結果として生成される文字列内に^文字を指定する必要がある場合は、^文字を2つ並べて指定します。つまり、^^は^となります。

module-id


必須: ◎
デフォルト値: なし
親要素: <module>
属性: id

module-id名は、プロセスのタイプを定義し、この構成をprocess moduleに関連付けます。

この識別子は、各process-typeで使用され、そのprocess-typeをサポートするモジュールを指定します。複数のmodule-idsを持つモジュールを構成できます。

id="module-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

ias-instance


必須: ◎
デフォルト値: なし
親要素: <process-manager>
属性: id

Oracleインスタンスの構成を定義します。各OPMNに対してサポートされるias-instanceは1つのみです。

id = ias-instance-id; name = ias-instance-name

id="ias-instance-name"


必須: ◎
デフォルト値: なし
有効値: 文字列

この文字列には、ias-instanceのIDを指定します。

name="ias-instance-name"


必須: ×
デフォルト値: ias-instance-id
有効値: 文字列

name文字列には、ias-instanceの名前を指定します。この値を使用して、Oracleインスタンスが識別されます。

environment


必須: ◎
デフォルト値: 次の段落を参照
親要素: <ias-instance>、<ias-component>、<process-type>、<process-set>
属性: なし

module-dataブロックと同様に、environmentブロックはopmn.xmlファイル内の複数の要素に対して定義でき、OPMNは、process-setレベルに、それ以上のレベルで定義されたすべての値を含む集約的なenvironmentブロックを作成します。この階層内に同じidを持つ複数の定義が存在する場合は、最下位レベルに定義された値が使用されます。

OPMNは、それぞれの管理対象プロセスについて一連のデフォルトの環境変数を提供するとともに、管理対象Javaプロセスについて一連のJavaシステム・プロパティを提供します。

表6-7では、環境変数について説明します。

表6-7 環境変数

環境変数 定義

ORACLE_HOME

Oracleホームへのフルパス

ORACLE_INSTANCE

Oracleインスタンス・ホームへのフルパス

INSTANCE_NAME

Oracleインスタンスの名前

PROCESS_UID

一意のプロセスID

OPMN_UID

PROCESS_UIDのシノニム

PROCESS_INDEX

プロセスのインデックス

OPMN_INDEX

PROCESS_INDEXのシノニム

COMPONENT_NAME

コンポーネントの名前

COMPONENT_TYPE

コンポーネントのタイプ

COMPONENT_CONFIG_PATH

コンポーネントに関する、ディスク上の構成ファイルへの絶対パス

COMPONENT_LOG_PATH

コンポーネントに関する、ディスク上のログ・ファイルへの絶対パス

ORACLE_NLS

デフォルト値はOPMN環境のORACLE_NLS

OPMN_ENV_LC_ALL

デフォルト値はOPMN環境のOPMN_ENV_LC_ALL

OPMN_ENV_LANG

デフォルト値はOPMN環境のOPMN_ENV_LANG

OPMN_ENV_NLS_LANG

デフォルト値はOPMN環境のOPMN_ENV_NLS_LANG

LD_LIBRARY_PATH

デフォルト値はORACLE_HOME/lib(Microsoft Windows以外)

SHELL

デフォルト値は/bin/sh(Microsoft Windows以外)

PATH

Linuxのデフォルト値:

ORACLE_HOME/bin:ORACLE_HOME/jdk/bin:/bin:/usr/bin:/usr/local/bin

Microsoft Windowsのデフォルト値:

%ORACLE_HOME%\lib;%ORACLE_HOME%\bin;%ORACLE_HOME%\jdk\bin;%SystemRoot%;%SystemRoot%\system32

COMSPEC

デフォルト値はシステムの%ComSpec%値(Microsoft Windowsのみ)

SystemRoot

デフォルト値はシステムの%SystemRoot%値(Microsoft Windowsのみ)

SystemDrive

デフォルト値はシステムの%SystemDrive%値(Microsoft Windowsのみ)

ORACLE_ADMIN_REGISTERED

Oracleインスタンスが管理サーバーに登録されている場合はtrue

ORACLE_ADMIN_HOST

関連付けられている管理ホスト(使用できない場合はN/A)

ORACLE_ADMIN_PORT

関連付けられている管理ポート(使用できない場合はN/A)

ORACLE_ADMIN_PROTOCOL

関連付けられている管理プロトコル(使用できない場合はN/A)

ORACLE_ADMIN_USERNAME

関連付けられている管理ユーザー名(使用できない場合はN/A)


表6-8では、すべての管理対象Javaプロセスに設定されるシステム・プロパティ(プロセスモジュールによってOPMNに対してそのようにフラグ付けされたもの)について説明します。

表6-8 システム・プロパティ

環境変数 定義

oracle.process.uid

一意のプロセスID

oracle.opmn.uid

oracle.process.uidのシノニム

oracle.process.index

プロセスのインデックス

oracle.opmn.index

oracle.process.indexのシノニム

oracle.home

Oracleホームへのフルパス

oracle.instance

Oracleインスタンス・ホームへのフルパス

oracle.instance.name

Oracleインスタンスの名前

oracle.component.name

コンポーネントの名前

oracle.component.type

コンポーネントのタイプ

oracle.component.configpath

コンポーネントに関する、ディスク上の構成ファイルへの絶対パス

oracle.component.logpath

コンポーネントに関する、ディスク上のログ・ファイルへの絶対パス

oracle.admin.registered

Oracleインスタンスが管理サーバーに登録されている場合はtrue

oracle.admin.host

関連付けられている管理ホスト(使用できない場合はN/A)

oracle.admin.port

関連付けられている管理ポート(使用できない場合はN/A)

oracle.admin.protocol

関連付けられている管理プロトコル(使用できない場合はN/A)

oracle.admin.username

関連付けられている管理ユーザー名(使用できない場合はN/A)


variable


必須: ◎
デフォルト値: なし
親要素: <environment>
属性: id、value、append、process-conversion

variable要素は、環境変数の名前と値を定義します。

id="id"


必須: ◎
デフォルト値: なし
有効値: 文字列

idには、環境変数の名前を指定します。environment idは、environmentブロック内で重複してもかまいませんが、最後に定義した値が前に定義した値よりも優先されます。異なる要素のenvironmentブロック内で、同じenvironment idを定義できますが、最下位レベルに定義した値が、それより上のレベルで定義した値よりも優先されます。

value="value"


必須: ◎
デフォルト値: なし
有効値: 文字列

環境変数の値を指定します。値文字列内で$variableまたは%variable%として参照されている環境変数は、変数値に展開されます。同じ環境変数が自身を参照して、上位レベルの定義を使用したり、これと同じenvironmentブロック内の前の位置にある定義やOPMN環境内の定義を使用したりできます。

環境変数を参照する場合は、Linuxシェル構文の$variableまたは${variable}、あるいはMicrosoft Windows形式の%variable%を使用できます。何も定義されていない変数を参照した場合、変数はそのまま維持されるので、value="_notdefined_"は何も変更されません。

たとえば、次のenvironmentブロックでは、accumulateに"foobar"という値を指定しています。

<environment>
   <variable id="accumulate" value="foo">
   <variable id="accumulate" value="${accumulate}bar">
</environment>

append="boolean"


必須: ×
デフォルト値: false
有効値: trueまたはfalse

この属性に対して値trueを指定することにより、新しい環境変数値を以前に定義した値に追加するようOPMNに強制できます。値と値との間はシステム・ライブラリ・デリミタ(Linuxの場合は:(コロン)、Microsoft Windowsの場合は;(セミコロン))で区切られます。これは、CLASSPATHなどの変数に使用する値をまとめる際に役立ちます。

たとえば、次のenvironmentブロックでは、LinuxシステムのCLASSPATH/foo:/barという値を指定しています。

<environment>
   <variable id="CLASSPATH" value="/foo">
   <variable id="CLASSPATH" value="/bar" append="true">
</environment>

process-conversion="boolean"


必須: ×
デフォルト値: true
有効値: trueまたはfalse

ias-component


必須: ◎
デフォルト値: なし
親要素:<ias-instance>
属性: id、id-matching、statustype

ias-componentは、管理を目的としてprocess-typeを論理グループにまとめたものです。

id="component-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

id属性は、ias-instance内のias-componentを一意に識別します。

id-matching="boolean"


必須: ×
デフォルト値: false
有効値: trueまたはfalse

OPMNはデフォルトで、コンポーネントのid-matching属性がtrueに設定されている場合を除いて、すべての構成済ias-componentと一致するias-componentを指定しないようリクエストします。この属性がtrueに設定されている場合は、ias-componentやそのias-componentに対して構成された任意のprocess-typeまたはprocess-setに反映されるためには、OPMNリクエストにias-component idが明示的に含まれている必要があります。

status="state"


必須: ×
デフォルト値: enabled
有効値: enabledまたはdisabled

ias-componentenabledに設定すると、OPMNは構成されたすべての属性および要素を解析して、OPMNに対する操作のリクエストを許可し、disabledに設定すると、ias-componentエントリは完全に無視されます。

type="component-type"


必須: ×
デフォルト値: なし
有効値: 文字列

type属性を使用すると、同じias-instance内のias-component間の関係を指定できます。

この属性を構成した場合、component-typeは、プロセスごとのCOMPONENT_TYPE環境変数(またはJavaプロセスのoracle.component.typeシステム・プロパティ)の値に使用されるとともに、COMPONENT_CONFIG_PATHおよびCOMPONENT_LOG_PATHoracle.component.configpathおよびoracle.component.logpath)によって指定されたパスのtype要素に使用されます。component-typeが構成されていない場合は、process-type id属性がこれらの文字列の構成で使用されます。

dependencies


必須: ×
デフォルト値: なし
親要素: <ias-component>、<process-type>、<process-set>
属性: なし

OPMNは、dependenciesを使用して、プロセスを起動するかどうかを決定します。module-dataおよびenvironmentブロックと同様に、dependenciesブロックは、opmn.xmlファイル内の複数の要素に対し定義でき、OPMNは、process-setレベルに、それ以上のレベルで定義されたすべての依存性が含まれた集約的な依存性リストを作成します。重複する依存性が異なるレベルで定義されている場合、プロセスを起動する前にその依存性に対する重複チェックが実行されます。OPMNは、process-setレベルに、それ以上のレベルで定義されたすべての依存性が含まれた集約的な依存性リストを作成します。重複する依存性が異なるレベルで定義されている場合、プロセスを起動する前にその依存性に対する重複チェックが実行されます。

依存性のタイプは、主に外部と内部の2つに分けられます。外部依存性は、OPMNが管理しないリソースに使用されます。たとえば、Fusion Middleware Controlコンソールです。

外部プログラムは、リソースのチェックを行うためにOPMNによって実行されます。内部依存性は、システム・コンポーネント・プロセス(ユニット)に使用され、リモートのOPMN上で管理されるプロセスもこれに含まれます。

OPMNは、各依存性の既知の最後の状態を含む依存性の状態および最後にチェックを実行した時間のキャッシュを維持します。各依存性について、cache-timeoutパラメータを使用すると、キャッシュ内に維持している状態を使用する期間、またはその状態を使用するかどうかを指定できます。同様に、各依存性に対する一般的なタイムアウト・パラメータを使用して、その依存性からのステータス更新をOPMNが待つ時間(この時間を超えると、依存性のチェックおよびプロセスの起動が中止されます)を指定できます。

OPMNは、依存性が宣言されている順序で依存性をチェックします。依存性一覧のトラバースは、チェックがすべて成功する(依存性が有効)、最初のチェックが失敗する(依存性が無効)、あるいは依存性チェックがタイムアウトになるかのいずれかによって終了します。

database


必須: ×
デフォルト値: なし
親要素: <dependencies>
属性: db-connect-info、infrastructure-key、timeout、cache-timeout

database要素には、チェックするデータベースを指定します。db-connect-infoまたはinfrastructure-keyのいずれかを使用して、データベースを識別します。

db-connect-info="connect"


必須: ◎(infrastructure-keyが指定されない場合)
デフォルト値: なし
有効値: 文字列

db-connect-info属性には、データベースへの接続に必要な文字列を指定します。この文字列は、次のいずれかの形式で指定できます。

次に例を示します。

pdsundev7:1521/asdb.us.oracle.com

infrastructure-key="key"


必須: ◎(db-connectが指定されない場合)
デフォルト値: なし
有効値: 文字列

infrastructure key属性は、データベースの識別に必要です。

timeout="depend-timeout"


必須: ×
デフォルト値: 1200
有効値: 整数

timeout属性には、依存性のチェックが完了するまでOPMNが待機する時間を秒単位で指定します。チェックが構成されたタイムアウトよりも長くかかっていると、OPMNはチェックが失敗したと見なします。

cache-timeout="cache-timeout"


必須: ×
デフォルト値: 600
有効値: 整数

cache-timeout属性には、キャッシュ内の依存性のエントリに対してOPMNが現在の稼働中ステータスを使用する時間を秒単位で指定します。最後に成功した依存性のチェックが、現在のチェックからさかのぼって指定した秒数内に実行されたものであれば、即座に依存性のチェックに成功のフラグが付き、指定した秒数よりも前の場合は、新たに依存性のチェックが実行されます。cache-timeoutは最後に成功した依存性チェックのみを対象としており、前のチェックが失敗した場合は、別の方法で依存性チェックが実行されることに注意してください。値が0の場合、OPMNはチェックを常に実行します。

OID


必須: ×
デフォルト値: なし
親要素:<dependencies>
属性: address、infrastructure、timeout、cache-timeout

<OID>要素は、特定のOracle Internet Directoryのアドレス文字列をチェックするOracle Internet Directoryサービスを指定します。この値をtrueに設定すると、デフォルトのOracle Internet Directoryが使用されます。

address="address"


必須: ◎
デフォルト値: なし
有効値: 文字列

address要素には、Oracle Internet Directoryへの接続に必要なアドレス文字列を指定します。

infrastructure="boolean"


必須: ◎(addressが設定されていない場合)
デフォルト値: なし
有効値: trueまたはfalse

Oracleインスタンスに、デフォルトのインフラストラクチャのOracle Internet Directoryを使用するかどうかを指定します。

ssl


必須: ×
デフォルト値: なし
親要素: <OID>
属性: enabled、wallet-file、wallet-password

Oracle Internet Directory接続用のSSL情報を指定します。

enabled="boolean"


必須: ◎
デフォルト値: なし
有効値: trueまたはfalse

Oracle Internet Directory接続でSSLを有効にするには、enabled属性をtrueに設定します。

wallet-file="path"


必須: ◎
デフォルト値: なし
有効値: 有効なパス名

Oracle Internet Directory接続の認証に使用するウォレット・ファイルのパス名を指定します。

wallet-password="password"


必須: ×
デフォルト値: なし
有効値: 文字列

wallet-password属性には、指定されたウォレット・ファイルに使用するパスワードを指定します。

timeout="depend-timeout"


必須: ×
デフォルト値: 1200
有効値: 整数

timeout属性には、依存性のチェックが完了するまでOPMNが待機する時間を秒単位で指定します。チェックが構成されたタイムアウトよりも長くかかっていると、OPMNはチェックが失敗したと見なします。

cache-timeout="cache-timeout"


必須: ×
デフォルト値: 600
有効値: 整数

cache-timeout属性には、キャッシュ内の依存性のエントリに対してOPMNが現在の稼働中ステータスを使用する時間を秒単位で指定します。最後に成功した依存性のチェックが、現在のチェックからさかのぼって指定した秒数内に実行されたものであれば、依存性のチェックに成功のフラグが付きます。そうでない場合、OPMNは別の依存性チェックを実行します。cache-timeoutは、最後に成功した依存性チェックに対するものです。前のチェックが失敗した場合、OPMNは別の方法で依存性のチェックを実行します。値が0の場合、OPMNはチェックを常に実行します。

OSSO


必須: ×
デフォルト値: なし
親要素: <dependencies>
属性: host、port、URI、timeout、cache-timeout

OSSO要素には、チェックするOracle Single Sign-Onサービスを指定します。

host="hostname"


必須: ◎
デフォルト値: なし
有効値: 文字列

host属性には、Oracle Single Sign-On接続用のホスト名を指定します。

port="port"


必須: ◎
デフォルト値: なし
有効値: ポート番号

port属性には、Oracle Single Sign-On接続用のポートを指定します。

URI="uri"


必須: ◎
デフォルト値: なし
有効値: 文字列

URI属性には、Oracle Single Sign-On接続用のURIを指定します。

ssl


必須: ×
デフォルト値: なし
親要素: <OSSO>
属性: enabled、wallet-file、wallet-password

ssl要素には、Oracle Single Sign-On接続用のSSL情報を指定します。

enabled="boolean"


必須: ◎
デフォルト値: なし
有効値: trueまたはfalse

enabled属性は、Oracle Single Sign-OnのSSL接続を有効にします。接続を有効にするには、この属性をtrueに設定します。

wallet-file="path"


必須: ◎
デフォルト値: なし
有効値: パス名

wallet-file属性には、Oracle Single Sign-On接続の認証に使用するウォレット・ファイルのパス名を指定します。ORACLE_HOMEの値を使用できます。

wallet-password="password"


必須: ×
デフォルト値: なし
有効値: 文字列

wallet-passwordには、指定されたwallet-fileのパスワードを指定します。

timeout="depend-timeout"


必須: ×
デフォルト値: 1200
有効値: 整数

timeout属性には、依存性のチェックが完了するまでOPMNが待機する時間を秒単位で指定します。チェックが構成されたタイムアウトよりも長くかかっていると、OPMNはチェックが失敗したと見なします。

cache-timeout="cache-timeout"


必須: ×
デフォルト値: 600
有効値: 整数

cache-timeout属性には、キャッシュ内の依存性のエントリに対してOPMNが現在の稼働中ステータスを使用する時間を秒単位で指定します。最後に成功した依存性のチェックが、現在のチェックからさかのぼって指定した秒数内に実行されたものであれば、依存性のチェックに成功のフラグが付きます。そうでない場合、OPMNは別の依存性チェックを実行します。cache-timeoutは、最後に成功した依存性チェックに対するものです。前のチェックが失敗した場合、OPMNは別の依存性チェックを実行します。値が0の場合、OPMNはチェックを常に実行します。

managed-process


必須: ×
デフォルト値: なし
親要素: <dependencies>
属性: ias-instance、ias-component、process-type、process-set、autostart、autostop、timeout、cache-timeout

managed-process属性には、チェックする管理対象プロセスを指定します。process-typeまたはprocess-setに対応するプロセスは、指定した依存性の管理対象プロセスがアクティブでない場合には、起動しません。循環依存が検出されると、ローカルの管理対象プロセスでは拒否されますが、リモートの管理対象プロセスでは、依存性チェックのデッドロックが生じ、タイムアウトが発生します。

ias-instance="ias-instance-id"


必須: ×
デフォルト値: 現在のprocess-typeまたはprocess-setias-instance
有効値: 文字列

管理対象プロセスの依存性のias-instanceを指定します。指定したias-instanceは、現在のOPMNで管理されていなければ、リモートの管理対象プロセスの依存性であると見なされます。

ias-component="ias-component-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

管理対象プロセスの依存性のias-componentを指定します。

process-type="process-type-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

管理対象プロセスの依存性のprocess-type-idを指定します。

process-set="process-set-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

管理対象プロセスの依存性のprocess-set-idを指定します。

autostart="boolean"


必須: ×
デフォルト値: false
有効値: trueまたはfalse

autostart属性は、管理対象プロセスの依存性に使用されます。チェックの実行時にプロセスが実行されていない場合、autostart要素に応じて、OPMNがそのプロセスの起動を試みます。

autostop="boolean"


必須: ×
デフォルト値: false
有効値: trueまたはfalse

管理対象プロセスの依存性が停止中である場合に、管理対象プロセスを停止するかどうかを指定します。この属性は、リモートの管理対象プロセスの依存性については常にfalseです。

timeout="depend-timeout"


必須: ×
デフォルト値: 1200
有効値: 整数

timeout属性には、依存性のチェックが完了するまでOPMNが待機する時間を秒単位で指定します。チェックが構成されたタイムアウトよりも長くかかっていると、OPMNはチェックが失敗したと見なします。

cache-timeout="cache-timeout"


必須: ×
デフォルト値: 600
有効値: 整数

cache-timeout属性は、リモートのOPMNが管理するプロセスにのみ使用されます。cache-timeout属性には、キャッシュ内の依存性のエントリに対してOPMNが現在の稼働中ステータスを使用する時間を秒単位で指定します。最後のタイムアウト依存性のチェックが、現在のチェックからさかのぼって指定した秒数内に実行されたものであれば、即座に依存性のチェックに成功のフラグが付き、指定した秒数よりも前の場合は、OPMNが新たに依存性のチェックを実行します。cache-timeoutは最後に成功した依存性チェックのみを対象としており、前のチェックが失敗した場合は、OPMNにより依存性チェックが実行されることに注意してください。値が0の場合、OPMNはチェックを常に実行します。


注意:

cache-timeoutは最後に成功した依存性チェックのみを対象としており、前のチェックが失敗した場合は、OPMNにより別の依存性チェックが実行されます。

process-type


必須: ◎
デフォルト値: なし
親要素: <ias-component>
属性: id、module-id、status、working-dir

process-typeは、同じモジュールがサポートするprocess-setをグループ化したものです。

id="process-type-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

id属性は、ias-component内のprocess-typeを一意に識別します。

module-id="module-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

module-id属性は、process-typeをサポートするmodule-id属性に直接マップする必要があります。

status="state"


必須: ×
デフォルト値: enabled
有効値: enabledまたはdisabled

process-typeenabledに設定すると、OPMNは構成されたすべての属性および要素を解析して、OPMNに対する操作のリクエストを許可し、disabledに設定すると、process-typeエントリは完全に無視され、opmn.xmlファイルの一覧にないエントリと同様に処理されます。

working-dir="path"


必須: ×
デフォルト値: なし
有効値: パス名

working-dirパス名には、process-type要素により作成される管理対象プロセス用に設定された作業ディレクトリを指定します。process-setworking-dir属性も定義している場合、process-setのパス名はprocess-typeのパス名よりも優先されます。

event-scripts


必須: ×
デフォルト値: なし
親要素: <process-type>、<process-set>
属性: なし

特定のプロセス関連イベントが発生すると、構成されたevent scriptが実行されます。OPMNはスクリプトの実行が完了するか、またはタイムアウトが起こるまで待機してから、次のactionを実行します。

表6-9に、イベント・スクリプトの引数を示します。

表6-9 イベント・スクリプトの引数

オプション名 オプションの引数 説明

-timeStamp

<time>

システムの現在のtimeを示す整数値(秒単位)。

-instanceName

<instance-name>

管理対象プロセスのinstance-name

-componentId

<component-id>

管理対象プロセスのcomponent-id

-processType

<process-type-id>

管理対象プロセスのprocess-type

-processSet

<process-set-id>

管理対象プロセスのprocess-set

-processIndex

<index>

管理対象プロセスのprocess-index

-stderr脚注1 

<path>

プロセスのstderrファイル・ポインタのパス名。

-stdout脚注参照1

<path>

プロセスのstdoutファイル・ポインタのパス名。注意: この引数は、startがプロセスの再起動リクエストの一部である場合に、pre-startスクリプトについてのみ指定されます。

-reason

<reason>

スクリプトが実行された理由を示す文字列。http_requestは、プロセスactionが、OPMNに対してユーザーがHTTPリクエストを実行した結果であることを示します。non_http_requestは、プロセスactionがOPMNそれ自体により開始されたことを示します。

-pid脚注2 

<process-id>

process-idに設定されたオペレーティング・システムの整数値。

-startTime脚注参照2

<time>

システムでのプロセスの開始時間を示す整数値(秒単位)。


脚注1 この引数は、startがプロセスの再起動リクエストの一部である場合に、pre-startスクリプトについてのみ指定されます。pre-startイベントは、startの実行前でのみトリガーされます。restart操作は、stop操作とそれに続くstart操作から構成される場合があります。start操作は単独で実行することも、restart操作の一部として実行することもできます。

脚注2 この引数は、pre-stopまたはpost-crashイベント・スクリプトにのみ使用できます。

pre-start


必須: ×
デフォルト値: なし
親要素: <event-scripts>
属性: path

構成した依存性チェックが実行されて(かつ成功して)からプロセスが実際に開始するまでの間に、OPMNが実行するpre-startスクリプトを指定します。pre-startスクリプトのタイムアウトは、プロセス自体の起動に設定されたタイムアウト値になり、このスクリプトの実行に使用した時間は、プロセスの起動のタイムアウト値に向かってカウントされます。スクリプトがタイムアウトした場合、プロセスは起動せず、関連するすべてのHTTPリクエストが失敗します。

イベント・スクリプトを使用してstartstoprestartなどのOPMNプロセスのリクエストを実行する場合は注意が必要です。これらのリクエストは、process-setレベルでシリアライズされます。現在のリクエスト(またはすでにキューに格納されている別のリクエスト)の対象となっているprocess-set上でスクリプトがリクエストを起動する場合、そのスクリプトはタイムアウトになるまでハングします。

path="path"


必須: ◎
デフォルト値: なし
有効値: 実行可能スクリプトのパス名

このパス名で、OPMNが実行権限を持つ実行可能プログラム、またはOPMNが読取り権限と実行権限の両方を持つスクリプト・ファイルを指定する必要があります。

pre-stop


必須: ×
デフォルト値: なし
親要素: <event-scripts>
属性: path

OPMNは、関連付けられたプロセスを停止する前に、指定されたスクリプトを実行します。このスクリプトのタイムアウトは、プロセス自体の停止に設定された値です。このスクリプトの実行に使用した時間は、プロセスの停止のタイムアウト値に向かってカウントされます。スクリプトがタイムアウトした場合は、関連するHTTPリクエストは失敗します。ただし、OPMNはプロセスの停止操作を続行します。

start、stoprestartなどのOPMNプロセスのリクエストを実行する場合は注意が必要です。これらのリクエストは、process-setレベルでシリアライズされます。現在のリクエスト(またはすでにキューに格納されている別のリクエスト)の対象となっているprocess-set上でスクリプトがリクエストを起動する場合、そのスクリプトはタイムアウトになるまでハングします。

path="path"


必須: ◎
デフォルト値: なし
有効値: 実行可能スクリプトのパス名

path属性で、OPMNが実行権限を持つ実行可能プログラム、またはOPMNが読取り権限と実行権限の両方を持つスクリプト・ファイルを指定する必要があります。

post-crash


必須: ×
デフォルト値: なし
親要素: <event-scripts>
属性: path

OPMNは、関連付けられたプロセスが予期せず中断した後に、指定されたスクリプトを実行します。このスクリプトのタイムアウトは、プロセス自体の停止に設定されたタイムアウト値です。スクリプトが終了すると、OPMNは中断したプロセスの置換をスケジュールします。

start、stop、restartなどのOPMNプロセスのリクエストを実行する場合は注意が必要です。これらのリクエストは、process-setレベルでシリアライズされます。現在のリクエスト(またはすでにキューに格納されている別のリクエスト)の対象となっているprocess-set上でスクリプトがリクエストを起動する場合、そのスクリプトはタイムアウトになるまでハングします。

path="path"


必須: ◎
デフォルト値: なし
有効値: 実行可能スクリプトのパス名

path属性で、OPMNが実行権限を持つ実行可能プログラム、またはOPMNが読取り権限と実行権限の両方を持つスクリプト・ファイルを指定する必要があります。

start


必須: ×
デフォルト値: 次の段落の値を参照
親要素: <process-type>、<process-set>
属性: timeout、retry

start属性には、管理対象プロセスの起動パラメータが含まれます。

timeout="timeout"


必須: ×
デフォルト値: 60
有効値: 整数

timeout属性には、管理対象プロセスの起動に対するタイムアウト値(秒単位)を指定します。

retry="num"


必須: ×
デフォルト値: 0
有効値: 整数

retry属性には、1つのリクエストに対するプロセス起動の連続試行回数を指定します。

stop


必須: ×
デフォルト値: 次の段落の値を参照
親要素: <process-type>、<process-set>
属性: timeout

stop属性には、管理対象プロセスの停止パラメータを指定します。

timeout="timeout"


必須: ×
デフォルト値: 30
有効値: 整数

管理対象プロセスの停止に対するtimeout値(秒単位)を指定します。

restart


必須: ×
デフォルト値: 次の段落の値を参照
親要素: <process-type>、<process-set>
属性: timeout、retry

管理対象プロセスのrestartパラメータを指定します。

timeout="timeout"


必須: ×
デフォルト値: 90
有効値: 整数

管理対象プロセスの再起動に対するtimeout値(秒単位)を指定します。

retry="num"


必須: ×
デフォルト値: 0
有効値: 整数

retry属性には、1つのリクエストに対するプロセス再起動の連続試行回数を指定します。

ping


必須: ×
デフォルト値: 次の段落の値を参照
親要素: <process-type>,<process-set>
属性: timeout、retry

ping要素には、管理対象プロセスのpingパラメータを指定します。

timeout="timeout"


必須: ×
デフォルト値: 20
有効値: 整数

管理対象プロセスのpingに対するtimeout値(秒単位)を指定します。モジュールごとにpingのタイムアウトを指定します。

retry="num"


必須: ×
デフォルト値: 0
有効値: 整数

retry属性には、pingの許容される連続失敗回数(この回数を超えると、モジュールはプロセスがアクセス不能と宣言してこのプロセスを再起動します)を指定します。モジュールごとにpingのリトライ回数を指定します。

interval="interval"


必須: ×
デフォルト値: 20
有効値: 整数

interval属性には、管理対象プロセスのpingを実行する時間間隔(秒単位)を指定します。

port


必須: ×
デフォルト値: なし
親要素: <process-type>
属性: id、range

port要素では、使用するモジュールに対するポート管理メカニズムを指定します。各モジュールは、idに設定されたポートを使用します。

id="id"


必須: ◎
デフォルト値: なし
有効値: 文字列

id属性で、process-typeに使用するポートの範囲を指定します。どのモジュールにも、独自の必須またはオプションのport id一覧があります。

range="range"


必須: ◎
デフォルト値: なし
有効値: ポート範囲

port rangeは、idに割り当てるポートを指定します。

モジュールがid内のポート番号をリクエストすると、OPMNは、その範囲内のポートがローカル・システムにバインドされているかどうかをチェックし、バインドされていない場合はモジュールにそのポート番号を返します。port rangeの構文は、個々のポートの番号または下限-上限の範囲指定をカンマで区切って並べたリストです。

次に例を示します。

ポート5555、6666、7777、8888および9999を指定する構文は次のとおりです。

range="5555,6666,7777,8888,9999"

ポート4000〜4250を指定する構文は次のとおりです。

range="4000-4250"

ポート7000〜7049、7775、7785および8050〜8099を指定する構文は次のとおりです。

range="7000-7049,7775,7785,8050-8099"

process-set


必須: ×
デフォルト値: id="component-id" numprocs="1"
親要素: <process-type>
属性: id、restart-on-death、numprocs、minprocs、maxprocs、status、working-dir、parallel-requests

process-setは、OPMN内のプロセスを抽象化したものです。すべてのmodule-data、環境変数およびその他の構成パラメータが、process-setレベルで最終的な値に解決されます。

process-setが構成されていない場合は、ias-componentと同じidと、1というnumprocsを使用して、この属性が自動的に作成されます。

id="process-set-id"


必須: ◎
デフォルト値: なし
有効値: 文字列

id属性は、process-type内のprocess-setを一意に識別します。

restart-on-death="boolean"


必須: ×
デフォルト値: true
有効値: trueまたはfalse

管理対象プロセスが、リクエストによる停止ではなく予期せず中断した場合、OPMNはそのプロセスの自動再起動を行いません。終了された管理対象プロセスの自動再起動を無効にするには、この属性をfalseに設定します。

numprocs="num"


必須: ◎(minprocsが構成されない場合。構成される場合は×)
デフォルト値: なし
有効値: 整数

OPMNがprocess-setに対して起動するプロセスの数を指定します。

minprocs="min"


必須: ◎(numprocsが構成されない場合。構成される場合は×)
デフォルト値: なし
有効値: 整数

OPMNがprocess-setに対して起動するプロセスのデフォルトの個数を指定します。minprocsが構成されている場合、maxprocsには、minprocsの値以上の値を設定する必要があります。minprocsおよびmaxprocsが構成されている場合、このプロセス・セットに対するOPMNリクエストに、特定のプロセス数が指定されます。この属性は、numprocsが構成されている場合は指定できません。

maxprocs="max"


必須: ◎(minprocsが構成される場合。構成されない場合は×)
デフォルト値: なし
有効値: 整数

maxprocs属性は、minprocsが構成されている場合は指定する必要がありますが、numprocsが構成されている場合は指定できません。

status="state"


必須: ×
デフォルト値: enabled
有効値: enabledまたはdisabled

process-setenabledに設定すると、OPMNは構成されたすべての属性および要素を解析して、OPMNに対する操作のリクエストを許可します。disabledに設定すると、process-setエントリは完全に無視され、opmn.xmlファイルの一覧にないエントリと同様に処理されます。

working-dir="path"


必須: ×
デフォルト値: ORACLE_INSTANCE
有効値: パス名

working-dirパス名には、process-set要素に属す作成済の管理対象プロセス用に設定された作業ディレクトリを指定します。

parallel-requests="boolean"


必須: ×
デフォルト値: false
有効値: trueまたはfalse

OPMNは、特定のprocess-setで一度に1つのリクエストのみが実行できるように、process-setレベルでリクエストをシリアライズします。後続のリクエストはそれぞれ、実行前に前のリクエストが完了するまで待機する必要があります。このデフォルトの動作は、parallel-requeststrueに設定されている場合、process-setに対して無効化されます。


注意:

parallel-requests属性が有効になっている場合は、OPMNはprocess-setに対するリクエストのシリアライズをまったく実行しません。つまり、競合するリクエストが事実上同時に発行および実行される可能性があり、その結果としてprocess-set内のプロセスが予測不可能な状態になります。したがって、parallel-requeststrueに設定されている場合は、process-setに対して競合するリクエストが同時に発行されていないことを確認する必要があります(これには、一致するprocess-setの暗黙的なワイルドカードを使用したリクエストも含みます)。

launch-targets


必須: ×
デフォルト値: なし
親要素: <process-manager>
属性: なし

launch-targetsブロックは、launch-target定義のリストで構成されます。1つのlaunch-targetsブロックのみが存在できます。

launch-target


必須: ×
デフォルト値: なし
親要素: <launch-target>
属性: id

OPMNによって起動リクエストを通じて起動されるプロセスの定義を指定します。


id="id"
必須: ◎
デフォルト値: なし

有効値: 文字列。このlaunch-targetの識別子。それぞれのlaunch-targetには一意のIDを割り当てる必要があります。この識別子は、起動リクエストのtarget引数で指定します。

exec


必須: ◎
デフォルト値: なし
親要素: <launch-target>
属性: path

launch-targetの実行可能ファイルへのパスを指定します。1つのlaunch-targetについて1つのexec要素のみを構成できます。

path="path"


必須: ◎
デフォルト値: なし
有効値: 実行可能ファイルへのパス

実行可能ファイルへのフルパスを指定します。

argument


必須: ×
デフォルト値: なし
親要素: <launch-target>
属性: value

構成された実行可能プロセスに常に渡される引数を指定します。1つのlaunch-targetについて複数のargument要素を構成でき、これらの引数は構成された順序で実行可能ファイルに渡されます。

起動リクエストを通じて渡される追加の引数は、構成された引数の後に渡されます。

value="argument"


必須: ◎
デフォルト値: なし
有効値: 文字列

実行可能ファイルに対する単一の引数を指定します。スペースは引数の区切り文字ではありません。複数の引数を定義するには、複数のargument要素を使用します。

timeout


必須: ×
デフォルト値: 120
親要素: <launch-target>
属性: value

起動リクエスト・スレッドによって行われる各入出力で使用されるタイムアウトを指定します。1つのlaunch-targetについて1つのtimeout要素のみを構成できます。

value="seconds"


必須: ◎
デフォルト値: なし
有効値: 5〜3600の整数値

入出力タイムアウト値を秒単位で指定します。

max-concurrency


必須: ×
デフォルト値: 5
親要素: launch-target
属性: value

このlaunch-targetに対する同時プロセスの最大数。1つのlaunch-targetについて1つのmax-concurrency要素のみを構成できます。

value="maximum"


必須: ◎
デフォルト値: なし
有効値: 1〜250の整数値

このlaunch-targetに対する同時プロセスの最大数。