Балансировка сетевой нагрузки

Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016

В этом разделе представлен обзор функции балансировки сетевой нагрузки (NLB) в Windows Server 2016. NLB можно использовать для управления двумя или несколькими серверами в качестве одного виртуального кластера. NLB повышает доступность и масштабируемость приложений интернет-сервера, таких как те, которые используются в Интернете, FTP, брандмауэре, прокси-сервере, виртуальной частной сети (VPN) и других критически важных серверах.

Примечание.

Windows Server 2016 включает в себя новую подсистему балансировки нагрузки программного обеспечения (SLB) в качестве компонента инфраструктуры программно-определяемой сети (SDN). Используйте SLB вместо NLB, если вы используете SDN, используют рабочие нагрузки, отличные от Windows, нуждаются в переводе исходящих сетевых адресов (NAT) или требуется балансировка нагрузки уровня 3 (L3) или не на основе TCP. Вы можете продолжать использовать NLB с Windows Server 2016 для развертываний, отличных от SDN. Дополнительные сведения о SLB см. в разделе "Балансировка нагрузки программного обеспечения" (SLB) для SDN.

Компонент балансировки сетевой нагрузки (NLB) распределяет трафик по нескольким серверам с помощью сетевого протокола TCP/IP. Объединяя несколько компьютеров, на которых запущены приложения, в единый виртуальный кластер, NLB обеспечивает надежность и быстродействие веб-серверов и других ответственных серверов.

Серверы в NLB-кластере называются узлами, и на каждом узле выполняется отдельная копия серверных приложений. Балансировка сетевой нагрузки позволяет распределять входящие клиентские запросы между узлами в кластере. При этом можно настроить нагрузку для каждого узла. Если нужно обработать дополнительную нагрузку, узлы можно добавлять к кластеру динамически. Кроме того, технология балансировки сетевой нагрузки может направлять весь трафик на один предназначенный для этого узел, называемый узлом по умолчанию.

Балансировка сетевой нагрузки позволяет обращаться ко всем компьютерам в кластере по одному и тому же набору IP-адресов и поддерживает набор уникальных IP-адресов, выделенных для каждого узла. Для приложений с балансировкой нагрузки при сбое на узле или его отключении нагрузка автоматически перераспределяется между работающими компьютерами. Когда компьютер будет готов к работе, он может снова присоединиться к кластеру в рабочем режиме и взять на себя часть нагрузки, что позволит снизить объем данных, приходящийся на другие компьютеры кластера.

Практическое применение

Применение NLB целесообразно для обеспечения работы приложений, выполняемых без учета состояния, таких как веб-серверы, выполняющие службы Internet Information Services (IIS), в части их доступности с минимальной потерей машинного времени, а также масштабируемости (за счет добавления дополнительных серверов по мере увеличения нагрузки). В следующих разделах описывается применение NLB для поддержки высокой доступности, масштабируемости и управляемости кластерных серверов, выполняющих указанные приложения.

Высокая доступность

Система высокой доступности обеспечивает обслуживание на приемлемом уровне с минимальной потерей машинного времени. Высокая доступность обеспечивается за счет включения в NLB встроенных компонентов, автоматически выполняющих следующие функции:

  • Выявление в кластере самопроизвольно прекратившего работу или отключившегося от сети узла с последующим его восстановлением.

  • Балансировка нагрузки сети при добавлении и удалении узлов.

  • Восстановление и перераспределение рабочей нагрузки в течение 10 секунд.

Масштабируемость

Масштабируемость показывает, насколько можно расширить возможности компьютера, службы или приложения в соответствии с повышением требований к его производительности. Применительно к кластерам NLB масштабируемость — это возможность добавления одной или нескольких систем к существующему кластеру, когда общая нагрузка кластера превышает его текущую производительность. Поддержка масштабируемости реализуется в NLB следующим образом:

  • Балансировка запросов нагрузки в пределах NLB-кластера для отдельных служб TCP/IP.

  • Поддержка до 32 компьютеров в одном кластере.

  • Балансировка запросов нагрузки для нескольких серверов (от одного либо от нескольких клиентов) по нескольким узлам кластера.

  • Добавление узлов в NLB-кластер по мере увеличения нагрузки, не приводящее к сбоям в работе кластера.

  • Вывод узлов из состава кластера по мере уменьшения нагрузки.

  • Высокая производительность и уменьшение объема служебных данных за счет реализации полнофункционального конвейерного режима. Данный режим позволяет отправлять запросы NLB-кластеру, не ожидая ответа на предыдущий запрос.

Управляемость

Поддержка управляемости реализуется в NLB следующим образом:

  • Управление несколькими кластерами NLB и узлами кластера с одного компьютера с помощью диспетчера балансировки нагрузки сети или командлетов балансировки нагрузки сети (NLB) в Windows PowerShell.

  • Используя правила управления портами, можно задавать режим балансировки для отдельного IP-порта или группы портов.

  • Для портов каждого веб-сайта могут определяться различные правила. Если для нескольких приложений или веб-сайтов используется один набор серверов с балансировкой нагрузки, правила для портов выбираются по виртуальному IP-адресу назначения (с использованием виртуальных кластеров).

  • Все клиентские запросы можно направлять на один узел с помощью дополнительных правил одного узла. NLB будет направлять клиентские запросы на определенный узел, где выполняются заданные приложения.

  • Имеется возможность блокировки доступа по сети к определенным IP-портам.

  • Обеспечивается поддержка протокола управления группами Интернета (IGMP) на узлах кластера для управления лавинной адресацией коммутирующего порта (в ходе которой входящие сетевые пакеты отправляются на все порты коммутатора) при работе в режиме многоадресной рассылки.

  • Запуск, остановка и управление действиями NLB могут производиться удаленно с использованием команд или сценариев Windows PowerShell.

  • События NLB можно просматривать в журнале событий Windows. В журнал событий записываются все действия NLB и изменения кластера.

