Назад | Перейти на главную страницу

как лучше всего избежать задержки распространения DNS при смене IP-адресов?

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

Текущая ситуация

x.y.z.123 is the APP server
DNS www.mysite.com points to x.y.z.123

Ожидаемая новая ситуация

x.y.z.250 is the load balancer
x.y.z.123 is the APP server
DNS www.mysite.com points to x.y.z.250

Как лучше всего это сделать? Я согласен с решением с промежуточными этапами. Изменение IP-адреса сервера APP не является решением.

Перед тем, как я хочу изменить адреса в записях, я обычно устанавливаю TTL для записей до 5 минут. Если существующие TTL составляют, скажем, 48 часов, измените TTL дольше, чем за 48 часов, прежде чем вы захотите изменить адреса. Это даст этим записям с 48-часовым временем TTL истечь из кэшей сервера / преобразователя, а затем они будут заменены 5-минутным TTL. Это означает, что обновленные адреса запрашиваются каждые 5 минут вместо 48 часов, и ваши изменения распространяются гораздо быстрее. После изменения вы можете вернуть TTL обратно к исходным значениям.

Вы должны установить TTL (время жизни) как можно ниже. То, как вы это сделаете, будет зависеть от поставщика DNS-провайдера. Обязательно сделайте это - по крайней мере, так далеко, как ваш существующий TTL, чтобы у всех со старым TTL был шанс получить новый.

http://www.zytrax.com/books/dns/apa/ttl.html

В конечном счете, если IP-адрес сервера приложений не меняется, будет ли конец света, если они будут переходить непосредственно на сервер приложений, а не через балансировку нагрузки на короткое время?

Разве вы не можете просто оставить существующее правило публикации на x.y.z.123, указывающее на ваш единственный сервер приложений, и создать новое правило публикации на x.y.z.250, указывающее на ваш балансировщик нагрузки? Я успешно сделал это в кластере с балансировкой нагрузки Apache.