Экспериментальные флаги функций

Релизы OpenSearch могут содержать экспериментальные функции, которые вы можете включать или отключать по мере необходимости. Существует несколько способов включения флагов функций в зависимости от типа установки.

Включение в opensearch.yml

Если вы запускаете кластер OpenSearch и хотите включить флаги функций в конфигурационном файле, добавьте следующую строку в opensearch.yml:

opensearch.experimental.feature.<feature_name>.enabled: true

Включение в контейнерах Docker

Если вы используете Docker, добавьте следующую строку в docker-compose.yml в разделе opensearch-node > environment:

OPENSEARCH_JAVA_OPTS="-Dopensearch.experimental.feature.<feature_name>.enabled=true"

Включение в установке tarball

Чтобы включить флаги функций в установке tarball, укажите новый параметр JVM либо в config/jvm.options, либо в OPENSEARCH_JAVA_OPTS.

Вариант 1: Изменение jvm.options

Добавьте следующие строки в config/jvm.options перед запуском процесса OpenSearch, чтобы включить функцию и ее зависимости:

-Dopensearch.experimental.feature.<feature_name>.enabled=true

Затем запустите OpenSearch:

./bin/opensearch

Вариант 2: Включение с помощью переменной окружения

В качестве альтернативы прямому изменению config/jvm.options, вы можете определить свойства, используя переменную окружения. Это можно сделать с помощью одной команды при запуске OpenSearch или определив переменную с помощью export.

Чтобы добавить флаги функций в строке при запуске OpenSearch, выполните следующую команду:

OPENSEARCH_JAVA_OPTS="-Dopensearch.experimental.feature.<feature_name>.enabled=true" ./opensearch-3.1.0/bin/opensearch

Если вы хотите определить переменную окружения отдельно перед запуском OpenSearch, выполните следующие команды:

export OPENSEARCH_JAVA_OPTS="-Dopensearch.experimental.feature.<feature_name>.enabled=true"
./bin/opensearch

Включение для разработки OpenSearch

Чтобы включить флаги функций для разработки, вы должны добавить правильные свойства в run.gradle перед сборкой OpenSearch. См. Руководство для разработчиков для получения информации о том, как использовать Gradle для сборки OpenSearch.

Добавьте следующие свойства в run.gradle, чтобы включить функцию:

testClusters {
    runTask {
      testDistribution = 'archive'
      if (numZones > 1) numberOfZones = numZones
      if (numNodes > 1) numberOfNodes = numNodes
      systemProperty 'opensearch.experimental.feature.<feature_name>.enabled', 'true'
    }
  }