Обновление конфигурации кластеров YDB, развёрнутых с Ansible

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

Обновление конфигурации через Ansible playbook

В репозитории ydb-ansible есть playbook под названием ydb_platform.ydb.update_config, который можно использовать для обновления конфигурации кластера YDB. Перейдите в ту же директорию, которая использовалась для первоначального развёртывания кластера, отредактируйте файл files/config.yaml по необходимости и затем запустите этот playbook:

ansible-playbook ydb_platform.ydb.update_config

Этот playbook развернёт новую версию конфигурационных файлов и затем выполнит постепенную перезагрузку кластера.

Фильтрация по типу узла

Задачи в playbook ydb_platform.ydb.update_config помечены типами узлов, поэтому вы можете использовать функциональность тегов Ansible для фильтрации узлов по их типу.

Эти две команды эквивалентны и изменят конфигурацию всех узлов хранения:

ansible-playbook ydb_platform.ydb.update_config --tags storage
ansible-playbook ydb_platform.ydb.update_config --tags static

Эти две команды эквивалентны и изменят конфигурацию всех узлов баз данных:

ansible-playbook ydb_platform.ydb.update_config --tags database
ansible-playbook ydb_platform.ydb.update_config --tags dynamic

Пропуск перезагрузки

Также есть тег no_restart, который позволяет только обновить конфигурационные файлы и пропустить перезагрузку кластера. Это может быть полезно, если кластер будет перезагружен позже вручную или в рамках других задач по обслуживанию. Пример запуска:

ansible-playbook ydb_platform.ydb.update_config --tags no_restart

Динамическая конфигурация

У YDB есть собственный механизм управления конфигурацией под названием динамическая конфигурация. Он не зависит от выбранного метода развёртывания кластера и позволяет гибко настраивать кластер даже в мультиарендных средах.

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

Предыдущая
Следующая