リモートクラスター

ローカルクラスターを他のElasticsearchクラスター(リモートクラスターとして知られる)に接続できます。リモートクラスターは異なるデータセンターや地理的地域に位置することができ、クロスクラスター複製を使用して複製できるインデックスやデータストリームを含むことができます。また、ローカルクラスターがクロスクラスター検索を使用して検索することもできます。

クロスクラスター複製

クロスクラスター複製を使用すると、リモートクラスターのインデックスにデータを取り込むことができます。このリーダーインデックスは、ローカルクラスターの1つ以上の読み取り専用フォロワーインデックスに複製されます。クロスクラスター複製を使用してマルチクラスターアーキテクチャを作成することで、災害復旧を構成したり、データをユーザーに近づけたり、レポートをローカルで処理するための集中型レポートクラスターを確立したりできます。

クロスクラスター検索

クロスクラスター検索を使用すると、1つ以上のリモートクラスターに対して検索リクエストを実行できます。この機能により、各地域はすべてのクラスターのグローバルビューを持ち、ローカルクラスターから検索リクエストを送信し、すべての接続されたリモートクラスターから結果を返すことができます。完全なクロスクラスター検索機能を利用するには、ローカルクラスターとリモートクラスターが同じサブスクリプションレベルにある必要があります。

リモートクラスターの追加

以下の手順では、自己管理型クラスターからリモート接続を作成する方法を説明します。また、Elasticsearch ServiceのデプロイメントElastic Cloud Enterpriseのデプロイメントからクロスクラスター検索およびクロスクラスター複製を設定することもできます。

リモートクラスターを追加するには、2つのセキュリティモデル2つの接続モードのいずれかを選択できます。両方のセキュリティモデルは、いずれの接続モードとも互換性があります。

セキュリティモデル

  • APIキーに基づくセキュリティモデル
  • バージョン8.14以降のクラスターでは、APIキーを使用してリモートクラスターへのクロスクラスター操作を認証および承認できます。このモデルは、ローカルクラスターとリモートクラスターの管理者に対して、きめ細かなアクセス制御を提供します。APIキー認証を使用してリモートクラスターを追加する
  • 証明書ベースのセキュリティモデル
  • クロスクラスター操作のために相互TLS認証を使用します。ユーザー認証はローカルクラスターで行われ、ユーザーの役割名がリモートクラスターに渡されます。このモデルでは、ローカルクラスターのスーパーユーザーがリモートクラスターへの完全な読み取りアクセスを得るため、同じセキュリティドメイン内のクラスターにのみ適しています。TLS証明書認証を使用してリモートクラスターを追加する

接続モード

  • スニッフモード
  • スニッフモードでは、クラスターエイリアスが任意の名前で登録され、cluster.remote.<cluster_alias>.seeds設定で指定されたシードノードのアドレスのリストが指定されます。スニッフモードを使用してリモートクラスターを登録すると、Elasticsearchはシードノードの1つから最大3つのゲートウェイノードのアドレスを取得します。ローカルElasticsearchクラスター内の各remote_cluster_clientノードは、ゲートウェイノードの公開アドレスに対していくつかのTCP接続を開きます。このモードでは、したがって、ゲートウェイノードの公開アドレスがローカルクラスターのノードにアクセス可能である必要があります。
    スニッフモードはデフォルトの接続モードです。スニッフモードの設定については、スニッフモードリモートクラスター設定を参照してください。
    ゲートウェイノードの選択は、以下の基準に依存します:

    • バージョン: リモートノードは、登録されているクラスターと互換性がある必要があります。
    • 役割: デフォルトでは、マスターノードとして選ばれないノードは、ゲートウェイノードとして機能できます。専用のマスターノードは決してゲートウェイノードとして選択されません。
    • 属性: cluster.remote.node.attr.gatewaytrueに設定することで、クラスターのゲートウェイノードを定義できます。ただし、そのようなノードは上記の2つの要件を満たす必要があります。

  • プロキシモード
  • プロキシモードでは、クラスターエイリアスが任意の名前で登録され、cluster.remote.<cluster_alias>.proxy_address設定で指定されたTCP(レイヤー4)リバースプロキシのアドレスが指定されます。このプロキシを構成して、リモートクラスターの1つ以上のノードへの接続をルーティングする必要があります。プロキシモードを使用してリモートクラスターを登録すると、Elasticsearchはプロキシアドレスに対していくつかのTCP接続を開き、これらの接続を使用してリモートクラスターと通信します。プロキシモードでは、Elasticsearchはリモートクラスターのノードの公開アドレスを無視するため、リモートクラスターのノードの公開アドレスはローカルクラスターにアクセス可能である必要はありません。
    プロキシモードはデフォルトの接続モードではないため、使用するにはcluster.remote.<cluster_alias>.mode: proxyを設定する必要があります。プロキシモードの設定については、プロキシモードリモートクラスター設定を参照してください。
    プロキシモードは、スニッフモードと同じバージョン互換性要件があります。