Настройки удаленного кластера
Следующие настройки применяются как к режиму sniff, так и к режиму прокси. Настройки, специфичные для каждого режима, описаны отдельно.
-
cluster.remote.<cluster_alias>.mode - Режим, используемый для подключения к удаленному кластеру. Поддерживаются только режимы
sniffиproxy. По умолчанию используетсяsniff. Дополнительную информацию об этих режимах см. в Режимы подключения, а о настройках для режимов sniff и прокси см. соответственно в Настройки удаленного кластера в режиме sniff и Настройки удаленного кластера в режиме прокси. -
cluster.remote.initial_connect_timeout - Время ожидания установления подключения к удаленным кластерам при запуске узла. По умолчанию используется
30s. -
remote_cluster_clientроль - По умолчанию любой узел в кластере может действовать как клиент межкластерного взаимодействия и подключаться к удаленным кластерам. Чтобы предотвратить подключение узла к удаленным кластерам, задайте настройку node.roles в
elasticsearch.ymlи исключитеremote_cluster_clientиз перечисленных ролей. Запросы поиска, направленные на удаленные кластеры, должны отправляться узлу, имеющему разрешение на работу как клиенту межкластерного взаимодействия. Для других функций, таких как потоки данных машинного обучения data feeds, трансформации и межкластерная репликация, требуется рольremote_cluster_client. -
cluster.remote.<cluster_alias>.skip_unavailable - Флаг, устанавливаемый на уровне кластера, который позволяет пропускать конкретные кластеры, когда доступны не все узлы, а они являются целью запроса к удаленному кластеру.
В Elasticsearch 8.15 значение по умолчанию для skip_unavailable было изменено с false на true. До Elasticsearch 8.15, если вы хотите, чтобы кластер считался необязательным для межкластерного поиска, вам необходимо установить эту конфигурацию. Начиная с Elasticsearch 8.15, вам нужно установить эту конфигурацию, чтобы сделать кластер обязательным для межкластерного поиска. После обновления локального узла координатора поиска ("запрашивающего" кластера) до версии 8.15 или новее, любые удаленные кластеры, не имеющие явного параметра для skip_unavailable, немедленно переключатся на новое значение по умолчанию - true. Это верно независимо от того, обновлены ли удалённые кластеры до версии 8.15, так как поведение поиска skip_unavailable полностью определяется настройкой локального кластера, где вы настраиваете удалённые кластеры.
-
cluster.remote.<cluster_alias>.transport.ping_schedule - Устанавливает интервал времени между регулярными сообщениями пинга на уровне приложения, которые отправляются для поддержания соединений с удалёнными кластерами. Если установлено значение
-1, сообщения пинга на уровне приложения для этого удалённого кластера не отправляются. Если не установлено, сообщения пинга на уровне приложения отправляются в соответствии с глобальной настройкойtransport.ping_schedule, которая по умолчанию равна-1, что означает, что пинги не отправляются. Предпочтительно правильно настроить TCP keep-alives вместо настройкиping_schedule, потому что TCP keep-alives обрабатываются операционной системой, а не Elasticsearch. По умолчанию Elasticsearch включает TCP keep-alives для подключений к удалённым кластерам. Подключения к удалённым кластерам являются транспортными подключениями, поэтому к ним применяютсяtransport.tcp.*дополнительные настройки, касающиеся TCP keep-alives. -
cluster.remote.<cluster_alias>.transport.compress - Настройка на уровне кластера, позволяющая настроить сжатие запросов для определённого удалённого кластера. Обрабатывающий кластер автоматически будет сжимать ответы на сжатые запросы. Доступные варианты настройки:
true,indexing_dataиfalse. Если не установлено, по умолчанию используется поведение, указанное в настройке узлаtransport.compress. Дополнительную информацию см. в документации для настройкиtransport.compress. -
cluster.remote.<cluster_alias>.transport.compression_scheme - Настройка на уровне кластера, которая позволяет настроить схему сжатия для запросов к определённому кластеру, если эти запросы выбраны для сжатия настройкой
cluster.remote.<cluster_alias>.transport.compress. Обрабатывающий кластер автоматически будет использовать ту же схему сжатия для ответов, что и для соответствующих запросов. Доступные варианты настройки:deflateиlz4. Если не установлено, по умолчанию используется поведение, указанное в настройке узлаtransport.compression_scheme. Дополнительную информацию см. в документации для настройкиtransport.compression_scheme. -
cluster.remote.<cluster_alias>.credentials - (Безопасность, Перезагружаемые) Настройка на уровне кластера для настройки удаленных кластеров с использованием модели API-ключей. Эта настройка принимает закодированное значение ключа API для межкластерного взаимодействия и должна быть задана в хранилище ключей Elasticsearch на каждом узле кластера. Наличие (или отсутствие) этой настройки определяет используемую модель удаленного кластера. При наличии используется модель API-ключей. В противном случае используется модель на основе сертификатов. Если настройка добавлена, удалена или обновлена в хранилище ключей Elasticsearch и перезагружена с помощью API перезагрузки настроек безопасности узлов, кластер автоматически перестроит подключение к удалённому кластеру.
Настройки удалённого кластера в режиме sniff
Чтобы подключиться к удалённому кластеру в режиме sniff, установите cluster.remote.<cluster_alias>.mode: sniff и настройте следующие параметры. Вы также можете оставить cluster.remote.<cluster_alias>.mode без настройки, так как sniff является режимом по умолчанию.
-
cluster.remote.<cluster_alias>.seeds - Список узлов-семян, используемых для определения состояния удалённого кластера.
-
cluster.remote.<cluster_alias>.node_connections - Количество узлов шлюза для подключения к этому удалённому кластеру. По умолчанию используется
3.
-
cluster.remote.node.attr - Атрибут узла для фильтрации узлов, которые могут быть узлами-шлюзами в удалённом кластере. Например, узел может иметь атрибут
node.attr.gateway: true, так что к нему будут подключаться только узлы с этим атрибутом, еслиcluster.remote.node.attrустановлено в значениеgateway.
Настройки удалённого кластера в режиме прокси
Чтобы подключиться к удалённому кластеру в режиме прокси, установите cluster.remote.<cluster_alias>.mode: proxy и настройте следующие параметры.
-
cluster.remote.<cluster_alias>.proxy_address - Адрес, используемый для всех подключений к удалённому кластеру.
-
cluster.remote.<cluster_alias>.proxy_socket_connections - Количество сокетов, открытых на подключение к удалённому кластеру. По умолчанию используется
18.
-
cluster.remote.<cluster_alias>.server_name - Необязательная строка имени хоста, которая отправляется в поле
server_nameрасширения TLS Server Name Indication, если TLS включен. TLS-транспорт не сможет открыть подключение к удалённому кластеру, если это поле не является корректным именем хоста, как определено спецификацией TLS SNI.
© 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/remote-clusters-settings.html