このトピックでは、Endeca Serverクラスタが問合せ処理において可用性をデータ・ドメイン・クラスタで強化する方法について説明します。
このトピックでは、複数のEndeca Server実行インスタンスがあるEndeca Serverノードのクラスタについて説明します。単一Endeca Serverインスタンスでホストされる単一ノード型データ・ドメインを構成できますが、単一Endeca Serverインスタンスは開発環境でのみ使用できます。データ・ドメインに対する問合せ処理の可用性が保証されないからです。すなわち、単一Endeca Serverインスタンスでホストされる単一ノード型データ・ドメインでは、Endeca Serverノードの障害によりDgraphプロセスが停止します。
複数のEndeca ServerインスタンスがあるEndeca Serverクラスタにおいて、Endeca Serverクラスタにあるノードのサブセットでクラスタ・コーディネータのサービスのEnsembleを実行すると、Endeca ServerクラスタにあるEndeca Serverノードの可用性が強化されます。
Endeca ServerクラスタのEndeca Serverノードがダウンすると、ホストされているすべてのDgraphノードとクラスタ・コーディネータのサービス(このノードでも実行している場合があります)もダウンします。Endeca Serverクラスタが複数のノードで構成されているかぎり、データ・ドメインの非更新ユーザー・リクエストの処理は中断されません。(クラスタ・コーディネータのサービスに悪影響が及ぶ場合があります。詳細は、「クラスタ・コーディネータのサービスの可用性」を参照してください。)
Endeca Serverノードで障害が発生すると、Endeca Serverクラスタに通知され、Endeca Serverノードが再起動するまで、そのEndeca Serverノードでホストされているデータ・ドメイン・ノードへのリクエストのルーティングがすべて停止されます。
障害が発生したEndeca Serverノードを再起動すると、そのプロセスがEndeca Serverクラスタによって再起動されます。ノードがクラスタに再び参加すると、ホストするデータ・ドメインのデータ・ドメイン・クラスタに再び参加します。さらに、ノードがクラスタ・コーディネータをホストしている場合、クラスタ・コーディネータのEnsembleにも再び参加します。
データ・ドメインのリーダー・ノードが変更されると、Endeca Serverは処理を継続し、リーダー・ノードを必要とするリクエストを、新規に指名されたリーダー・ノードをホストするEndeca Serverクラスタ・ノードにルーティングします。
要約すると、クラスタ・コーディネータは1つのノードのみで実行できますが、クラスタ・コーディネータのサービスで高可用性を確保するには、クラスタ・コーディネータのサービスはEndeca Serverクラスタにおいて3個以上のノード(または3個を超える奇数個のノード)で実行する必要があります。これによって、クラスタ・コーディネータのサービス自体のシングル・ポイント障害が防止されます。クラスタ・コーディネータをクラスタにデプロイする方法の詳細は、『Oracle Endeca Serverインストレーション・ガイド』を参照してください。