• 検索結果がありません。

mod_oprocmgr

ドキュメント内 Oracle HTTP Server管理者ガイド, 10g(9.0.4) (ページ 126-131)

的に使用して、HTTPポートを選択します。ただし、状況によっては、OPMNがリスナーの pingに使用するHTTPポートとホスト名に特定のものを選択する場合があります。

OpmnHostPortが取る引数は1つで、OPMNに渡す値を指定するhost:port文字列です。

たとえば、次の行は、OPMNがこのリスナーをpingするために、localhostインタフェース とポート7778を使用する必要があることを指定します。

OpmnHostPort localhost: 7778

このディレクティブは、httpd.confファイルのグローバル・セクションに指定する必要が あります。ロケーション・コンテナの仮想ホストに埋め込むことはできません。インストー ル後、OpmnHostPortディレクティブはdms.confに置かれます。このディレクティブは、

特殊なローカルホスト専用仮想ホストである、Oracle HTTP Serverの診断ポートに対する OPMNを指します。Oracle Enterprise Manager 10g Application Server Controlコンソール からのOPMNのpingやDMSのメトリック・リクエストなど、内部診断リクエストはログ に記録されません。

mod_oprocmgr

このOracleモジュールでは、プロセス管理およびロード・バランシング・サービスがJServ

プロセスに提供されます。このモジュールはJServの従来型ユーザー用です。JServは、

Oracle HTTP Server構成ではデフォルトで無効化されています。OC4Jとmod_oc4j(デ

フォルトで有効化)を使用することをお薦めします。

次の各項では、mod_oprocmgrの構成方法を説明します。各項で使用する用語の定義は、

次のとおりです。

mod_oprocmgr プロセスの起動、停止および障害検出(新規プロセスの起動による障害プ

ロセスの置換)を実行し、プロセスにロード・バランシング・サービスを提供するモジュー ル。mod_oprocmgrは、JServからのHTTPリクエストを介してトポロジ管理情報を取得 し、この情報に基づいてその機能を実行します。

Group リクエストの通信量が分散されるプロセスのセット。

サーブレット・コンテナ・プロセス サーブレット・コンテナ・プロセスサーブレット・コンテナ・プロセス

サーブレット・コンテナ・プロセス JServなどのサーブレット・コンテナを実行するJVM インスタンス。

mod_oprocmgr

Oracle HTTP Serverのモジュール 8-35

mod_oprocmgr と と と と mod_jserv の併用 の併用 の併用 の併用

mod_oprocmgrは、プロセスの自動起動、障害検出と再起動、さらにロード・バランシン グなどのインフラストラクチャ機能を提供します。これらの機能は、ApJServManualディ レクティブの新しいモードautoによって有効化されます。

mod_jservから提供される構成情報に基づいて、mod_oprocmgrは指定された数のJServ プロセスを起動し、サーバーの存続している間、JServプロセスを管理します。

メリット メリット メリット メリット

mod_oprocmgrにより、JServの機能と管理がいくつかの点で拡張されます。

プロセス管理

構成

プロセス管理 プロセス管理プロセス管理

プロセス管理 ApJServManualoffの場合、自動的に起動して管理できるJServプロセス は1つのみです。2番目以降のプロセスは手動で起動、モニターおよび停止する必要があり ます。

ApJServManualautoの場合、JServプロセスをいくつでも自動的に起動できます。これら のプロセスの状態はmod_oprocmgrにより継続して監視され、必要に応じて中断および再 起動されます。必要な場合は、JServプロセスを手動で起動することもできます。

構成 構成構成

構成 ApJServManual onまたはApJServManual offモードを使用して複数のJServプロ セスを構成する操作は複雑で、エラーが発生しやすくなります。たとえば、10個のプロセス のバランス構成には、32個のディレクティブと10個のjserv.propertiesファイルが必 要です。

新規のautoモードで複数のJServプロセスを構成する作業の方が簡潔です。たとえば、10 個のプロセスのバランス構成には、3つのディレクティブを使用するのみで済みます。

注意 注意注意

注意: mod_oprocmgrを有効にするには、Oracle HTTP Server用に

https以外のポートが少なくとも1つ有効になっている必要があります。

mod_oprocmgr

プロセス管理用の プロセス管理用の プロセス管理用の

プロセス管理用の mod_jserv の構成 の構成 の構成 の構成

mod_jservの構成ディレクティブをよく理解している場合は、mod_oprocmgrの構成プロ セスは簡単です。構成ファイルを次に示します。

httpd.conf の変更 の変更 の変更 の変更

mod_oprocmgrを使用するには、次のディレクティブをhttpd.confファイルにインク ルードします。

<IfModule mod_oprocmgr.c>

ProcNode my-sun.us.oracle.com 7777 <IfDefine SSL>

ProcNode my-sun.us.oracle.com 80 </IfDefine>

<Location /oprocmgr-service>

SetHandler oprocmgr-service </Location>

</IfModule>

また、1つ以上の非SSLポートを指定する必要があります。セキュアな(つまり、SSL接続 のみを受け入れる)Webサイトの場合は、追加の非SSLポートを提供する必要があります。

