Восстановление на новом сервере
Перенос трекера на пустой сервер из копии на SFTP-хранилище: в мастере первого запуска или в терминале с параметром --restore-env.
Этот сценарий нужен, когда прежний сервер потерян или трекер переезжает на другой сервер. Данные берутся из резервной копии на SFTP-хранилище, домены и лицензия задаются заново. Чтобы вернуть данные на работающей установке, используйте восстановление на месте.
Что подготовить
- Пустой сервер по странице Требования к серверу и подготовка и два домена с DNS-записями на его IP.
- Доступ к серверу хранения с копией: публичный IP, порт SSH, логин, пароль или приватный SSH-ключ и папка. Папка та же, что в поле Папка на сервере при подключении хранилища, например
/backups. - Отпечаток ключа сервера хранения: с ним сверяется отпечаток, который покажет мастер.
- Логин и пароль владельца на момент создания копии: после восстановления вход выполняется ими.
- Новый ключ лицензии. Ключ и привязка из копии не переносятся, новый ключ кабинет выдаёт после отвязки прежнего сервера — см. Перенос лицензии на другой сервер.
Копия подходит только к выпуску с той же схемой данных и теми же версиями баз, что были при её создании. Установщик ставит на новый сервер текущий выпуск. Если прежний сервер работает, обновите на нём трекер и создайте свежую копию.
Создайте копию до отвязки лицензии. После отвязки панель прежнего сервера закроется, и создать в ней копию будет нельзя.
Установка и первый шаг мастера
Восстановление в мастере доступно только на пустом сервере, до первого запуска трекера.
- Установите трекер на новый сервер по странице Установка.
- Откройте ссылку на мастер с кодом доступа.
- Заполните Домен панели, Домен трекинга и Email для уведомлений.
- Нажмите Проверить и продолжить.
Мастер выпустит HTTPS-сертификаты и откроет шаг 2 на защищённом адресе. Экраны шага 1 разобраны на странице Мастер первого запуска.
Форму владельца на шаге 2 не заполняйте и кнопку Запустить трекер не нажимайте. Она создаёт пустую установку, после этого восстановить копию в мастере нельзя.
Подключение хранилища
На шаге 2 над формой раскройте блок Восстановить из резервной копии.
| Поле | Что указать |
|---|---|
| IP сервера копий | Публичный IP сервера хранения, например 203.0.113.10. Доменное имя и частные адреса не принимаются |
| Порт SSH | По умолчанию 22 |
| Логин SSH | По умолчанию root |
| Каталог хранилища | Папка хранилища, например /backups. Полный путь от / без / в конце. Копии мастер ищет в её подпапке tracker-backups |
| Авторизация | Пароль или SSH-ключ. По умолчанию Пароль |
| Пароль или пароль ключа | Пароль пользователя. При входе по ключу — пароль ключа, если он задан |
| Приватный SSH-ключ — при входе по ключу | Текст приватного ключа |
- Заполните IP сервера копий, Порт SSH, Логин SSH и Каталог хранилища.
- Нажмите Проверить сервер. Под кнопкой появится строка
SHA256: …— отпечаток сервера. Пароль и ключ серверу хранения на этом шаге не отправляются. - Сравните отпечаток с отпечатком вашего сервера хранения.
- Отметьте Отпечаток совпадает с ключом моего сервера, если отпечатки совпали.
- Выберите способ в поле Авторизация.
- Введите пароль или вставьте ключ.
- Нажмите Показать копии.
В списке Завершённая копия появятся копии от новых к старым, у каждой — дата создания и размер в мегабайтах. Незавершённые загрузки в список не попадают.
Ход операции показан строкой под кнопкой Скачать и проверить, например «Читаем резервные копии». Сообщения об ошибках появляются внизу страницы, под формой владельца.
Повторное нажатие Проверить сервер снимает отметку об отпечатке и очищает список копий. Если после проверки изменить IP, порт или логин, получите отпечаток заново.
Выбор и проверка копии
- Выберите копию в списке Завершённая копия.
- Нажмите Скачать и проверить.
- Дождитесь, пока статус «Скачиваем и проверяем копию» сменится сводкой.
Мастер скачивает копию на новый сервер и проверяет:
- состав копии и контрольные суммы архивов;
- совпадение схемы данных с установленным выпуском;
- совпадение версий баз;
- свободное место: после скачивания должно оставаться не меньше размера распакованных данных с запасом 20% и ещё 2 ГБ.
Сводка начинается словом «Проверено:». В ней дата создания копии, её версия, домен прежней панели и новый домен панели с шага 1. Под сводкой появятся поля Новый ключ лицензии и Введите ВОССТАНОВИТЬ.
Запуск восстановления
- Вставьте ключ в поле Новый ключ лицензии. Формат —
XXXX-XXXX-XXXX-XXXX. Поле можно оставить пустым и ввести ключ после восстановления. - В поле Введите ВОССТАНОВИТЬ наберите
ВОССТАНОВИТЬзаглавными буквами без пробелов. - Нажмите Восстановить трекер.
Откроется экран «Запускаем трекер». В строке Владелец показан логин владельца из копии. Статус меняется по порядку: «Подготавливаем трекер», «Восстанавливаем геобазы», «Восстанавливаем: …» для каждой части копии, «Проверяем базу и очередь отправок», «Запускаем базы и панель», «Проверяем готовность». Трафик открывается только после проверки готовности. Вкладку можно закрыть: восстановление продолжится на сервере.
Когда всё готово, появится экран «Трекер готов», и браузер откроет страницу входа. Ключ, введённый в мастере, трекер активирует сам.
Что берётся из копии
| Из копии | Задаётся заново |
|---|---|
| Кампании, потоки, офферы, лендинги, источники и настройки | Домен панели и домен трекинга — с шага 1 мастера |
| Пользователи и их пароли | HTTPS-сертификаты — мастер выпускает новые |
| Статистика, очередь кликов и журнал доставки событий | Ключ лицензии и привязка к серверу |
| Файлы локальных офферов и лендингов, геобазы | Подключение сервера хранения и расписание копий |
| Название и логотип команды | Email для уведомлений о сертификатах |
Вход и проверка
- Откройте
https://panel.example.com/login. - Войдите логином и паролем владельца из копии. Новый владелец не создаётся, пароли пользователей не меняются.
- Откройте Настройки → Лицензия. Состояние должно быть «Лицензия активна».
- Откройте Настройки → Резервные копии и подключите сервер хранения заново.
- Откройте Логи → Доставка событий и найдите записи с результатом Восстановлено из копии · нужна сверка.
Если вместо панели открылся экран «Доступ к трекеру закрыт», лицензия не активна. Введите новый ключ в поле Ключ лицензии и нажмите Активировать. Если ключ введён в мастере, дождитесь окончания подтверждения прежнего сервера — см. Ожидание после отвязки.
Записи с результатом Восстановлено из копии · нужна сверка — задачи, которые на момент создания копии не были завершены. Сами они не отправятся: прежний сервер мог отправить их уже после создания копии. Сверьте их у получателя и только потом повторяйте — см. Ручной повтор.
Файл /opt/tracker/owner-access.txt после восстановления содержит адрес панели и напоминание войти учётной записью владельца из копии. Пароля в нём нет.
Вариант в терминале: --restore-env
Вариант для установки без браузера. Установщик получает файл .env.production из копии и создаёт новую установку с прежними серверными ключами: без них копия не пройдёт проверку в панели. Данные затем восстанавливаются из панели. Требование к выпуску то же, что в мастере.
- Скачайте с сервера хранения архив
server.tarнужной копии. Он лежит в подпапкеtracker-backupsпапки хранилища, в папке этой копии. - Достаньте из архива файл
.env.production. - Положите файл на новый сервер вне каталога установки, например в
/root/recovery/, с правами0600. Каталог/opt/trackerдо установки должен оставаться пустым. - Запустите установщик командой ниже. В
--admin-emailукажите логин владельца прежней установки. - Дождитесь строки «Готово. Панель: https://panel.example.com».
- Войдите в панель с логином и паролем из файла
/opt/tracker/owner-access.txt. - Подключите прежнее хранилище копий.
- Выполните проверку и восстановление нужной копии.
sudo bash install.sh --restore-env /root/recovery/.env.production --panel panel.example.com --track track.example.com --email [email protected] --admin-email adminПосле восстановления резервные копии, обновления и ключ лицензии доступны только учётной записи с логином из --admin-email, поэтому он должен совпадать с логином владельца из копии. При повторном запуске установщика укажите тот же файл. Неполный файл установщик не принимает: «Файл восстановления не содержит все необходимые серверные секреты.» Все параметры — на странице Параметры install.sh и установка в терминале.
Лицензия в этом варианте сама не сбрасывается. Если панель после установки или после восстановления показывает экран «Доступ к трекеру закрыт», отвяжите сервер в кабинете и активируйте новый ключ — см. Перенос лицензии на другой сервер.
Если не получилось
Команда docker завершилась ошибкой (1).
Общее сообщение блока восстановления: мастер не смог проверить сервер, прочитать хранилище или скачать копию. Проверьте:
- в поле IP сервера копий стоит публичный IP, а не домен;
- Порт SSH и Логин SSH верны, сервер хранения принимает SSH-соединения с нового сервера;
- Каталог хранилища — полный путь от
/без/в конце, и в этой папке естьtracker-backups; - пароль или ключ введены и верны. После обновления страницы поля блока заполняются заново;
- отпечаток сервера хранения не изменился после нажатия Проверить сервер;
- на диске нового сервера свободно не меньше размера копии и ещё 2 ГБ.
Сообщения проверки и запуска
| Сообщение | Причина | Что сделать |
|---|---|---|
| Сверьте и подтвердите отпечаток SFTP-сервера. | Не стоит отметка Отпечаток совпадает с ключом моего сервера либо IP, порт или логин изменены после проверки | Нажмите Проверить сервер, сверьте отпечаток и поставьте отметку |
| Выберите завершённую копию из списка. | В списке Завершённая копия ничего не выбрано | Нажмите Показать копии и выберите копию |
| Версии баз данных отличаются от копии. Нужен совместимый выпуск. | На новом сервере стоит не тот выпуск, на котором создана копия | Установите на пустой сервер выпуск, на котором создана копия |
| Недостаточно места для распаковки копии и запуска баз. | На диске нового сервера мало места | Увеличьте диск и нажмите Скачать и проверить ещё раз. Каждая проверка скачивает копию заново |
| Контрольная сумма копии не совпала. | Файлы скачанной копии не совпали с её описью | Выберите другую копию |
| Копия неполная или несовместимого формата. | В копии нет части архивов или у неё другой формат | Выберите другую копию |
| Сначала проверьте копию и подтвердите восстановление. | Слово в поле Введите ВОССТАНОВИТЬ набрано иначе либо копия не проверена | Введите ВОССТАНОВИТЬ заглавными буквами без пробелов |
| Введите ключ XXXX-XXXX-XXXX-XXXX. | Ключ в поле Новый ключ лицензии не подходит под формат | Исправьте ключ или очистите поле |
Схема копии отличается. Установите выпуск, на котором создана копия, затем обновите трекер.
Копия создана на другом выпуске трекера.
- Прежний сервер работает: обновите на нём трекер, создайте новую копию и выберите её в мастере. Кнопка Показать копии перечитывает список.
- Прежнего сервера нет: нужен пустой сервер с выпуском, на котором создана копия. Адрес или файл выпуска передаётся установщику параметром
--bundle, см. Параметры install.sh и установка в терминале. После восстановления обновите трекер из панели.
Нужно повторить запуск
Восстановление остановилось с ошибкой, её текст показан на экране. Выбранная копия закреплена за установкой: выбрать другую копию или создать пустую установку уже нельзя. Устраните причину и нажмите Повторить запуск. Сообщения запуска разобраны на странице Ошибки установки и их устранение.
Сообщение «Копия содержит неподдерживаемый файл геобазы.» повтором не устраняется: причина в самой копии — см. Геобазы трекера.