Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе описано, как настроить политику DNS для балансировки нагрузки приложений.
Предыдущие версии WINDOWS Server DNS предоставляют только балансировку нагрузки с помощью ответов циклического перебора; но при использовании DNS в Windows Server 2016 можно настроить политику DNS для балансировки нагрузки приложений.
При развертывании нескольких экземпляров приложения можно использовать политику DNS для балансировки нагрузки трафика между различными экземплярами приложений, тем самым динамически распределяя нагрузку трафика для приложения.
Пример балансировки нагрузки приложений
Ниже приведен пример использования политики DNS для балансировки нагрузки приложений.
This example uses one fictional company - Contoso Gift Services - which provides online gifting services, and which has a Web site named contosogiftservices.com.
Веб-сайт contosogiftservices.com размещается в нескольких центрах обработки данных с разными IP-адресами.
В Северная Америка, который является основным рынком для Contoso Gift Services, веб-сайт размещается в трех центрах обработки данных: Чикаго, IL, Даллас, TX и Сиэтл, WA.
Веб-сервер Сиэтла имеет лучшую конфигурацию оборудования и может обрабатывать в два раза больше нагрузки, чем другие два сайта. Компания Contoso Gift Services хочет, чтобы трафик приложения был направлен следующим образом.
- Так как веб-сервер Сиэтла включает дополнительные ресурсы, половина клиентов приложения направляется на этот сервер.
- Четверть клиентов приложения направляется в Даллас, центр обработки данных TX
- Четверть клиентов приложения направляется в Чикаго, IL, центр обработки данных
На следующем рисунке показан этот сценарий.
Как работает балансировка нагрузки приложений
После настройки DNS-сервера с политикой DNS для балансировки нагрузки приложений с помощью этого примера DNS-сервер отвечает 50% времени с адресом веб-сервера Сиэтла, 25% времени с адресом веб-сервера Далласа и 25% времени с адресом веб-сервера Чикаго.
Таким образом, для каждого четырех запросов DNS-сервер получает, он отвечает двумя ответами для Сиэтла и по одному для Далласа и Чикаго.
Одна из возможных проблем с балансировкой нагрузки с политикой DNS — кэширование записей DNS клиентом DNS и сопоставителя или LDNS, что может препятствовать балансировке нагрузки, так как клиент или сопоставитель не отправляют запрос на DNS-сервер.
Вы можете уменьшить влияние этого поведения, используя низкое значение времени в реальном времени (TTL) для записей DNS, которые должны быть сбалансированы.
Настройка балансировки нагрузки приложений
В следующих разделах показано, как настроить политику DNS для балансировки нагрузки приложений.
Создание областей зоны
Сначала необходимо создать области зоны contosogiftservices.com для центров обработки данных, где они размещаются.
Область зоны — это уникальный экземпляр зоны. Зона DNS может иметь несколько областей зоны с каждой областью, содержащей собственный набор записей DNS. Одна запись может присутствовать в нескольких областях с разными IP-адресами или одинаковыми IP-адресами.
Note
По умолчанию область зоны существует в зонах DNS. Эта область зоны имеет то же имя, что и зона, а устаревшие операции DNS работают с этой областью.
Для создания областей зоны можно использовать следующие команды Windows PowerShell.
Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "SeattleZoneScope"
Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "DallasZoneScope"
Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "ChicagoZoneScope"
For more information, see Add-DnsServerZoneScope
Добавление записей в области зоны
Теперь необходимо добавить записи, представляющие узел веб-сервера в области зоны.
In SeattleZoneScope, you can add the record www.contosogiftservices.com
with IP address 192.0.0.1, which is located in the Seattle datacenter.
In ChicagoZoneScope, you can add the same record (www.contosogiftservices.com) with IP address 182.0.0.1 in the Chicago datacenter.
Similarly in DallasZoneScope, you can add a record (www.contosogiftservices.com) with IP address 162.0.0.1 in the Chicago datacenter.
Для добавления записей в области зоны можно использовать следующие команды Windows PowerShell.
Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "192.0.0.1" -ZoneScope "SeattleZoneScope"
Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "182.0.0.1" -ZoneScope "ChicagoZoneScope"
Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "162.0.0.1" -ZoneScope "DallasZoneScope"
For more information, see Add-DnsServerResourceRecord.
Создание политик DNS
После создания разделов (областей зоны) и добавленных записей необходимо создать политики DNS, которые распределяют входящие запросы между этими областями, чтобы 50% запросов для contosogiftservices.com ответили с IP-адресом веб-сервера в центре обработки данных Сиэтла, а остальные распределяются одинаково между центрами обработки данных Чикаго и Далласа.
Для создания политики DNS, которая балансирует трафик приложения в этих трех центрах обработки данных, можно использовать следующие команды Windows PowerShell.
Note
В приведенном ниже примере команды выражение -ZoneScope "SeattleZoneScope,2; ChicagoZoneScope,1; ДалласZoneScope,1" настраивает DNS-сервер с массивом, включающим сочетание <ZoneScope>
параметров.<weight>
Add-DnsServerQueryResolutionPolicy -Name "AmericaPolicy" -Action ALLOW -ZoneScope "SeattleZoneScope,2;ChicagoZoneScope,1;DallasZoneScope,1" -ZoneName "contosogiftservices.com"
For more information, see Add-DnsServerQueryResolutionPolicy.
Теперь вы успешно создали политику DNS, которая обеспечивает балансировку нагрузки приложений на веб-серверах в трех разных центрах обработки данных.
Вы можете создавать тысячи политик DNS в соответствии с требованиями к управлению трафиком, и все новые политики применяются динамически , не перезапуская DNS-сервер в входящих запросах.