Поделиться через


Балансировка нагрузки сети — основные понятия и заметки

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

Область применения: Windows Server 2003
Исходный номер базы знаний: 556067

Итоги

В этой статье содержатся сведения о балансировке сетевой нагрузки — технология кластеризации Майкрософт.

Дополнительная информация

  • В. Как протестировать кластер NLB?

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

  • Параметры конвергенции можно настроить, изменив следующие значения реестра:

    • AliveMsgPeriod
    • AliveMsgTolerance
  • Настройка нескольких виртуальных IP-адресов доступна только в выпусках Windows 2003 и более поздних версиях.

  • Существуют разные команды STOP и DRAINSTOP. Команда STOP остановит службу NLB на узле и все существующие подключения будут потеряны, в то время как DRAINSTOP позволит NLB обслуживать текущие подключения и отключить новые подключения одновременно.

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

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

  • NLB должна иметь правильное локальное время на всех серверах.

  • NLB не обнаруживает сбой приложения. Например, служба веб-сервера может остановиться, но NLB по-прежнему отправляет tcp/IP-запросы на этот сервер.

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

  • DoN не какой-либо другой протокол, кроме TCP/IP для адаптера кластера.

  • Кластер NLB может работать в одноадресном или многоадресном режиме, но не в обоих.

  • Корпорация Майкрософт не поддерживает сочетание серверов и кластера NLB.

  • Разрешено использование mix-NLB. Windows NT WLBS может работать в Windows 2000 NLB.

  • NLB не поддерживает кольцевой связи токенов и сетей ATM. Он был протестирован только в сети Ethernet в 10 МБ и 100 МБ.

  • Ограничения одной сетевой карты: при выполнении в режиме юниадресной рассылки:

    1. Обычные сетевые связи между узлом кластера невозможно. Сетевой трафик, предназначенный для любого отдельного компьютера в кластере, создает дополнительные сетевые издержки для всех компьютеров в кластере.
    2. Далее мы не можем использовать диспетчер балансировки нагрузки сети на этом компьютере для настройки узлов NLB и управления ими.
  • Автоматически обнаруживает и восстанавливается сбой или автономный компьютер. Автоматически балансирует сетевую нагрузку при добавлении или удалении узлов. Восстанавливает и распространяет рабочую нагрузку в течение 10 секунд.

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

  • Вы можете использовать сочетание приложений, работающих в кластере NLB. Например, можно запустить веб-сервер IIS на всех узлах и SQL Server только на одном узле. Таким образом можно назначить трафик только для базы данных на узел SQL Server.

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

    Необходимо ли иметь отдельную подсеть для обеих технологий?

  • NLB поддерживает до 32 компьютеров в одном кластере, но для создания числа можно использовать RRDNS.

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

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

  • Автоматически балансирует нагрузку при добавлении или удалении новых узлов, и это выполняется в течение 10 секунд.

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

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

  • NLB не перекрывает исходное имя компьютера и IP-адрес.

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

  • NLB может работать в двух режимах — Юниадресная рассылка или многоадресная рассылка, но оба режима одновременно не могут быть включены. Одноадресная рассылка — это режим по умолчанию.

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

  • Конвергенция — это процесс перестроения состояния кластера. Этот процесс вызывается при изменении кластера (например, сбой узла, выход или повторное присоединение к кластеру). В этом процессе следующие действия выполняются кластером:

    1. Перестройте состояние кластера.
    2. Назначьте узел с наивысшим приоритетом узла в качестве узла по умолчанию.
    3. Трафик с балансировкой нагрузки перераспределяется или распространяется среди оставшихся узлов.
  • В ходе этого процесса оставшийся узел продолжает обрабатывать входящий трафик клиента. Если узел добавляется в кластер, конвергенция позволяет этому узлу получать общую долю трафика с балансировкой нагрузки. Расширение кластера не влияет на текущие операции кластера и достигается прозрачно как для клиентов Интернета, так и для серверных приложений. Однако это может повлиять на клиентские сеансы, охватывающие несколько TCP-подключений при выборе сопоставления клиентов, так как клиенты могут быть перемечены на разные узлы кластера между подключениями. Дополнительные сведения о сходстве

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

  • Можно настроить несколько кластеров NLB на одном сетевом адаптере, а затем применить определенные правила портов к каждому из этих IP-адресов. Они называются виртуальными кластерами.

  • Windows 2003 поставляется с помощью средства графического интерфейса: диспетчер балансировки нагрузки сети и NLB.exe — средство командной строки. В Windows 2000 это WLBS.exe и нет средства графического интерфейса. Это средство графического интерфейса можно установить в XP, чтобы управлять только NLB Windows 2003. Диспетчер NLB использует DCOM и WMI.

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

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

  • Взаимодействие внутри узла возможно только в многоадресном узле. Чтобы разрешить обмен данными между серверами в одном кластере NLB, каждому серверу требуется следующая запись реестра: ключ DWORD с именем UnicastInterHostCommSupport и значение 1 для GUID каждой сетевой карты (HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WLBS\Parameters\Interface\{GUID})

  • Нет ограничений на количество адаптеров. Разные узлы могут иметь разные сетевые адаптеры.

  • Один сетевой адаптер в режиме юниадресной рассылки

    • Собственный MAC-адрес адаптера отключен: mac-адрес кластера, созданный автоматически, заменяет этот адрес.
    • Выделенный IP-адрес и IP-адрес кластера разрешаются в MAC-адрес кластера.
    • Обычное сетевое взаимодействие между узлами кластера невозможно.

