Управление плагинами Elasticsearch
Важно
Сервис Yandex Managed Service for Elasticsearch недоступен с 11 апреля 2024 года.
Вы можете создать кластер OpenSearch в Yandex Cloud в качестве альтернативы Elasticsearch.
При создании или изменении кластера в Managed Service for Elasticsearch вы можете указать желаемый список плагинов, и они будут автоматически установлены в кластер. Полный список доступных плагинов приведен ниже.
Получить список установленных плагинов
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы получить список плагинов кластера, выполните команду:
yc managed-elasticsearch cluster get <имя_или_идентификатор_кластера>
Включенные плагины будут перечислены в списке plugins
.
Идентификатор и имя кластера можно получить со списком кластеров в каталоге.
Чтобы получить список установленных плагинов, воспользуйтесь методом REST API get для ресурса Cluster или вызовом gRPC API ClusterService/Get и передайте в запросе идентификатор кластера в параметре clusterId
.
Включенные плагины будут перечислены в списке plugins
.
Идентификатор кластера можно получить со списком кластеров в каталоге.
Изменить список установленных плагинов
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы изменить плагины кластера, передайте их список в параметре --plugins
команды CLI. При этом плагины, не упомянутые в списке, будут выключены.
yc managed-elasticsearch cluster update <имя_или_идентификатор_кластера> \
--plugins=<имя_плагина_1>,...,<имя_плагина_N>
Идентификатор и имя кластера можно получить со списком кластеров в каталоге.
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание кластера.
-
Добавьте к описанию кластера Managed Service for Elasticsearch в блоке
config
полеplugins
со списком плагинов:resource "yandex_mdb_elasticsearch_cluster" "<имя_кластера>" { ... config { ... plugins = [ "<список_имен_плагинов>" ] ... } ... }
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform
Чтобы изменить список установленных плагинов, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
-
Идентификатор кластера в параметре
clusterId
.Идентификатор кластера можно получить со списком кластеров в каталоге.
-
Список плагинов в параметре
configSpec.elasticsearchSpec.plugins
. Плагины, не упомянутые в списке, будут выключены. -
Список изменяемых полей конфигурации кластера в параметре
updateMask
.
Важно
Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Поддерживаемые плагины Elasticsearch
Полный список поддерживаемых плагинов:
-
Добавляет модуль Lucene ICU с расширенной поддержкой Unicode и использованием библиотек ICU. Модуль предоставляет улучшенный анализ азиатских языков, нормализацию Unicode, преобразование регистра Unicode, поддержку сопоставления и транслитерацию.
-
Добавляет модуль анализа Lucene kuromoji для японского языка.
-
Добавляет модуль анализа Lucene nori для корейского языка.
-
Предоставляет фильтры лексем, которые преобразуют выражения в их фонетическое представление с помощью Soundex, Metaphone и других алгоритмов.
-
Добавляет модуль анализа Smart Chinese от Lucene для китайского или смешанного китайско-английского текста.
-
Добавляет модуль анализа Stempel от Lucene для польского языка.
-
Добавляет морфологический модуль анализа UkrainianMorfologikAnalyzer от Lucene для украинского языка.
-
Извлекает вложения файлов в распространенных форматах (таких как PPT, XLS и PDF) с помощью библиотеки извлечения текста Apache Tika™.
-
Индексирует текст, представляющий собой комбинацию обычного текста и специальной разметки. Такая комбинация используется для идентификации объектов, таких как люди или организации.
-
Вычисляет хеш значений полей по индексному времени и хранит их в индексе.
-
Предоставляет поле метаданных
_size
, которое индексирует размер в байтах исходного поля_source
. -
Добавляет поддержку хранилища Azure Blob в качестве репозитория снапшотов.
-
Добавляет поддержку службы Google Cloud Storage в качестве репозитория снапшотов.
-
Добавляет поддержку файловой системы HDFS в качестве репозитория снапшотов.
-
Добавляет поддержку AWS S3 в качестве репозитория снапшотов.
-
Устраняет ошибки в Windows SMB и Java на Windows.
-
transport-nio
Серверно-клиентская неблокируемая сетевая библиотека, созданная с помощью Netty.
Подробнее см. в документации Elasticsearch