原典情報: $ORACLE_HOME\racg\README
このファイルは$ORA_CRS_HOME/racgに配置してください。
Oracle Real Application Clusters High Availability Extensions(RACX)では、イベントを使用して、システム内の状態の変化を関連するシステム内の他のコンポーネントまたはユーザーに通知します。イベントによっては、システム内で発生している内容をユーザーに通知する単なる情報の場合もあります。あるいは、変化を修正するために、管理者または他のアプリケーション・プログラムによる適切な処置が必要なアクション・ドリブンの場合もあります。これは、システムの状態変化が他のアプリケーションに影響を与える可能性があるためです。このようなイベントの例には、データベースまたはインスタンスの起動/停止、サービスの開始/停止、ノードの停止などがあります。Oracle RACでは、ユーザーが独自のイベント・コールアウト・プログラムを定義できるインフラストラクチャがサポートされています。これらのプログラムは、特定のイベントが発生したときにOracle RACシステムによって起動されます。Oracle RACでは、関連ノード名、サービス名、インスタンス名、データベース名などの必要な情報をこれらのコールアウトに引数として渡します。ユーザー・コールアウト・プログラムは、これらの情報を解析して他のユーザーのアプリケーションまたはシステム管理者に渡します。このユーザー・コールアウト・プログラムは、他のユーザーのアプリケーションで使用されている通信プロトコルを理解している必要があります。
ユーザー・コールアウト・プログラムは、$ORA_CRS_HOME/racg/usrcoディレクトリに配置してください。Oracle RACは、この場所に配置されているコールアウトのみを起動します。
ユーザー・コールアウト・プログラムは、次の引数を理解する必要があります。
$usrco_prog | $event_typ VERSION=1.0 [service=$srvname \ database=$dbname instance=$instname] \ host=$hostname status=$status \ timestamp=$timestamp [card=$cardinality] \ reason=$reason |
$usrco_prog: | ユーザー・コールアウト・プログラム名。 |
$event_typ: | 次のいずれかを指定します。 NODE: nodedownイベント。 SERVICE: サービス全体の開始/停止。 SERVICEMEMBER: 特定のインスタンスの起動/停止で提供されるサービス。 INSTANCE: インスタンスの起動/停止。 DATABASE: データベースの起動/停止。 |
$version: | イベント・プロトコルのバージョン。現在は「VERSION=1.0」に設定されています。 |
$hostname: | これはイベントが関連しているホスト名です。 |
$status: | 「up」、「down」または「nodedown」、「restart failed」、「not_restarting」。 |
$timestamp: | このイベントの発生時間。 |
$cardinality: | サービスのカーディナリティ。これは、サービスに対して現在ONLINEであるサービスの数を示します。この属性は、サービス開始イベントのみに対応しています。 |
$reason: | イベントの理由。有効な値の例には、USER、FAILURE、FAILOVERなどがあります。 |
他のすべての引数の意味は名称どおりです。
注意: nodedownイベントは特別です。このイベントでは、DATABASE_NAME SERVICE_NAMEとINSTANCE_NAMEの指定は不要です。nodedownイベント形式は次のとおりです。
$usrco_prog NODE VERSION=1.0 host=$hostname status=nodedown timestamp=$timestamp
詳細は、『Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。