Параметры кластера

  • Mac-адрес кластера создается автоматически с помощью IP-адреса кластера и его уникальности в подсети.
  • Удаленный контроль не будет работать, если включен IPSEC. Удаленное управление использует 1717 и 2504 на порту через UDP.
  • Идентификатор уникального узла приоритета: наименьшее число — узел с этим приоритетом обрабатывает весь входящий трафик, который не охватывается правилами портов.
    Если узел кластера присоединен с тем же приоритетом, он не принимается в составе кластера, но другие узлы будут продолжать работать. Это называется узлом по умолчанию. Если узел по умолчанию завершается ошибкой, другой узел с более высоким приоритетом может выступать в качестве узла по умолчанию.
  • Выделенный IP-адрес необходимо ввести сначала в свойстве TCP/IP. Не удается включить DHCP. Это же относится к ВИРТУАЛЬНЫМ IP-адресам.
  • Не удается добавить более 32 правил портов в один кластер, и он должен быть одинаковым в кластере.

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

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

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

  • Чтобы настроить NLB в Windows 2003, используйте диспетчер NLB. Убедитесь, что вы снимите флажок NLB со всех узлов.

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

  • Невозможно открыть другие узлы из диспетчера балансировки нагрузки, если NLB работает в одном адаптере с режимом Юниадресной рассылки, так как один сетевой адаптер с режимом одноадресной рассылки не может иметь внутристрочного взаимодействия. Чтобы сделать это, используйте этот реестр: UnicastHostInterCommSupport и задайте для него значение 1.

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

  • Следует использовать параметры свойств TCP/IP или диспетчер NLB, но не следует использовать оба параметра для настройки NLB.

  • Диспетчер NLB не подключает или не отображает неправильно настроенные узлы в кластере.

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

  • Список всех диапазонов портов отсортирован по диапазону портов.

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

  • При включении NLB на сервере записи реестра по умолчанию создаются в следующих разделах: HKLM\System\CurrentControlSet\Services\WLBS

  • Идентификатор DIP и ВИРТУАЛЬНЫй IP-адрес должны быть введены правильно. Узлы кластера будут конвергентными друг с другом, если этот шаг не указан, но они не смогут принимать и трафик.

  • Сообщение о конфликте IP-адресов отображается только для IP-адреса. Убедитесь, что виртуальный IP-адрес из всех адаптеров удаляется, если вы снимите флажок NLB на этом узле.

  • Следующие средства можно использовать с NLB для мониторинга:

    • ClusterSenitel
    • Центр хранилища данных
    • HTTPMon — для мониторинга служб IIS.
    • MOM
  • При балансировке нагрузки запросов PPTP на каждом узле NLB требуются два сетевых адаптера.

  • При настройке двух сетевых адаптеров следует указать адрес шлюза в свойстве TCP/IP. Шлюз должен быть введен в NIC FE.

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

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

  • Исходная реализация NLB — WLBS. Все события записываются в источникЕ WLBS. Интерфейс командной строки для NLB — WLBS, а в Windows 2003 — это NLB.

  • Поставщик WMI диспетчера балансировки нагрузки не может подключиться к узлу кластера, для которого имя компьютера начинается с числового символа. Это ошибка.

  • NLB не реплицирует данные приложения. Возможно, вам потребуется использовать систему репликации содержимого Майкрософт (CRS) или стороннее программное обеспечение.

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

    • Монитор исключений

    • HTTPMon

    • Сторонние средства мониторинга

      • SiteScope by Mercury Interactive Corporation
      • AppManager by NetIQ
      • WhatsUp Gold по Ipswitch

Режим юниадресной рассылки с одним сетевым адаптером

