ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Event Processing管理者ガイド
11gリリース1 (11.1.1.7)
B61653-06
  目次へ移動
目次

前
 
次
 

6 マルチサーバー・ドメインの概要

この章は、Oracle CoherenceまたはOracle Event Processingネイティブ・テクノロジに基づく、Oracle Event Processingマルチサーバー・ドメイン(クラスタともいう)の概要を説明します。マルチサーバー・メッセージング、高可用性、スケーラビリティについての概要も説明します。

この章の内容は次のとおりです。

6.1 Oracle Event Processingマルチサーバー・ドメインの管理の概要

Oracle Event Processingマルチサーバー・ドメイン(またはクラスタ)は、管理上の目的で論理的に接続され、共有のユーザー・データグラム・プロトコル(UDP)マルチキャスト・アドレスおよびポートを使用して物理的に接続される、1つ以上のサーバーを追加できるドメインです。Oracle Event Processingマルチサーバー・ドメインのすべてのサーバーは、ドメイン内のその他すべてのサーバーを認識します。また、ドメイン内のデプロイメントに変更を加えるためのアクセス・ポイントとして、いずれか1つのサーバーを使用できます。

マルチサーバー・インフラストラクチャの管理はドメイン・レベルで実行されます。このため、サーバー障害、起動、または再起動は、マルチサーバー・ドメインのどのメンバーでも検出されます。マルチサーバー・ドメインの各メンバーは、マルチサーバー・インフラストラクチャで使用されるドメイン・メンバーシップについて、一貫性のある一致した認識を保持します。

マルチサーバー・ドメインでサーバーを適切に構成するには、そのサーバーは、同じマルチキャスト・アドレスとポート、および同じドメイン名を使用して構成する必要があります。同じマルチキャスト・アドレスおよびポートを使用し、異なるドメイン名を使用してサーバーを構成するとエラーになります。

マルチサーバー・ドメインのデフォルト・グループにデプロイ済アプリケーションは、そのドメインのすべてのサーバーに均一にデプロイされるので、すべてのサーバーにはアプリケーションで必要となる適切な構成リソースがある必要があります。

Oracle Event Processingでは、次のクラスタリング・システムをサポートします。

また、この章では次の内容についても説明します。

詳細は、次を参照してください:

6.1.1 Oracle Coherenceクラスタリング

Oracle Coherence: 信頼のおけるスケーラビリティの高いピア・ツー・ピアのクラスタリング・プロトコル上で、複製および配布した(パーティション化した)データの管理サービスを行います。Oracle Coherenceでは単一点障害がなく、サーバーが正常に動作しなくなったときやネットワークから切断されたときは、クラスタ・データの管理サービスを自動的かつ透過的にフェイルオーバーして再配布します。新しいサーバーが追加されたとき、または障害が発生したサーバーを再起動するときは、クラスタを自動的に接続し、Oracle Coherenceがサービスをフェイルバックして、そのクラスタの負荷を透過的に再分配します。


注意:

Oracle Event ProcessingでOracle Coherenceを使用する前に、Coherence Enterprise Edition、Coherence Grid Edition、またはOracle WebLogic Application GridなどのOracle Coherenceの有効なライセンスを取得する必要があります。Oracle Coherenceの詳細は、http://www.oracle.com/technology/products/coherence/index.htmlを参照してください。


Oracle Coherenceを使用すると、Oracle Event Processingの高可用性とサービス品質オプションを利用できます。

詳細は、次を参照してください:

6.1.2 Oracle Event Processingネイティブ・クラスタリング

Oracle Event Processingネイティブ・クラスタリング: TOTEMに基づいてネイティブ・クラスタリング実装を行います。

Oracle Event Processingネイティブ・クラスタリングを使用する場合、Oracle Event Processingの高可用性とサービス品質オプションを利用できません。

詳細は、7.1項「Oracle Event Processingネイティブ・クラスタリングを使用したOracle Event Processingマルチサーバー・ドメインの作成」を参照してください。

6.2 グループ