Важные функции

NLB устанавливается как стандартный компонент сетевого драйвера Windows Server. Его операции прозрачны для стека сетевых протоколов TCP/IP. На следующем рисунке показана связь между NLB и другими компонентами программного обеспечения в типичной конфигурации.

Network Load Balancing and other software components

Ниже приведены основные функции NLB.

  • Не требует для запуска изменений аппаратной части.

  • Предоставляет средства балансировки сетевой нагрузки для управления несколькими кластерами и всеми узлами кластеров, а также их настройки с одного удаленного или локального компьютера.

  • Обеспечивает клиентам возможность обращения к кластеру по единому логическому интернет-имени и виртуальному IP-адресу, называемому IP-адресом кластера (сохраняются отдельные имена для каждого компьютера). Балансировка сетевой нагрузки поддерживает несколько виртуальных IP-адресов для многосетевых серверов.

Примечание.

При развертывании виртуальных машин в качестве виртуальных кластеров NLB не требует, чтобы на нескольких серверах было несколько виртуальных IP-адресов.

  • Средство балансировки сетевой нагрузки может быть привязано к нескольким сетевым адаптерам, что позволяет настроить несколько независимых кластеров на каждом узле. Поддержка нескольких сетевых адаптеров — это не то же самое, что виртуальные кластеры, в которых можно настраивать несколько кластеров на одном сетевом адаптере.

  • Не требует модификации серверных приложений, что обеспечивает их работу в любом кластере NLB.

  • Возможна настройка автоматического добавления узла в кластер при сбое в работе узла данного кластера с последующим возвращением с сеть. Добавленный узел может приступать к обработке новых клиентских обращений к серверу.

  • Обеспечивает возможность отключения компьютеров от сети для проведения профилактического обслуживания, не затрагивая операции кластера на других узлах.

Требования к аппаратному обеспечению

Ниже приведены требования к оборудованию для запуска кластера NLB.

  • Все узлы кластера должны располагаться в одной подсети.

  • Количество сетевых адаптеров на каждом узле не ограничено, при этом различные узлы могут иметь разное число адаптеров.

  • Все сетевые адаптеры в одном кластере необходимо использовать либо в одноадресном, либо в многоадресном режиме. Балансировка сетевой нагрузки не поддерживает смешанную среду одноадресной и многоадресной рассылки внутри одного кластера.

  • При использовании одноадресного режима сетевой адаптер, задействованный для управления трафиком клиент-кластер, должен поддерживать изменение адреса его уровня управления доступом к среде передачи данных (MAC-адреса).

Требования к программному обеспечению

Ниже приведены требования к программному обеспечению для запуска кластера NLB.

  • Адаптер, на каждом узле которого включается NLB, может использовать только протокол TCP/IP. Не добавляйте для этого адаптера другие протоколы (например, IPX).

  • IP-адреса серверов в составе кластера должны быть статическими.

Примечание.

NLB не поддерживает протокол DHCP. NLB отключает протокол DHCP на каждом настраиваемом интерфейсе.

Сведения об установке

NLB можно установить с помощью диспетчер сервера или команд Windows PowerShell для NLB.

Дополнительно можно установить средства балансировки сетевой нагрузки для управления локальным или удаленным кластером NLB. Эти средства включают диспетчер балансировки нагрузки сети и команды NLB Windows PowerShell.

Установка с диспетчер сервера

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

Установка с помощью Windows PowerShell

Чтобы установить NLB с помощью Windows PowerShell, выполните следующую команду в командной строке Windows PowerShell с повышенными привилегиями на компьютере, где требуется установить NLB.

Install-WindowsFeature NLB -IncludeManagementTools

После завершения установки перезагрузка компьютера не требуется.

Дополнительные сведения см. в разделе Install-WindowsFeature.

Диспетчер балансировки нагрузки сети

Чтобы открыть диспетчер балансировки сетевой нагрузки в диспетчере сервера, в меню Сервис выберите пункт Диспетчер балансировки сетевой нагрузки.

Дополнительные ресурсы

В следующей таблице приведены ссылки на дополнительные сведения о функции NLB.

Content type Ссылки
Развертывание Руководство | по развертыванию балансировки сетевой нагрузки с помощью служб терминалов
Операции Управление кластерами балансировки нагрузки | сети настройка параметров | балансировки нагрузки сети, управляющих узлами в кластерах балансировки нагрузки сети
Устранение неполадок Устранение неполадок с балансировкой сетевой нагрузки кластеров | NLB и ошибок
Средства и параметры Командлеты Windows PowerShell для балансировки сетевой нагрузки
Ресурсы сообщества Форум по кластеризации (высокой доступности)