そのためには、次のディレクティブを追加します。ポートとアドレスは実際の値に置き換え てください。

Listen <port>

<VirtualHost _default_:port>

SSLEngine Off <Location />

order deny, allow deny from all

allow from <IP address 1 of local node>

allow from <IP address 2 of local node>

allow from <IP address 3 of local node>

</Location>

</VirtualHost>

LoadModuleセクションで、mod_oprocmgrがmod_ossoの後にロードされることを確認

します。「check usrid」ステージのmod_oprocmgrのコールバック・ファンクションは、

mod_ossoのコールバック・ファンクションの前に起動する必要があります。

mod_oprocmgr

Oracle HTTP Serverのモジュール 8-37

jserv.properties の変更 の変更 の変更 の変更

次のファイルを使用します。

UNIXの場合: ORACLE_HOME/Apache/Jserv/etc/jserv.properties

Windowsの場合: ORACLE_HOME¥Apache¥Jserv¥etc¥jserv.properties

次の例に示すように、Jservがバインドされるポートを指定します。

port=8007

ポートを指定しない場合、JServプロセスではそのプロセスのポートが自動的に選択されま

す。JServプロセスにポートを自動的に選択させる場合は、次のようにportディレクティブ

を設定します。このディレクティブ全体を省略すると、エラーが発生します。

port=

次の例のように、値をカンマで区切って複数のポートを指定できます。ポートの範囲

(9000-9010)が有効な値であることに注意してください。

port=8007,9000-9010,8010

jserv.conf の変更 の変更 の変更 の変更

mod_oprocmgrとmod_jservを一緒に使用するには、JServ構成ファイル内でディレク ティブを次のように変更する必要があります。このファイルは次の場所にあります。

UNIXの場合: ORACLE_HOME/Apache/Jserv/etc/jserv.conf

Windowsの場合: ORACLE_HOME¥Apache¥Jserv¥conf¥jserv.conf

ApJServManual このディレクティブは、インフラストラクチャ機能を起動するモードautoを

受け入れます(このモードでは、mod_oprocmgrによってプロセスが管理されます)。構文 は、次のとおりです。

ApJServManual auto

モードを「On」または「Off」に設定して、標準のJServ機能も使用できます。

ApJServGroup このディレクティブでは、mod_jservを管理するプロセス管理のグループを

定義します。mod_jservを使用した場合、このディレクティブによって

ApJServBalance、ApJServHost、ApJServRouteおよびApJServShmFileディレク ティブが置き換えられます。

管理されるJServプロセスはすべて1つのグループに属する必要があり、各グループごとに 固有のApJServGroupディレクティブがあります。JServプロセスが1つのみある場合は、

そのプロセスのみを含むグループを定義する必要があります。グループ内の各プロセスの相 違点はリスニング・ポートのみであるため、そのグループにダイレクトされたリクエストは プロセス間で均等に分散されます。

mod_oprocmgr

ApJServGroupディレクティブは、グループ名、プロセス数、ノードの重みおよびプロパ ティ・ファイルという4つの引数を取ります。次の例では、グループ名はmygroup、プロ セス数は1、ノードの重みは1で、JServプロセスの起動に使用されるプロパティ・ファイル のフルパスはORACLE_HOME/Apache/JServ/etc/jserv.propertiesです。

ApJServGroup mygroup 1 1 /private2/up_1022/Apache/Jserv/etc/jserv.properties ApJServGroupMount このディレクティブでは、マウント・ポイントを定義してプロセス・グ ループとゾーンにマップします。次の例では、マウント・ポイントは/servlets、グルー プはmygroup、ゾーンはrootです。標準的なJServ構成の場合と同様に、ルーティングに はバランス・プロトコルが使用されていることに注意してください。

ApJServGroupMount /servlets balance://mygroup/root

このディレクティブを、構成ファイル内でApJServGroupディレクティブの後に置きます。

ApJServGroupSecretKey このディレクティブでは、JServでクライアントの認証に必要な秘密

鍵を指定します。このディレクティブは、次のようにすると無効化できます。

ApJServGroupSecretKey disabled

アクティブにすると、このディレクティブは1つまたは2つの引数を取ります。次の例で は、グループ引数とファイル名引数を指定しており、グループmygroupにファイル名 mysecretkeyが適用されます。

ApJServGroupSecretKey mygroup /usr/local/apache/jserv/mysecretkey

指定できるファイル名引数は、次のように1つのみです。グループが指定されていないた め、秘密鍵のファイル名はすべてのグループに適用されます。

ApJServGroupSecretKey /usr/local/apache/jserv/mysecretkey

引数が1つの構文を使用するディレクティブと、引数が2つの構文を使用するディレクティ ブは、併用できません。引数が2つの構文を使用する場合、固有の秘密鍵を持たないグルー プのデフォルトは「disabled」です。

このディレクティブを、構成ファイル内でApJServGroupディレクティブの後に置きます。

注意 注意注意

注意: ApJServSecretKeyに指定する秘密鍵ファイル内の鍵値は、

jserv.propertiesファイル内のsecurity.secretKeyディレクティ

ドキュメント内 Oracle HTTP Server管理者ガイド, 10g(9.0.4) (ページ 126-131)