Проверка после миграции

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

Проверка после миграции используется для подтверждения работоспособности следующих аспектов:

  • Сайты
  • Почта
  • DNS
  • Базы данных
  • Системные пользователи

По каждому аспекту проводятся специальные тесты для каждого перенесенного объекта (сайта, почтовой учетной записи, системного пользователя и так далее). Подробная информация об этих тестах приводится далее в этом разделе.

Чтобы выполнить проверку после миграции:

  • Если вы выполняете миграцию через интерфейс Plesk, поставьте галочку Проверить работоспособность сервисов после миграции, начиная миграцию. Результаты проверки после миграции будут включены в журнал миграции, который становится доступен из интерфейса Plesk после завершения миграции.
  • Если вы выполняете миграцию с сервера Plesk для Linux через командную строку, выполните следующую команду по окончании миграции:
/usr/local/psa/admin/sbin/modules/panel-migrator/plesk-migrator test-all

В результате проверки после миграции создается отчет, который сохраняется в файл с именем test-all-report.<date>, расположенный в папке /usr/local/psa/var/modules/panel-migrator/sessions/migration-session/.

  • Если вы выполняете миграцию с сервера Plesk для Windows через командную строку, запустите следующую команду по окончании миграции:
"%plesk_dir%admin/plib/modules/panel-migrator/backend/plesk-migrator.bat" test-all

В результате проверки после миграции создается отчет, который сохраняется в файл с именем test-all-report.<date>, расположенный в папке <PLESK_DATA_DIRECTORY>/var/modules/panel-migrator/sessions/migration-session/. Чтобы узнать расположение папки <PLESK_DATA_DIRECTORY> на вашем сервере, откройте командную строку и запустите следующую команду:

reg query "HKLM\SOFTWARE\Plesk\PSA Config\Config" /v PRODUCT_DATA_D /reg:32

Отчет имеет древовидную структуру, представляющую собой иерархию учетных записей клиентов, подписок и служб. Для каждого теста после миграции, который окончился неудачей, в журнал добавляется запись с детальным описанием этой неудачи и шагов для проверки/решения потенциальной проблемы.

Тесты после миграции

Сайты

Для каждого перенесенного домена проверяется следующее:

  • Адрес домашней страницы.
  • Веб-приложения, установленные через Plesk.
  • Адреса относительных ссылок, находящихся на домашней странице, в форме http(s)://DOMAIN/RELATIVE_URL.

К стартовой странице каждого сайта делается обращение с исходного сервера и с целевого сервера. Анализируется содержимое стартовой страницы, и проверяются все относительные ссылки в форме <a href="RELATIVE_URL">, указывающие на один и тот же домен. Для ускорения процесса, ссылки группируются по папке и расширению, и из каждой группы случайным образом выбирается одна ссылка для проверки. Например, если ссылки http://DOMAIN/pages/about.php и http://DOMAIN/pages/contacts.php находятся на стартовой странице, только одна из этих ссылок будет проверена.

Для каждой из выбранных ссылок отправляется запрос на соответствующий адрес на исходном и целевом серверах (при получении кодов состояния HTTP 301 и 302 выполняются соответствующие перенаправления). Полученная веб-страница анализируется на присутствие ошибок HTTP. Проверка считается успешной, если выполняются следующие условия:

  • Коды состояний HTTP(S) идентичны.
  • Коды состояний HTTP(S) на целевом сервере не являются кодами 4xx или 5xx, которые обычно означают наличие ошибки (исключение делается для кода 401, используемого для папок, защищенных паролем).
  • HTML-тэги <title> в обоих полученных документах либо идентичны, либо отсутствуют.

Иначе считается, что тест не пройден.

Почта

Для каждого перенесенного домена все почтовые учетные записи, присутствующие на исходном сервере, должны также присутствовать и на целевом сервере. Выполняются следующие тесты:

  • Для каждого перенесенного домена список почтовых учетных записей на исходном сервере сравнивается с таким же списком на целевом сервере, чтобы удостовериться в том, что ни одна учетная запись не потеряна.
  • Для каждой почтовой учетной записи, принадлежащей каждому перенесенному домену, на исходном и на целевом серверах выполняется вход в почтовый ящик по SMTP, POP3 и IMAP для проверки доступа. После этого количество сообщений в почтовом ящике на исходном сервере сравнивается с соответствующим количеством сообщений на целевом сервере. Если эти количества различаются более чем на пять сообщений, выдается отчет об ошибке.
DNS

Для каждого перенесенного домена все записи ресурсов должны быть перенесены с исходного сервера на целевой сервер, при этом IP-адреса с исходного сервера должны быть заменены на IP-адреса с целевого сервера согласно правилам сопоставления IP-адресов. Выполняются следующие тесты:

  • Для каждого перенесенного домена список основных записей DNS (таких как A, AAAA, MX, CNAME и так далее) на исходном сервере сравнивается с соответствующим списком на целевом сервере, чтобы удостовериться в том, что ни одна запись не потеряна.
  • Для каждого перенесенного домена запрашивается список основных записей DNS на целевом сервере, чтобы проверить, что все записи могут быть распознаны и указывают на IP-адреса с целевого сервера.
Базы данных

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

  • Для каждой базы данных на исходном сервере проводится проверка того, что эта база данных присутствует на целевом сервере и зарегистрирована в Plesk.
  • Для каждой перенесенной базы данных список пользователей на исходном сервере сравнивается с соответствующим списком на целевом сервере, чтобы удостовериться, что ни один пользователь не потерян. Кроме того, для каждого пользователя базы данных на целевом сервере выполняется попытка авторизации.
  • Для каждой перенесенной базы данных список таблиц на исходном сервере сравнивается с соответствующим списком на целевом сервере, чтобы удостовериться, что ни одна таблица не потеряна.
Системные пользователи

Для каждого перенесенного домена все системные пользователи (то есть пользователи, которые могут подключаться к серверу по FTP или по SSH / RDP), присутствующие на исходном сервере, должны также присутствовать и на целевом сервере. Выполняются следующие тесты:

  • Для каждого перенесенного домена список системных пользователей на исходном сервере сравнивается с соответствующим списком на целевом сервере, чтобы удостовериться, что ни один системный пользователь не потерян.
  • Для каждого системного пользователя выполняется вход на целевой сервер по FTP и по SSH (только в Plesk для Linux). Для системных пользователей Windows проверяется членство в группе "Пользователи удаленного рабочего стола".