Перенести веб-сервер в новый центр обработки данных и новый IP-адрес

У меня есть веб-сервер, на котором размещено более 200 доменов, но его нужно переместить в другой центр обработки данных и получить новый IP-адрес. Но поскольку все настройки DNS необходимо обновлять вручную, я подумал, можно ли настроить какой-то прозрачный прокси на старом IP-адресе, который перенаправляет весь трафик http / https на новый IP. Таким образом, посетители не обнаруживают, что переход на DNS исправляется.

Моей первой мыслью было использовать для этого nginx, но я думал, что это вызовет проблемы с сертификатами SSL в доменах. Есть ли хороший способ решить проблему?

3
задан 11 July 2021 в 00:39
3 ответа

Сначала вы можете решить (или оценить), чем вы хотите пожертвовать при движении:

  1. Легкость перехода (если многие из перечисленных ниже пунктов важны , переход будет проектом, а не задачей, у вас может также не быть необходимого опыта)
  2. Время простоя (возможно ли выполнить весь переход ночью или когда активность ваших пользователей минимальна?)
  3. Согласованность журналов доступа (это может быть очень важно, и прокси http или tcp будут маскировать удаленные IP-адреса)
  4. Согласованность данных, показываемых пользователям (допустимо ли некоторые пользователи видеть устаревшие данные ?)
  5. Возможность обновления содержимого на некоторое время
  6. Безопасность данных (во многих случаях важно сохранить данные в абсолютной безопасности от повреждения и / или утечки, даже если это означает некоторое время простоя)
  7. Доступное время (ваш контракт на хостинг заканчивается)
  8. Согласованность сеанса пользователя (формально включена в пункт 4, но не требует есть дополнительные соображения из-за различных возможных смягчений)

В зависимости от комбинации вышеперечисленного вы можете использовать один или несколько из них:

  • TCP-прокси (например, socat)
  • HTTP-прокси (nginx, squid и т. д. ...)
  • Сложное решение маршрутизации / VPN, позволяющее одному серверу отвечать на запросы по 2 IP-адресам
  • Репликация базы данных
  • Миграция виртуальной машины

Все, что вам нужно, независимо от выбранная стратегия:

  1. Понижение TTL DNS (вы можете снова увеличить его после того, как все будет готово)
  2. Резервное копирование - да, плохие вещи случаются во время переходов и миграций.
  3. План
  4. План возврата, если план перехода не сработает.
2
ответ дан 28 July 2021 в 11:47

В этих случаях я использую следующий процесс миграции:

  1. Измените TTL DNS на минимальное значение
  2. Подождите, пока обновится TTL DNS
  3. Скопируйте ключи / сертификаты в новые сервер
  4. Перевести сайт в режим обслуживания
  5. Синхронизировать файлы / базу данных с новым сервером
  6. Настроить обратный прокси-сервер со старого сервера на новый сервер
  7. Отменить режим обслуживания на новом сервере
  8. Изменить записи DNS, чтобы они указывали на новый сервер

Шаг 6 гарантирует, что конечные пользователи не перейдут на старый сервер, даже если их DNS преобразован в старый IP-адрес сервера.

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

Обратный прокси-сервер настраивается с помощью директивы proxy_pass . Если IP-адрес конечного пользователя является важной информацией, вам необходимо добавить его в заголовки HTTP на старом сервере -> запросы нового сервера и указать новому серверу использовать значение заголовка в качестве IP-адреса.

5
ответ дан 28 July 2021 в 11:47

Другой альтернативой является использование комбинации NAT, VPN и политик маршрутизации.

Вы настраиваете VPN между серверами в старом и новом расположении, на сервере в старом расположении вы используете NAT назначения для перенаправления входящего трафика по VPN. На сервере в новом месте вы используете маршрутизацию политик, чтобы гарантировать, что ответы на трафик, пришедший из VPN, возвращаются через VPN.

0
ответ дан 28 July 2021 в 11:47

Теги

Похожие вопросы