Обновление трекера из панели
Как проверить и установить новый выпуск во вкладке «Обновления» и что делает трекер, если новая версия не запустилась.
Новый выпуск трекера устанавливается из панели: Настройки → Обновления. Вкладку видят владелец и администратор, обновлять может только владелец установки. Перед установкой трекер сохраняет копию данных и на время копирования и установки останавливает приём кликов и постбеков, а при ошибке сам возвращает прежнюю версию.
Где находится раздел и кто может обновлять
Владелец установки — учётная запись владельца, заданная при установке трекера, см. Мастер первого запуска. Из режима входа под пользователем и по API-токену обновление недоступно. Другие владельцы и администраторы видят сообщение «Обновления доступны только владельцу установки».
Вверху вкладки показаны:
- Установленная версия и метка «Клиентская установка»;
- строка «Последняя проверка» с датой или «Проверьте наличие нового выпуска.», если проверок ещё не было;
- строка «Служба установки» — версия службы, которая выполняет обновления на сервере.
При метке «Среда разработки» кнопки Проверить обновления нет: обновление из панели в такой среде не применяется.
Проверка обновлений
- Откройте Настройки → Обновления.
- Нажмите Проверить обновления.
- Дождитесь, пока в блоке «Проверка обновлений» появится «Готово».
Трекер загружает список выпусков и проверяет его подпись и срок действия. Трафик при проверке не останавливается.
Результат — один из двух:
- карточка «Доступна версия …» с описанием выпуска, строкой «Размер выпуска» и кнопкой Установить…;
- строка «Установлен текущий выпуск.» — обновлять нечего.
Если кнопка Установить… неактивна, а над карточкой показано сообщение «Сначала обновите службу установки на сервере: bash install.sh --update-controller. Работающий трекер сохраняется.», выполните шаги со страницы Обновление службы установки.
Установка
Пока идут копирование и установка, ссылки кампаний и адрес постбека отвечают кодом 503: клики и постбеки за это время не записываются. Панель данные не загружает, виден только ход обновления. Длительность паузы зависит от объёма данных.
- Нажмите Установить… в карточке «Доступна версия …».
- В окне «Обновить до …?» отметьте флажок «На время копирования и обновления разрешаю приостановить приём кликов и постбеков. Длительность зависит от объёма данных.»
- Нажмите Создать копию и обновить.
- Следите за этапами в блоке «Обновление до …».
| Этап | Что происходит | Трафик |
|---|---|---|
| Проверка выпуска | Список выпусков загружается и проверяется заново | Идёт |
| Загрузка выпуска | Архив скачивается, сверяются размер, контрольная сумма, подпись и совместимость с установленной версией | Идёт |
| Проверка совместимости | Проверяются сервер, службы трекера и свободное место для копии | Идёт |
| Создание резервной копии | Приём трафика закрывается, службы останавливаются, данные копируются на диск сервера | На паузе |
| Установка новой версии | Заменяются файлы установки | На паузе |
| Проверка запуска | Новая версия запускается, проверяются службы, базы и страница входа в панель | На паузе |
| Готово | Трафик открыт | Идёт |
Вкладку можно оставить открытой: ход обновления виден и во время перезапуска панели. Строка «Связь со службой временно недоступна. Ожидаем восстановления; это ещё не результат операции.» — не ошибка, дождитесь следующего этапа.
Ошибка на первых трёх этапах отменяет установку до паузы: работающая версия и трафик не затронуты. Этап сменится на «Не завершено», под ним появится причина — см. Сообщения и что делать.
Проверка
- Дождитесь этапа «Готово».
- Убедитесь, что в поле Установленная версия стоит новая версия, а ниже есть строка «Установлен текущий выпуск.»
- Раскройте История операций: в строке с номером версии результат «Готово».
Состояние служб после обновления — на странице Состояние системы.
Копия перед обновлением
Копия создаётся при остановленных службах и хранится на этом же сервере. Она нужна для автоматического возврата и не заменяет резервные копии на отдельном сервере хранения. После обновления копия остаётся на диске и сама не удаляется. Как проверить, закрепить и очистить такие копии — на странице Локальные копии обновлений.
Автоматический откат
Если ошибка случилась после начала паузы, трекер возвращает прежнюю версию сам:
- ошибка при создании копии — службы запускаются обратно, трафик открывается;
- ошибка при установке или проверке запуска — возвращаются прежние файлы установки и данные из копии, запускается прежняя версия.
В блоке операции этап сменится на «Возвращаем предыдущую версию», затем на «Предыдущая версия восстановлена» с текстом «Новая версия не прошла проверку. Предыдущая версия и данные восстановлены.» Если сервер перезагрузился во время обновления, служба установки выполнит возврат после запуска сервера.
Откат относится только к незавершённой установке. После этапа «Готово» вернуть прежнюю версию из панели нельзя, а более старый выпуск трекер не принимает.
Блокировка
Если возврат прежней версии не удался, в блоке операции появляются этап «Нужно восстановление администратором сервера» и текст «Автоматическое восстановление не завершилось. Трафик остаётся на паузе. Нужна проверка администратором сервера.» Новые проверка и установка не запускаются, пока блокировка не снята.
Дальше действует администратор сервера. Сведения об обновлении сохранены: после устранения причины перезапустите службу установки.
sudo systemctl restart tracker-updates.serviceПри запуске служба повторяет возврат прежней версии. После успешного возврата трафик открывается, блокировка снимается. Как посмотреть состояние службы — на странице Файлы установки, порты, службы и журналы.
Не удаляйте файл .updates/journal.json в каталоге установки: по нему служба возвращает прежнюю версию и данные.
Сообщения и что делать
| Сообщение | Что делать |
|---|---|
| Служба обновлений недоступна | Служба установки на сервере не отвечает. Администратор сервера проверяет службу tracker-updates.service |
| На сервере уже выполняется другая операция. Дождитесь её завершения. | Идёт другая операция, например резервная копия или восстановление. Повторите позже |
| Не удалось загрузить выпуск. Работающая версия сохранена. | Сервер не скачал список выпусков или архив по HTTPS. Повторите позже |
| Список выпусков устарел или не прошёл проверку. Проверьте обновления ещё раз. | Срок действия списка истёк или список не подходит этой установке. Повторите проверку позже |
| Доступный выпуск изменился. Проверьте обновления ещё раз. | После последней проверки в списке появился другой выпуск. Нажмите Проверить обновления |
| Подпись или целостность выпуска не подтверждена. Установка отменена. | Список выпусков или архив не прошли проверку подписи. Повторите проверку и установку |
| На сервере недостаточно места для выпуска и резервной копии. | Освободите место на диске, например очистите старые копии обновлений |
| Для этого выпуска требуется отдельная миграция. Автоматическое обновление недоступно. | Выпуск не ставится из панели поверх установленной версии. Работающая версия не затронута |
| Сначала обновите службу установки на сервере: bash install.sh --update-controller. Работающий трекер сохраняется. | Выполните шаги со страницы Обновление службы установки |
| Операция прервана до смены версии. Её можно запустить снова. | Служба установки перезапустилась во время операции. Запустите операцию ещё раз |
| Операция не завершена. Проверьте состояние сервера и повторите попытку. | Проверьте, что на странице Состояние системы все службы работают, а на диске хватает места для копии данных. Затем повторите |
| Конфигурация установки изменилась. Нужна проверка администратором сервера. | Файлы в каталоге установки не совпадают с установленным выпуском. Обратитесь к администратору сервера |
| Срок доступа к ходу операции истёк. Обновите состояние после входа в панель. | Обновите страницу. Результат — в блоке История операций |