ATE Documentation portal logo
Помощь
Обновлена 30 октября 2026 г. в 12:05

Внутренние плейбуки

Внутренние плейбуки — составные части других сценариев. Обычно не требуется запускать их напрямую — они приведены здесь для справки.

Большинство плейбуков этой категории используется сценарием последовательного обновления continuous_update.yml: доставка пакета, обновление реплик, переключение лидера, обновление мастеров, обновление stateless-экземпляров, обновление экземпляров модуля API TQE, обновление планировщиков TCS. Каждый шаг выполняется с проверкой состояния кластера.

upgrade_tarantool_3_package.yml

Плейбук для доставки пакета Tarantool 3 на один хост. Доставляет пакет, создаёт директории и обновляет установленный пакет.

В составе сценария обновления вызывается первым, до переключения лидера и обновления экземпляров.

Переменные

Переменная

Описание

tarantool_package_path

Путь к пакету Tarantool на стороне инсталлятора.

Примеры

Запуск через коллекцию:

ansible-playbook -i ${PATH_TO_INVENTORY} \    --user ${SUPER_USER_NAME} \    -e ansible_ssh_private_key_file=${PATH_TO_PRIVATE_KEY} \    -e tarantool_package_path=${PATH_TO_PACKAGE} \    playbooks/upgrade_tarantool_3_package.yml --limit ${LIMIT}

update_tarantool_3_inst.yml

Плейбук для обновления экземпляров Tarantool 3. Обновляет метаданные и символическую ссылку на пакет, затем перезапускает экземпляр через systemd.

Обновление выполняется пакетами (serial) размером update_batch_size.

В составе сценария обновления вызывается дважды: сначала для реплик наборов реплик, затем — после переключения лидера — для мастеров.

Переменные

Переменная

Описание

update_batch_size

Количество хостов в пакете обновления. Значение по умолчанию: 1.

Примеры

Запуск через коллекцию:

ansible-playbook -i ${PATH_TO_INVENTORY} \    --user ${SUPER_USER_NAME} \    -e ansible_ssh_private_key_file=${PATH_TO_PRIVATE_KEY} \    playbooks/update_tarantool_3_inst.yml --limit ${LIMIT}

update_internal.yml

Плейбук для обновления stateless-экземпляров Tarantool 3 — экземпляров без состояния (роутеров и подобных). Обновляет символическую ссылку экземпляра на новый дистрибутив, затем перезапускает экземпляр через systemd. Доставку и установку пакета выполняет плейбук upgrade_tarantool_3_package.yml, вызываемый в сценарии обновления ранее.

Обновление выполняется пакетами (serial) размером update_batch_size, порядок хостов — случайный (shuffle).

В составе сценария обновления вызывается после обновления мастеров, перед обновлением планировщиков TCS.

Переменные

Переменная

Описание

update_batch_size

Количество хостов в пакете обновления. Значение по умолчанию: 2.

Примеры

Запуск через коллекцию:

ansible-playbook -i ${PATH_TO_INVENTORY} \    --user ${SUPER_USER_NAME} \    -e ansible_ssh_private_key_file=${PATH_TO_PRIVATE_KEY} \    playbooks/update_internal.yml --limit ${LIMIT}

upgrade_scheduler.yml

Плейбук для обновления планировщиков TCS. Вызывает задачи обновления роли tcs.

Обновление выполняется пакетами (serial) размером update_batch_size.

В составе сценария обновления вызывается после обновления всех экземпляров Tarantool, но перед обновлением схемы данных и финальной проверкой состояния кластера.

Переменные

Переменная

Описание

update_batch_size

Количество хостов в пакете обновления. Значение по умолчанию: 1.

Примеры

Запуск через коллекцию:

ansible-playbook -i ${PATH_TO_INVENTORY} \    --user ${SUPER_USER_NAME} \    -e ansible_ssh_private_key_file=${PATH_TO_PRIVATE_KEY} \    playbooks/upgrade_scheduler.yml --limit ${LIMIT}

wait_replication_sync.yml

Плейбук ожидания синхронизации репликации на целевых экземплярах перед плановой операцией: переключением лидера в continuous_update.yml или удалением старых экземпляров в relocate_instances.yml. В сценарии continuous_update.yml проверка выполняется только при включённой переменной tarantool_replication_sync_check_enabled (значение по умолчанию: false).

На каждом целевом экземпляре плейбук с повторными попытками проверяет состояние репликации: каждое существующее upstream-соединение должно иметь статус follow с известным лагом, модуль которого меньше tarantool_replication_sync_max_lag. Экземпляр в режиме чтения без upstream-соединений не проходит проверку. Если условие не выполняется за отведённое число попыток, плейбук завершается с ошибкой и плановая операция не выполняется.

Переменные

Переменная

Описание

tarantool_replication_sync_retries

Количество попыток проверки. Значение по умолчанию: 120.

tarantool_replication_sync_delay

Задержка между попытками в секундах. Значение по умолчанию: 5.

tarantool_replication_sync_max_lag

Максимально допустимый модуль лага upstream-соединения в секундах. Значение по умолчанию: 1.

Примеры

Запуск через коллекцию:

ansible-playbook -i ${PATH_TO_INVENTORY} \    --user ${SUPER_USER_NAME} \    -e ansible_ssh_private_key_file=${PATH_TO_PRIVATE_KEY} \    playbooks/wait_replication_sync.yml --limit ${LIMIT}
Была ли статья полезна?