В режиме юниадресной рассылки NLB изменяет MAC-адрес сетевого адаптера на MAC-адрес кластера. Теперь в кластере доступно только один MAC-адрес, то есть MAC-адрес кластера, и этот MAC-адрес должен быть одинаковым на всех узлах кластера. Сетевой перенаправление не может пересылать запрос на один и тот же MAC-адрес, если он происходит из одного источника, а также узел не может взаимодействовать друг с другом. Это недостаток режима юниадресной рассылки с одним сетевым адаптером. Чтобы разрешить узлам взаимодействовать друг с другом, включите режим MULTICAST или установите второй сетевой адаптер.

  • При использовании диспетчера балансировки нагрузки при использовании диспетчера балансировки сетевой нагрузки интерфейс недоступен. Эта ошибка возникает при изображении сервера или копировании на виртуальную машину. Все идентификаторы GUID сети будут одинаковыми. Чтобы устранить эту проблему, необходимо переустановить сетевой адаптер из диспетчера устройств.
  • При настройке NLB через диспетчер NLB и вы удалили узел из кластера. Если это состояние по-прежнему отображается в ожидании в течение длительного времени, то вручную отключите NLB в узле. Он исчезнет из диспетчера.
  • Рекомендуется всегда добавлять локальный узел (где выполняется диспетчер балансировки нагрузки) после добавления всего узла при запуске кластера NLB в одном сетевом адаптере с режимом Юниадресной рассылки.
  • Рекомендуется запустить диспетчер NLB на отдельном компьютере, который не является частью кластера при запуске кластера в одном сетевом адаптере с одноадресной рассылкой или режимом многоадресной рассылки.
  • Если вы добавили локальный узел в диспетчер NLB в режиме одноадресной рассылки и при обновлении, все остальные узлы будут недоступны.
  • При доступе к ВИРТУАЛЬНОму IP-адресу с помощью UNC можно получить поле входа, если ваш запрос пересылается на узел, который не находится в домене и члене домена. Возможно, потребуется указать учетные данные пользователя.
  • Перекрестный кабель между узлами NLB не работает правильно для сообщений пульса и других. Он работает отлично в кластеризации серверов.
  • Сообщения пульса передаются через сетевой адаптер с поддержкой NLB всегда независимо от того, работаете ли кластер в режиме юниадресной рассылки или многоадресной рассылки.
  • Когда приложение, работающее на узле, умирает или останавливается, подсистема балансировки нагрузки будет переадресовывать запросы на этот сервер, так как NLB не отслеживает состояние приложения.
  • Только Windows 2003 и более поздних версий можно настроить диспетчером балансировки нагрузки. Однако вы можете управлять предыдущими версиями Windows, но не можете настроить их с помощью диспетчера балансировки нагрузки.
  • Удаленное управление для NLB использует порт UDP 2504.

Улучшения балансировки сетевой нагрузки Windows 2008

  • В Windows Server 2008 для NLB поддерживается fo IPV6. Узел IPV6 может присоединиться к узлу NLB.
  • Несколько выделенных IP-адресов поддерживаются в Windows Server 2008 для NLB.
  • Поддерживает последовательное обновление с Windows 2003 до Windows 2008.
  • Поддержка автоматической установки NLB
  • Также поддерживает NLB в серверном ядре.

Отказ от ответственности за содержимое общедоступных решений

Корпорация Майкрософт и/или ее поставщики не делают никаких заявлений относительно пригодности, надежности или точности сведений и соответствующих изображений, приведенных в настоящем документе. Все эти сведения и соответствующие изображения предоставлены "как есть" без каких-либо гарантий. Корпорация Майкрософт и/или ее поставщики настоящим отказываются от каких-либо гарантийных обязательств и условий в отношении этих сведений и соответствующих изображений, включая все подразумеваемые гарантии и условия товарной пригодности, применимости для конкретных целей, качества исполнения, прав собственности и отсутствия нарушений прав интеллектуальной собственности. В частности, вы подтверждаете свое согласие с тем, что корпорация Майкрософт и/или ее поставщики ни при каких обстоятельствах не несут ответственности за прямой или косвенный ущерб, штрафные санкции, случайные, фактические, косвенные или иные убытки, включая, в частности, убытки от утраты эксплуатационных качеств, от потери данных или прибылей в связи с использованием или невозможностью использовать эти сведения и соответствующие изображения, содержащиеся в настоящем документе, возникшие вследствие соглашения, гражданского правонарушения, халатности, объективной ответственности или иным образом, даже если корпорация Майкрософт или ее поставщики заранее были извещены о возможности такого ущерба.