マルチサーバー・ドメインへのデプロイメントおよびマルチサーバー・ドメインの管理をドメインよりも細かいレベルでサポートするために、Oracle Event Processingではグループという概念を取り入れています。グループは1つ以上のサーバーの集まりで、ドメイン内で固有の名前を持ちます。Oracle Event Processingドメイン内では、構成可能なグループ・メンバーシップを持つ任意の数のグループを共存させることができます。1つのサーバーが複数のグループのメンバーになっている場合があります。ただし、通常、この情報はユーザーからは意識されていません。

マルチサーバー・ドメインにアプリケーションをデプロイするときは、特定のグループにデプロイします。任意のグループにデプロイされるアプリケーションの名前は、ドメイン内で一意である必要があります。

マルチサーバー・ドメインのグループにデプロイ済アプリケーションは、そのグループのすべてのサーバーに均一にデプロイされるので、すべてのサーバーにはアプリケーションで必要となる適切な構成リソースがある必要があります。

サーバーにデプロイされるアプリケーションは、同じドメイン内の別のサーバーからアンインストールできます。

次の定義済のデプロイメント・グループは必ず存在します。

または、カスタム・デプロイメント・グループを作成できます(6.2.3項「カスタム・デプロイメント・グループ」を参照してください)。


注意:

Oracle Event Processing高可用性アプリケーションをデプロイし、スケーラビリティが必要な場合、Oracle Event Processing高可用性通知グループを作成する必要もあります。詳細は、『Oracle Fusion Middleware Oracle Event Processing開発者ガイド for Eclipse』のデプロイメント・グループと通知グループに関する項を参照してください。


6.2.1 シングルトン・サーバー・デプロイメント・グループ

このグループはローカル・サーバーのみが含まれます。これは、このグループのメンバーシップがアクセス元のサーバーに依存していることを意味します。このグループは、デプロイメントを単一サーバーに固定するために使用できます。

詳細は、5.1.1項「Oracle Coherenceを使用したデフォルト・グループによるOracle Event Processingマルチサーバー・ドメインの作成方法」を参照してください。

6.2.2 ドメイン・デプロイメント・グループ

このグループはドメインの有効なすべてのメンバーが含まれています。メンバーシップは自動管理され、ユーザーが変更することはできません。

ドメイン名は、Oracle Event Processingサーバーのconfig.xmlファイルのdomain要素によって決定されます。たとえば、次に示すconfig.xmlファイルの場合、ドメインにはmydomainという名前が付けられます。

<domain>
    <name>mydomain</name>
</domain>

デフォルト名は、WLEventServerDomainです。

詳細は、5.1.1項「Oracle Coherenceを使用したデフォルト・グループによるOracle Event Processingマルチサーバー・ドメインの作成方法」を参照してください。

6.2.3 カスタム・デプロイメント・グループ

マルチサーバー・ドメインで均一なサーバーの集まり全体にアプリケーション・ロジックを簡単にレプリケートできない場合があります。様々な価格設定エンジンの提示価格から最適価格を判定するアプリケーションや、値の位置がしきい値を超えた場合にアラートを送信するアプリケーションは、このタイプのアプリケーションの例です。このような場合、アプリケーションは冪等ではなく、1回だけ値を算出したり、単一のイベントを送信したりする必要があります。モニター・アプリケーションやHTTP pub-subサーバーなど、その他の場合は、アプリケーションはシングルトンの性質を持ちます。

より複雑な例として、次の2つのアプリケーションを使用するドメインがあるとします。strategiesアプリケーションでは複数の方法を使用してデリバティブの様々な価格を計算し、selectorアプリケーションに計算結果を送信します。selectorアプリケーションではstrategiesアプリケーションの結果から提示される様々な選択肢から最適価格を選択します。フォールト・トレランスを実現するためにstrategiesアプリケーションをレプリケートできます。しかし、selectorアプリケーションは、最適価格を決定するために状態が保持される必要があります。そのため、selectorアプリケーションは双方向ではレプリケートできません。

ドメインが完全に同一ではないサーバーをサポートする必要がある場合、カスタム・グループを使用して構成します。

マルチサーバー・ドメインのカスタム・グループにデプロイ済アプリケーションは、そのグループのすべてのサーバーに均一にデプロイされるので、すべてのサーバーにはアプリケーションで必要となる適切な構成リソースがある必要があります。

