Назад | Перейти на главную страницу

Как декларативно развернуть шаблон по умолчанию в кластере Elasticsearch Operator (ECK) на GKE?

Я развертываю два кластера Elasticsearch 6.8.x в Kubernetes на Google Cloud Platform, используя Оператор Elasticsearch 1.1.0 от Elastic.co.

Поскольку я хочу, чтобы это контролировалось версиями и повторялось, я пытаюсь настроить все декларативно. С помощью Gitlab CI я развертываю Оператор, манифесты для кластеров и некоторые секреты, содержащие роли и пользователей ES ( Новая функция в 1.1.0) в GKE. Затем Оператор все настраивает. Все это хорошо работает.

Последний шаг - применить шаблон по умолчанию к кластерам, чтобы уменьшить количество сегментов на индекс до 1, вместо 5 сегментов по умолчанию (в ES версии 6 значение по умолчанию по-прежнему равно 5, в версии 7 оно стало 1.

Если бы это было сделано вручную, я бы ПОСТАВИЛ следующий шаблон, чтобы установить желаемое сегментирование.

PUT /_template/default
{
    "order" : -1,
    "index_patterns" : [
      "*"
    ],
    "settings" : {
      "index" : {
        "number_of_shards" : "1",
        "number_of_replicas" : "1"
      }
    }
}

Как это сделать декларативно? Я мог бы создать пользователя и развернуть задание k8s, которое выполняет запрос curl для каждого кластера с помощью указанной выше команды, но это кажется слишком сложным. Я бы предпочел вообще не входить в ES. Есть идеи получше?