Перенос пользователей между FASTPANEL
Введение
В этой статье описан процесс переноса учетных записей пользователей и связанных с ними данных (веб-сайтов, баз данных, электронной почты и т. д.) с одного сервера FASTPANEL на другой с помощью встроенной утилиты мигра ции.
Ключевые термины
- Исходный сервер - сервер, с которого переносятся данные.
- Целевой сервер - сервер, на который переносятся данные.
Важные примечания
-
По умолчанию миграция корректно работает только для сайтов со стандартной конфигурацией FASTPANEL.
-
Сайты с ручными изменениями конфигурации можно перенести только при использовании флага
-mдля сопоставления IP-адресов. -
Если зашифрованный пароль владельца базы данных недоступен, база данных не будет перенесена.
-
Если веб-сайт не переносится, связанные с ним базы данных также не будут перенесены.
-
Можно переносить только локальные базы данных.
Процесс миграции
Подключение
Целевой сервер подключается к исходному серверу по SSH. При первом подключении целевой сервер устанавливает SSH-ключ на исходный сервер (либо заранее предоставленный, либо сгенерированный из пароля).
Этапы миграции
- Установка модуля
- Сбор информации о переносимых объектах
- Создание пользователей
- Перенос SSL-сертификатов
- Создание веб-сайтов, FTP-аккаунтов, почтовых доменов и почтовых аккаунтов
- Создание баз данных и пользователей баз данных
- Перенос файлов веб-сайтов и почтовых ящиков
- Перенос заданий cron
Передача файлов выполняется с помощью rsync. Базы данных переносятся путем создания дампа через SSH-туннель.
Команда для запуска миграции
Команда выполняется на целевом сервере пользователем с правами root:
/usr/local/fastpanel2/fastpanel transfer run [SSH_PARAMETERS] [IP_PARAMETERS] [ADDITIONAL_OPTIONS]
Флаги командной строки
SSH-подключение
--remote_host="SOURCE_IP" - IP-адрес исходного сервера.--remote_port="SSH_PORT" - порт SSH.--remote_username="SSH_USER" - пользователь (должен быть root).--remote_password="USER_PASSWORD" - пароль указанного SSH-пользователя.--ssh_key_path="PATH_TO_KEY" - путь к приватному SSH-ключу на целевом сервере для подключения к исходному серверу. Если используется ключ, пароль (--remote_password) не требуется.
IP-адреса
Для управления IP-адресами сайтов во время переноса необходимо использовать только один из следующих флагов. Флаг -m имеет приоритет.
-
-i"IP_ADDRESS_ON_DESTINATION" - назначает указанный IP-адрес всем перенесенным сайтам на целевом сервере. Чтобы указать несколько IP-адресов (например, если на исходном сервере их было несколько), повторите флаг для каждого исходного IP-адреса, который нужно перенести. -
-m"SOURCE_IP,DESTINATION_IP" - рекомендуемый способ. Устанавливает прямое сопоставление: все сайты, использующие SOURCE_IP на исходном сервере, будут использовать DESTINATION_IP на целевом сервере. Этот флаг можно указывать несколько раз для разных пар IP. Обязательно для переноса сайтов с ручными изменениями конфигурации, так как позволяет корректно заменить IP-адреса в директивах listen.
Дополнительные настройки
--users="USER_LIST" - переносит только указанных пользователей (через запятую). Если не указано, переносятся все пользователи.--disable_disk_quota- отключает перенос дисковых квот пользователей.--with_user_data- включает копирование всего содержимого домашних каталогов пользователей (кроме подкаталогаlogs/). Используйте с осторожностью, так как это может значительно увеличить время переноса и объем передаваемых данных.--only_data- переносит только данные (файлы веб-сайтов, почтовые файлы, дампы баз данных). Полезно, если начальная миграция структуры (пользователи, сайты, БД и т. д.) прошла успешно, но на этапе копирования файлов или дампов произошли ошибки. Позволяет повторно запустить только часть, связанную с копированием данных.--transfer_timeout- устанавливает тайм-аут операции (по умолчанию 60 минут).
Пример команды
Перенос всех пользователей с сервера 11.22.33.44 на текущий сервер. На старом сервере сайты использовали IP-адреса 11.22.33.44 и 11.22.33.55; на новом сервере они должны использовать 99.88.77.66 и 99.88.77.67 соответственно. Подключение по SSH с использованием пароля.
/usr/local/fastpanel2/fastpanel transfer run \
--remote_host=11.22.33.44 \
--remote_username=root \
--remote_password=YourSourceRootPassword \
-m 11.22.33.44,99.88.77.66 \
-m 11.22.33.55,99.88.77.67
Возможные проблемы и типы ошибок
Ошибка в журнале миграции не всегда указывает на критическую проблему, но может указывать на причину, по которой конкретный объект не был перенесен.
-
Конфликты: возникают, когда перенос объекта невозможен из-за текущей конфигурации целевого сервера (например, пользователь или сайт с таким же именем уже существует) или если конфигурация сайта на исходном сервере неизвестна панели (например, из-за значительных ручных изменений).
-
Отсутствует сохраненный пароль: как упоминалось ранее, пользователи баз данных MySQL без сохраненного пароля в FASTPANEL на исходном сервере не могут быть перенесены.
-
Ручные настройки и IP-адреса: если сайт на исходном сервере имеет ручные изменения конфигурации веб-сервера и во время миграции для сопоставления его IP-адреса не используется флаг
-m, такой сайт не будет перенесен, потому что панель не знает, какой IP-адрес указать в конфигурации на целевом сервере.