詳細は、5.1.2項「Oracle Coherenceを使用したカスタム・グループによるOracle Event Processingマルチサーバー・ドメインの作成方法」を参照してください。

6.3 マルチサーバーの通知およびメッセージング

アダプタおよびイベントBeanの実装において高可用性(HA)と同等の機能を実現するために、Oracle Event Processingではグループ・レベルおよびサーバー・レベルの両方で、数多くの通知APIおよびメッセージングAPIを提供しています。これらのAPIを使用して、管理者による意図的な変更またはサーバー障害のためにグループまたはドメイン・メンバーシップが変更された場合に通知を受け取るように、サーバーを構成できます。同様に、これらのAPIを使用して個々のグループおよびドメインの両方にメッセージを送信できます。

Oracle Event Processingの高可用性オプションを使用するようにアプリケーションを構成する場合は、プライマリOracle Event Processingサーバーでは、Oracle Coherenceを使用してセカンダリ・サーバーと通信し、セカンダリ・サーバーにプライマリ・サーバーのイベント処理の進行状況の最新情報を送信します。

安全に通信できるようにマルチサーバー・ドメインで複数のOracle Event Processingサーバーを構成できます。

詳細は、次を参照してください:

6.4 マルチサーバー・ドメインのディレクトリ構造

Oracle Event Processingドメインのサーバーは単一のディレクトリにファイルを格納します。通常、マルチ・サーバー・ドメイン内のサーバーのディレクトリは、ドメイン・ディレクトリのサブディレクトリです。また、サーバー名とドメイン名はそれぞれ、サーバー・ディレクトリ名とドメイン・ディレクトリ名に対応します。これは単に一般的な構造であり必須ではありませんが、わかりやすさと一貫性を保つために、この方法でドメインを設定することをお薦めします。マルチ・サーバー・ドメインのサーバーが別々のコンピュータに配置されている場合も、わかりやすさと一貫性を保つために、両方のコンピュータにディレクトリ構造をレプリケートすることをお薦めします。

図6-1に、3つのサーバーがあるマルチサーバー・ドメイン・ディレクトリを示しています。

図6-1 マルチサーバー・ドメインのディレクトリ構造

図6-1の説明が続きます
「図6-1 マルチサーバー・ドメインのディレクトリ構造」の説明

myServer1構成ファイルのスニペットでは、ドメイン・ディレクトリとドメイン・オブジェクトが同じ名前で構成され、サーバー・ディレクトリとサーバー名が同じ名前で構成されています。ドメイン・ディレクトリは、Oracle Event Processingドメインのデフォルトの場所であるORACLE_CEP_HOME/user_projects/domainsディレクトリにあります。

6.5 cluster要素の子要素の順序

config.xmlファイルのcluster要素の子要素の順序は重要です。間違った順序で要素を含まれた場合、エラーが発生する可能性があります。次のリストは、子要素をリストする順序を示しています。

Oracle Event Processingサーバーのconfig.xmlファイルのcluster要素に関する詳細は、『Oracle Fusion Middleware Oracle Event Processing開発者ガイド for Eclipse』のclusterに関する項を参照してください。

6.6 高可用性およびマルチサーバー・ドメイン

マルチサーバー・ドメインに対してOracle Coherenceクラスタリングを使用する場合、Oracle Event Processingの高可用性とサービス品質オプションを利用できます。Oracle Event Processingネイティブ・クラスタリングを使用する場合、これらのオプションはサポートされていません。

詳細は、『Oracle Fusion Middleware Oracle Event Processing開発者ガイド for Eclipse』の高可用性の理解に関する項を参照してください。

6.7 スケーラビリティおよびマルチサーバー・ドメイン

Oracle CoherenceまたはOracle Event Processingネイティブ・クラスタリングを使用する場合、Oracle Event Processingのスケーラビリティとサービス品質オプションを利用できます。

詳細は、『Oracle Fusion Middleware Oracle Event Processing開発者ガイド for Eclipse』のスケーラブル・アプリケーションの開発に関する項を参照してください。

6.8 次のステップ

自身のOracle Event Processingマルチサーバー・ドメインを作成後、1.5項「Oracle Event Processingサーバー管理タスクの理解」で説明されている管理タスクを考慮します。

たとえば、次の操作を実行できます。