Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›Репликация между кластерами ›Учебник: Настройка репликации между кластерами

Подключение к удалённому кластеру

Для репликации индекса в удалённом кластере (Кластер А) в локальный кластер (Кластер Б) необходимо настроить Кластер А как удалённый в Кластере Б.

ClusterA contains the leader index and ClusterB contains the follower index

Для настройки удалённого кластера из Stack Management в Kibana:

  1. При необходимости, настройте защищённое подключение.
  2. Выберите Удалённые кластеры в боковой навигации.
  3. Укажите URL-адрес конечной точки Elasticsearch или IP-адрес или имя хоста удалённого кластера (ClusterA), за которым следует порт транспортного уровня (по умолчанию 9300). Например, cluster.es.eastus2.staging.azure.foundit.no:9400 или 192.168.1.1:9300.
Пример API

Также можно использовать API для обновления настроек кластера для добавления удалённого кластера:

resp = client.cluster.put_settings(
    persistent={
        "cluster": {
            "remote": {
                "leader": {
                    "seeds": [
                        "127.0.0.1:9300"
                    ]
                }
            }
        }
    },
)
print(resp)
response = client.cluster.put_settings(
  body: {
    persistent: {
      cluster: {
        remote: {
          leader: {
            seeds: [
              '127.0.0.1:9300'
            ]
          }
        }
      }
    }
  }
)
puts response
const response = await client.cluster.putSettings({
  persistent: {
    cluster: {
      remote: {
        leader: {
          seeds: ["127.0.0.1:9300"],
        },
      },
    },
  },
});
console.log(response);
PUT /_cluster/settings
{
  "persistent" : {
    "cluster" : {
      "remote" : {
        "leader" : {
          "seeds" : [
            "127.0.0.1:9300" 
          ]
        }
      }
    }
  }
}

Указывает имя хоста и порт транспортного уровня узла-распространителя в удалённом кластере.

Можно проверить, успешно ли локальный кластер подключился к удалённому кластеру.

resp = client.cluster.remote_info()
print(resp)
response = client.cluster.remote_info
puts response
const response = await client.cluster.remoteInfo();
console.log(response);
GET /_remote/info

Ответ API показывает, что локальный кластер подключился к удалённому кластеру с псевдонимом кластера leader.

{
  "leader" : {
    "seeds" : [
      "127.0.0.1:9300"
    ],
    "connected" : true,
    "num_nodes_connected" : 1, 
    "max_connections_per_cluster" : 3,
    "initial_connect_timeout" : "30s",
    "skip_unavailable" : true,
    "mode" : "sniff"
  }
}

Количество узлов в удалённом кластере, к которым подключился локальный кластер.

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/_connect_to_a_remote_cluster.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API