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