Тема
Обновления
Kvalli сам не проверяет, вышла ли новая версия: установка с выключенной телеметрией ничего никуда не отправляет. Обновляйтесь вручную, автоматически на патч-выпуски или по сигналу от нас: установки, которые присылают телеметрию, видны нам вместе с версией.
Миграции базы применяются автоматически при запуске, до того как приложение начнёт принимать запросы, и идут только вперёд. Поэтому перед любым обновлением нужна резервная копия — install.sh делает её сам.
Через install.sh
bash
sudo /opt/kvalli/install.sh upgrade --image ghcr.io/kvalli-ai/kvalli:2.3.0Команда:
- делает резервную копию;
- сохраняет работающий образ под локальным тегом
kvalli-rollback:<время>; - переключает образ и перезапускает приложение, миграции идут при старте;
- если новая версия не ответила за 3 минуты (
KVALLI_HEALTH_TIMEOUT), а пока идут миграции — за час (KVALLI_MIGRATION_TIMEOUT), откатывается сама.
На сервере без доступа к реестру — то же с --image-archive.
Откат
bash
sudo /opt/kvalli/install.sh rollbackОтменяет последнее обновление: возвращает прежний образ вместе с данными на момент перед обновлением. Миграции идут только вперёд, поэтому старой версии нужны старые данные. Текущее состояние перед откатом тоже копируется.
Автоматические патч-выпуски
bash
sudo /opt/kvalli/install.sh install --domain kvalli.acme.com --email qa-lead@acme.com \
--auto-update patch- Канал — минорный тег установленного выпуска:
…:2.2.3следит за…:2.2, который сдвигается на каждый патч. - Проверка — каждую ночь в 03:15 (
/etc/cron.d/kvalli-auto-update), лог —/opt/kvalli/auto-update.log. - Новый образ ставится с резервной копией. Если он не запустился, установка откатывается и запоминает его в
failed-images, чтобы не пробовать каждую ночь, — следующий патч будет взят. - Минорные и мажорные версии автоматически не ставятся никогда. Ручной
upgradeна такую версию переводит канал (…:2.3.0начинает следить за…:2.3), аrollbackвозвращает его обратно. - Ночное обновление никогда не ставит версию старше работающей.
--auto-update offвыключает его.
Переход со Starter на Pro
Образ Starter не содержит кода платных модулей. Переключите установку на полный образ — данные и база останутся те же:
bash
sudo /opt/kvalli/install.sh upgrade --image ghcr.io/kvalli-ai/kvalli:2.3.0 \
--registry-user <github-user> --registry-token <токен на чтение>Затем установите лицензионный ключ.
Docker Compose вручную
Сделайте резервную копию — здесь её никто не сделает за вас. Затем поменяйте KVALLI_IMAGE в .env и выполните:
bash
docker compose pull
docker compose up -dТома сохраняются. Чтобы применять миграции самим, задайте KVALLI_AUTO_MIGRATE=false: рабочее пространство по умолчанию и первый администратор всё равно создаются при запуске.
Kubernetes
helm upgrade на новую версию чарта — см. Kubernetes: обновление.
Остановка
По SIGTERM сервер перестаёт принимать запросы, закрывает открытые потоки заданий, сохраняет состояние агентов и выходит в течение 8 секунд. Выполнявшиеся задания агентов при перезапуске завершаются ошибкой.
Какая версия работает
GET /api/health возвращает version и commit работающего экземпляра. Указывайте их в обращениях в поддержку.