Могу ли я изменить IP-адрес рабочего веб-сервера?

Могу ли я изменить IP-адрес рабочего веб-сервера?

Мне нужно изменить IP-адрес рабочего веб-сервера. Мне было интересно, возможно ли это сделать без простоя. Я думал, что сработают следующие шаги:

  1. Зарезервировать новый статический IP-адрес
  2. Добавьте IP-адрес в DNS для домена, который я переключаю.
  3. Разверните конфигурацию Kubernetes, которая использует новый статический IP-адрес.
  4. Удалить старую запись DNS
  5. Отменить резервирование старого статического IP-адреса.

Стоит ли ожидать, что это сработает? Если ничего не прослушивается по ту сторону нового IP-адреса, большинство вещей просто переключаются на другой IP-адрес? Или они жестко терпят неудачу?

решение1

Ключевая фраза в вашем вопросе — «без простоя», а ответ для вашей очевидной конфигурации — «нет». Предположим, ваш производственный веб-сервер — production.example.com.

Вот хронология вашего оригинального поста:

  1. Добавьте IP-адрес в DNS для домена, который я переключаю.

Какое FQDN вы добавляете в этот момент? Если это не адрес production.example.com, то эта новая запись A не делает ничего для облегчения маршрутизации трафика на ваш новый IP. Если этоявляетсязапись A для production.example.comвашего TTL вступит в игру. Обычно я устанавливаю свое значение на 300 (5 минут), но это не значит, что у вас есть 5 минут, чтобы выполнить шаг 3. Как только этот новый адрес начнет распространяться среди ваших клиентов, они начнут пытаться отправлять HTTP-запросы на новый IP.

  1. Разверните конфигурацию Kubernetes, которая использует новый статический IP-адрес.

После того, как вы это сделаете и перезапустите свой веб-сервер, все текущие сеансы TCP будут прерваны, что означает, что любые текущие HTTP(s)-запросы не будут выполнены.

Что касается вашего вопроса «Если по ту сторону нового IP-адреса ничего не прослушивается, большинство вещей просто переключаются на другой IP-адрес?», то да, если такнетHTTP-активность, то все в порядке.

По моему опыту, требование «без простоев» трудновыполнимо, и под сложным я подразумеваю сложный и дорогой. К чему следует стремиться, так это к минимальному простою, которого можно достичь, имея надежный процесс, с помощью которого вы собираетесь перенести веб-сайт, будь то изменение IP-адреса или перемещение его на другой сервер или обновление базовой базы данных. После того, как вы разработали процесс, протестируйте его, чтобы увидеть, как ведет себя ваш трафик и где ваши предположения подтверждаются или опровергаются. Усовершенствуйте процесс, чтобы достичь нужных вам показателей простоя, и протестируйте его снова. Вымойте, ополосните и повторите.

Связанный контент