Обновление¶
Обновление Catena — это обновление пакетов; конфигурация, секреты и база переживают его без участия оператора.
Одна машина¶
apt update && apt install catena
Пакет catena обновляет стриминговый сервер строго до своей версии. Работающий сервис обновление не трогает — процесс продолжает работать на прежнем бинарнике, а на новый его переводит ручной перезапуск:
systemctl restart catena
Что важно знать:
- Момент прерывания выбираете вы: каналы машины прерываются только на время рестарта процесса — тёплый старт поднимает их сразу после. Перезапускайте в удобное для эфира окно.
- Секреты не ротируются:
/etc/catena/secrets.envпереживает любые обновления, пароли не меняются. - Схему базы central накатывает сам при старте — отдельного шага миграции нет.
На стримерах тем же способом обновляется пакет catena-streamer; перезапуск — та же команда.
Кластер¶
Обновляйте машины по одной. Это безопасно по построению:
- обменный протокол расширяется только добавлением — стороны игнорируют неизвестные поля, и central со стримерами соседних версий работают вместе;
- схема базы совместима в окне двух версий назад — код N−1 и N−2 работает против более новой схемы.
Держитесь этого окна: не позволяйте разнице версий внутри кластера превышать две. Явного обязательного порядка «сначала central, потом стримеры» нет — гарантии симметричны; практично начинать с central, чтобы консоль сразу показывала возможности новой версии.
Откат¶
Более новая схема базы под старым кодом — норма: откат бинарника на одну-две версии назад не требует отката базы. Установите предыдущую версию пакета — и всё. Откатывать саму базу нужно только вместе с восстановлением из дампа, и это уже не откат версии, а восстановление после аварии.