Как настроить отказоустойчивость для сервера IIS?

Как обеспечить отказоустойчивость для IIS на VPS с Windows Server 2019, расположенных в разных дата-центрах, чтобы избежать проблем при падении серверов ARR/NLB? Я рассматриваю варианты с использованием ARR, NLB и других технологий, но столкнулся с вопросом резолвинга IP-адресов падающих серверов. Существует ли эффективное решение для этой задачи, кроме использования Virtual IP? Какие варианты можно рассмотреть?
  • 15 июня 2024 г. 9:41
Ответы на вопрос 4
Для обеспечения отказоустойчивости для серверов IIS на VPS с Windows Server 2019, расположенных в разных дата-центрах, можно рассмотреть следующие варианты:

1. Использование ARR (Application Request Routing) и NLB (Network Load Balancing):
   - Настройка ARR для балансировки нагрузки между серверами IIS.
   - Настройка NLB для распределения трафика между разными дата-центрами.

2. Использование глобального балансировщика нагрузки (Global Load Balancer):
   - Подключение к услугам CDN (Content Delivery Network), которые могут обеспечить балансировку нагрузки и отказоустойчивость на уровне дат-центров.

3. Использование резервирования IP-адресов (IP failover):
   - Настройка резервирования IP-адресов для серверов IIS, чтобы при падении одного сервера, его IP-адрес мог быть перенаправлен на другой работающий сервер.

4. Использование DNS-решения с TTL (Time to Live):
   - Настройка DNS-записей с коротким временем жизни (TTL), чтобы при падении одного сервера, DNS-запись могла быстро обновиться и перенаправить трафик на работающий сервер.

5. Развертывание кластера серверов:
   - Создание кластера серверов IIS, чтобы обеспечить отказоустойчивость и высокую доступность при падении отдельных узлов.

Выбор оптимального варианта будет зависеть от конкретных требований вашего проекта и доступных ресурсов. Рекомендуется провести тщательный анализ и тестирование выбранного решения перед его внедрением.
Вы можете у своего DNS регистратора просто прописать A запись на IP обоих серверов, и он будет их перебирать "примерно" по очереди. 

Либо CDN который умеет проверять доступность, например cloudflare
Варианты известны, и зависят они от того, насколько высокая доступность вам нужна - цена решения будет соответствующая. 

1. Балансировка на уровне DNS.
2. Балансировка на уровне DNS с обратной связью.
3. Домен фронтинг с несколькими апстримами (тот же Cloudflare).
4. Своя AS с IP-адресами, анонсируемыми через разных интернет-провайдеров.
Вот руководство от MS по одновременной настройке ARR+WNLB 
https://learn.microsoft.com/en-us/iis/extensions/c...
Оба сервера ARR будут иметь одинаковый внешний IP, который надо прописать в DNS (или на шлюзе, если серверы стоят за ним). Браузер будет ходить по этому IP и попадать на ARR - на один из двух, если доступны оба, либо на работоспособный если другой откажет.
Похожие вопросы