Когда мой веб-сервер A отключается от сети, как мне автоматически перенаправить всех пользователей на мой веб-сервер B в другом городе, и наоборот?
Коммутатор балансировки нагрузки делает то, что я хочу, за исключением того, что я не могу понять, как заставить его работать, если оба веб-сервера не находятся в одном здании.
Системы кластеризации высокой доступности делают то, что я хочу, за исключением того, что я не могу понять, как заставить это работать, если оба веб-сервера не находятся в одном здании.
Кажется, что принятый ответ « перенаправить на статическую страницу на другом веб-сервере, когда основной веб-сервер не работает », поддерживает веб-серверы в 2 разных городах. Но как установка части программного обеспечения на одной коробке помогает мне после того, как эта коробка отключена?
Как это делают циклические DNS и сети доставки контента (CDN)?
Я полагаю, один подход начинается примерно так:
- Я получаю IP-адрес каждого из моих физических веб-серверов.
- Я поместил IP-адрес каждого из моих физических веб-серверов в запись DNS для одного доменного имени «веб-сайта» (несколько записей A или AAAA или оба).
- ... тогда что мне нужно делать?
Я полагаю, что другой подход начинается что-то вроде
- Я использую некоторый динамический DNS-провайдер для одного доменного имени, которое, как я ожидаю, пользователи будут набирать в веб-браузере.
- Я установил на каждом веб-сервере задание cron, которое периодически сообщает провайдеру DNS свой собственный IP-адрес (обновляет запись A или запись AAAA) или свое собственное доменное имя (обновляет запись CNAME или запись DNAME).
- ... тогда что мне нужно делать?
(На данный момент я был бы рад, если бы мои пользователи получали статическую веб-страницу с моей контактной информацией и сноской, в которой говорится, что «основной веб-сервер отключен», когда веб-сервер А отключен. Это уже намного лучше, чем текущая система, которая просто выдает ошибку «сервер не найден». В идеале я бы хотел, чтобы A и B были полностью синхронизированы и, по-видимому, идентичны - но это другой вопрос: эквивалентно CDN, но для динамического содержимого? ).