# Перенос трекера с сохранением данных

# В каком случае выполняется перенос трекера

  1. Частые критические неисправности в работе текущего сервера, на котором установлен трекер.

  2. Неподходящий функционал и система ценообразования.

  3. Недостаточно места на диске и отсутствие у текущего хостера возможности увеличения.

  4. Необходимость сменить дата-центр сервера и сохранить статистику.

  5. Необходим дубль или копия Keitaro для масштабирования связок или тестирования новых ГЕО.

# Актуальный метод выполнения переноса трекера 11 версии и выше на новый сервер

TIP

Убедитесь, что новый сервер не уступает текущему по характеристикам.

Все команды выполняются на сервере, на который требуется выполнить перенос.

  1. Залогиниться на старый сервер по SSH.

  2. Запустить команду создания дампа:

kctl backups create
1
  1. Когда дамп создан - запросить имя дампа командой:
ls -1 /var/lib/kctl-backups/common/
1

Скопировать имя дампа и перейти по ssh к новому серверу для выполнения дальнейших действий.

  1. На новом сервере запустить команду установки трекера:
curl keitaro.io/kctl.sh | bash -s -- install
1
  1. Создать директорию common для дампа:
mkdir -p /var/lib/kctl-backups/common/
1

Процессы внутри screen не прерываются при потере соединения с сервером.

  1. Запустить синхронизацию директорий common старого и нового серверов:
rsync -avzP -e "ssh -p 22" root@OLD_IP:/var/lib/kctl-backups/common/DUMP_NAME/ /var/lib/kctl-backups/common/DUMP_NAME/
1

Где:

  • 22 - номер порта старого сервера,
  • OLD_IP - заменить на IP старого сервера,
  • DUMP_NAME - имя дампа со старого сервера, которое брали в шаге 3.

Пример:

rsync -avzP -e "ssh -p 22" root@77.71.136.233:/var/lib/kctl-backups/common/2025-08-01-13-35-34/ /var/lib/kctl-backups/common/2025-08-01-13-35-34/
1

При запросе - ввести пароль от старого сервера в терминал.

  1. Восстановить трекер из дампа командой:
kctl backups restore
1

Статистика и настройки, в т.ч. локальные лендинги, офферы и пользовательские списки ботов и user agent переносятся автоматически.

  1. Перейдите в личный кабинет на сайте keitaro.io, раздел Лицензии. Нажмите Unlink для ключа лицензии, который хотите привязать к новому трекеру. Логиньтесь в новый трекер.

WARNING

Не создавайте в новом трекере кампании, лендинги, партнерские сети и другие сущности до окончания процесса переноса статистики. По окончании работы скрипта переноса, в новом трекере останутся исключительно данные со старого трекера.

# Создание архивной копии трекера локально

Создание архивной копии трекера локально на текущем сервере. Включая данные MySQL, данные ClickHouse, системные настройки, локальные лендинги, salt, Postback key, сертификаты, фильтры, кастомные списки ботов и т.д.

  1. Запустить screen
screen
1

Процессы, выполняемые внутри screen, не прерываются при разрыве соединения с сервером.

  1. Запустить команду создания дампа
kctl backups create
1

WARNING

Во время создания дампа важно обращать внимание на вывод терминала — если в процессе возникали ошибки, целостность дампа, возможно, не сохранена. В последствии восстановить трекер в полном объеме из такого дампа возможности не будет.

Данные сохраняются в директории /var/lib/kctl-backups/common/ и доступны для скачивания. Создание нового дампа не стирает предыдущий. Имя дампа задается от даты создания.

# Восстановление трекера из локальной архивной копии

Восстановление из локальной архивной копии на сервере. Включая данные MySQL, данные ClickHouse, системные настройки, локальные лендинги, salt, Postback key, сертификаты, фильтры, кастомные списки ботов и т.д.

  1. Установите трекер на сервер и загрузите дамп в директорию /var/lib/kctl-backups/common/. Если директории нет - необходимо создать.

  2. Выполните команду:

kctl backups restore
1

# Действия после переноса трекера

  1. После успешного переноса необходимо привязать ключ лицензии на новый сервер. Отвяжите ключ лицензии в личном кабинете на сайте keitaro.io по инструкции.

  2. Далее, чтобы трафик начал направляться на новый сервер, необходимо обновить DNS-записи всех доменов, изменив A-запись на IP-адрес нового сервера. Изменения вступают в силу в течение 24 часов.

# FAQ

Как перенести трекер 10 версии?

Используйте инструкцию для переноса.

Как восстановить из dump.gz (dump.sql)?

Для восстановления трекера из дампа БД необходимо использовать команду kctl-transfer с действием restore-from-sql local, например:

SALT=test kctl-transfers restore-from-sql local path/to/dump.gz
1

При создании дампа в phpmyadmin поставьте английский язык панели.

Что обозначает **Could not detect TRACKER_POSTBACK_KEY** при переносе?

Это диагностическое сообщение указывает на отсутствие пользовательского postback key в конфигурации. Cообщение стоит игнорировать.