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

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

  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ообщение стоит игнорировать.