Этот документ будет использоваться в качестве контрольного списка для миграции серверов.
Важные примечания (отметьте, чтобы подтвердить выполнение каждого шага):
[ ] Сделайте копию этого документа и НЕ редактируйте оригинал.
[ ] Я понимаю, что это общий контрольный список. Если применимы изменения, я изменю свою копию, чтобы она соответствовала моему варианту использования.
ПЕРВЫЙ ШАГ:
Перечислите все активы, привязанные к домену, здесь:
ШАГ ПЕРВЫЙ А:
[ ] Хранилище активов (например, корзины S3, папки изображений и видео и т. д.)
ШАГ ПЕРВЫЙ Б:
[ ] Базы данных (например, экземпляры MySQL Lightsail, Amazon RDS и т. д.)
ШАГ ПЕРВЫЙ С:
[ ] Экземпляры (например, Runners, Lightsail cPanel и т. д.)
ШАГ ПЕРВЫЙ Д
[ ] Сети доставки контента (например, Cloudflare, Imagekit и т. д.)
ШАГ ВТОРОЙ:
Резервное копирование всех активов
ШАГ ВТОРОЙ А:
[ ] Для этого шага убедитесь, что резервное копирование было выполнено для каждого актива на первом шаге A.
Корзины S3 — подтверждение резервного копирования
ШАГ ВТОРОЙ Б:
[ ] Для этого шага убедитесь, что резервное копирование было выполнено для каждого актива на первом шаге B.
Базы данных — подтверждение резервного копирования
ШАГ ТРЕТИЙ С:
[ ] Для этого шага убедитесь, что резервное копирование было выполнено для каждого актива на первом шаге C.
Экземпляры — подтверждение резервного копирования
ШАГ ТРЕТИЙ:
[ ] Прочтите документацию, относящуюся к коммутатору, и запишите все важные / ресурсы здесь:
[ ] Важное примечание. Если вы переключаете домен, к которому привязаны электронные письма, убедитесь, что эти электронные письма будут перенесены в новый домен и не нарушат деловые операции.
ШАГ ЧЕТВЕРТЫЙ:
[ ] Настроить новый сервер
ШАГ ПЯТЫЙ:
[ ] Настройка сервера базы данных
ШАГ ШЕСТОЙ:
[ ] Настройка сервера Redis/кэширования (внутри нового сервера). Обратите внимание, что этот шаг специфичен для Laravel и может не применяться к вашему варианту использования.
ШАГ СЕДЬМОЙ:
[ ] Настройка балансировщика нагрузки
ШАГ ВОСЬМОЙ:
[ ] Настройка подключения с сервера к базе данных
ШАГ ДЕВЯТЫЙ:
[ ] Настройка CI/CD
ШАГ ДЕСЯТЫЙ:
[ ] Настройте команды npm для автоматического создания css и js при каждом развертывании.
ШАГ ОДИННАДЦАТЫЙ:
[ ] Настройте супервизор на новом сервере (чтобы автоматически запускать фоновый процесс каждый раз, когда он выходит из строя или когда сервер перезагружается). Обратите внимание, что этот шаг специфичен для Laravel и может не применяться к вашему варианту использования.
ШАГ ДВЕНАДЦАТЫЙ:
[ ] Настройте любые другие дочерние сайты, которые могут использоваться. Например, сайт Laravel, который использует WordPress для блога в подкаталоге. На этом этапе нам нужно было настроить wordpress/blog на новый сервер и скопировать все файлы из live/blog.
ШАГ ТРИНАДЦАТЫЙ:
[ ] Если применимо, начните работу над синхронизацией инвентаря с помощью API инвентаря. Этот шаг может не применяться.
ШАГ ЧЕТЫРНАДЦАТЫЙ:
[ ] Скопируйте конфигурацию DNS из CDN (например, Cloudflare) и примените к новому хосту (например, AWS Route53), если применимо.
[ ] Уменьшите DNS TTL (время жизни) до 5 минут как минимум за 2 дня до миграции сервера имен.
[ ] Настройте новый хост, чтобы он указывал на балансировщик нагрузки приложения (если применимо).
[ ] Обновить App Config с новыми значениями.
[ ] Внесите новый IP-адрес сервера в белый список поставщика услуг электронной почты (например, SendGrid, Mailchimp и т. д.). В противном случае электронные письма не будут отправляться после переключения.
[ ] Скопируйте задания Cron на новый сервер.
[ ] Попросите менеджеров оценить вашу работу.
ШАГ ПЯТНАДЦАТЫЙ:
[ ] Перечислите новые серверы имен здесь:
ШАГ ШЕСТНАДЦАТЫЙ:
[ ] Свяжитесь с менеджерами и попросите их уведомить всех сотрудников, отправив электронное письмо «Всему персоналу», а также уведомление @ здесь в Slack. В этом уведомлении сообщите всем, когда вы ожидаете выполнить переключение сервера имен (т. е. миграцию сервера).
ШАГ СЕМНАДЦАТЫЙ:
[ ] Свяжитесь с менеджерами, чтобы они могли проверить вашу работу и настроить серверы имен на исходном хосте (например, GoDaddy) на серверы имен нового хоста (например, Route 53).
ШАГ ВОСЕМНАДЦАТЫЙ:
[ ] Перенести все связанные базы данных. Чтобы использовать пример, нам пришлось мигрировать:
Основной сайт
Сайт администратора (т. е. бэкэнд-панель управления)
Панель управления ресурсами клиентов (например, сайт CRM)
Сайт разработчиков
Промежуточный сайт
Сайт администратора разработчиков
Промежуточный сайт администратора
CRM для разработчиков
Промежуточная CRM
(Примечание: если у вас есть трехэтапный процесс разработки, это дает в общей сложности 9 различных сайтов для проверки и не забывайте о них!!)
ШАГ ДЕВЯТНАДЦАТЫЙ:
[ ] Настройка SSL для HTTPS
ШАГ ДВАДЦАТЬ:
[ ] После распространения DNS (от 10 минут до 48 часов) выполните тестирование всех функций и всех функций сайта.
[ ] Функции тестирования, на которые следует обратить особое внимание, включают:
[ ] Интеграция форм (часто источник взаимодействия с клиентами)
[ ] Электронная почта компании (как отправка, так и получение)
[ ] Аналитика и теги отслеживания (они еще работают?)
[ ] Платежные порталы (они еще работают?)
[ ] Старые ссылки с богатым SEO (они такие же, как на старом сайте, или хотя бы перенаправляют на новый сайт?)
[ ] Добавьте сюда все, что вам может понадобиться для тестирования: