DataLife Engine > Windows > Пошаговое руководство по балансировке сетевой нагрузки в среде служб терминалов Windows Server 2008

Пошаговое руководство по балансировке сетевой нагрузки в среде служб терминалов Windows Server 2008


24 мая 2008. Разместил: podpole
В этом пошаговом руководстве представлены инструкции по балансировке сетевой нагрузки (Network Load Balancing, NLB) в среде служб терминалов, что позволяет получить такие преимущества, как повышенная доступность, масштабируемость и производительность приложений, поддерживающих балансировку нагрузки, а также возможность обработки большого количества запросов клиентских приложений несколькими серверами терминалов.
Обзор технологии балансировки сетевой нагрузки в среде служб терминалов

При балансировке сетевой нагрузки трафик распределяется между несколькими серверами с помощью протокола TCP/IP. Вы можете настроить NLB на ферме серверов для масштабирования и повышения производительности отдельного сервера терминалов путем распределения клиентских подключений между несколькими серверами. Компонент Terminal Services Session Broker (TS Session Broker), включенный в состав Windows Server 2008, Windows Server 2003 Enterprise Edition и Windows Server 2003 Datacenter Edition, обеспечивает переподключение пользователей к тем сеансам на ферме серверов терминалов, которые были по каким-либо причинам разорваны.

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

Службы терминалов включают в себя два важных компонента для балансировки нагрузки: службу Terminal Services Session Broker и оснастку Terminal Services Configuration.
Служба «Terminal Services Session Broker»

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

Когда служба TS Session Broker начинает свою работу, она создает локальную группу Session Broker Computers. По умолчанию эта группа пуста. Вы должны выбрать отдельные серверы терминалов или группы серверов, которые хотите задействовать в работе службы TS Session Broker, и вручную включить их в группу Session Broker Computers.

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

При установке серверной роли TS Session Broker на локальном компьютере происходят следующие изменения:

Устанавливается служба TS Session Broker. По умолчанию эта служба переходит в состояние Started и режим Automatic.

Создается локальная группа Session Broker Computers.

Предварительные требования перед установкой

Сервер, на котором устанавливается служба TS Session Broker, должен являться членом домена.

Сервер под управлением Windows Server 2008, на который устанавливается серверная роль TS Session Broker, не обязательно должен являться сервером терминалов или компьютером с включенной службой удаленного рабочего стола (Remote Desktop).

Примечание:

Если Вы устанавливаете серверную роль TS Session Broker на контроллер домена, то группа Session Broker Computers будет являться доменной локальной группой и будет доступна на всех контроллерах домена.

Процедура установки

Если на компьютере не установлено ни одной серверной роли служб терминалов, используйте следующую процедуру для установки роли «TS Session Broker».

В меню Start раскройте папку Administrative Tools и щелкните значок Server Manager.

В разделе Roles Summary щелкните ссылку Add Roles.

Ознакомьтесь с информацией на странице Before You Begin мастера Add Roles Wizard и нажмите кнопку Next.

На странице Select Server Roles установите флажок Terminal Services и нажмите кнопку Next.

На странице Terminal Services нажмите кнопку Next.

На странице Select Role Services установите флажок TS Session Broker и нажмите кнопку Next.
Важно:

Если Вы не хотите, чтобы сервер выступал в роли сервера терминалов, флажок Terminal Server должен быть снят.

На странице Confirm Installation Options убедитесь, что служба TS Session Broker отображена в списке, и нажмите кнопку Install.

На странице Installation Results нажмите кнопку Close.
Оснастка «Terminal Services Configuration»

Данная оснастка имеется на каждом сервере терминалов. Серверы терминалов, входящие в состав фермы, взаимодействуют со службой TS Session Broker с целью обеспечения прозрачного процесса переподключения пользователей именно к тем серверам, который изначально обслуживали разорванные сеансы. Этот процесс состоит из следующих этапов:

Когда пользователь подключается к ферме серверов терминалов, сервер, получающий первоначальный запрос на подключение клиента, отправляет запрос серверу службы TS Session Broker.

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

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

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

Для того чтобы на компьютере можно было использовать NLB, он должен иметь следующие компоненты:

Как минимум один сетевой адаптер для балансировки нагрузки.

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

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

Убедитесь, что все клиенты могут получить доступ к этой подсети.

Все серверы фермы серверов терминалов должны быть включены в один домен.
Шаги по настройке NLB в среде служб терминалов

Для настройки NLB в среде служб терминалов выполните следующие шаги:

Шаг 1. Настройка фермы серверов терминалов и службы TS Session Broker.

Шаг 2. Установка компонента NLB.

Шаг 3. Создание NLB-кластера.
Шаг 1. Настройка фермы серверов терминалов и службы «TS Session Broker»

Чтобы сервер терминалов мог использоваться службой TS Session Broker, Вы должны добавить его учетную запись в локальную группу Session Broker Computers на сервере службы TS Session Broker.

Важно:

Вы должны выполнить эту процедуру на компьютере, на который Вы установили серверную роль TS Session Broker.

Для добавления сервера терминалов в локальную группу «Session Broker Computers» выполните следующие действия:

Раскройте папку Administrative Tools в меню Start на сервере TS Session Broker и щелкните значок Computer Management.

В левой панели раскройте узел Local Users and Groups и выберите папку Groups.

В правой панели щелкните правой кнопкой мыши на группе Session Broker Computers и в контекстном меню выберите пункт Properties.

Нажмите кнопку Add.

В диалоговом окне Select Users, Computers, or Groups нажмите кнопку Object Types.

Установите флажок Computers и нажмите кнопку OK.

Найдите и добавьте учетную запись сервера терминалов, который Вы хотите добавить.

По завершении нажмите кнопку OK.

Вы можете присоединить сервер терминалов к ферме в TS Session Broker с помощью оснастки Terminal Services Configuration. Примечание:

Следующие шаги применимы только в том случае, если на сервере установлена роль Terminal Server.


Для настройки параметров службы «TS Session Broker» выполните следующие действия:

Откройте оснастку Terminal Services Configuration. Для этого в меню Start последовательно раскройте папки Administrative Tools и Terminal Services, и щелкните значок Terminal Services Configuration.

В области Edit Terminal Server Settings дважды щелкните надпись Member of farm in TS Session Broker, расположенную в разделе TS Session Broker,

На вкладке TS Session Broker установите флажок Join a farm in TS Session Broker.

В поле TS Session Broker server IP address or name введите имя сервера TS Session Broker.
Примечание:

Сервер TS Session Broker – это сервер, на котором установлена серверная роль TS Session Broker.

В поле Farm Name in TS Session Broker введите имя фермы в TS Session Broker, к которой Вы хотите присоединить сервер.
Важно:

Служба TS Session Broker использует это имя для определения того, какие компьютеры находятся в одной и той же ферме серверов терминалов. Вы должны указать одинаковое имя фермы на всех компьютерах, входящих в состав одной фермы серверов терминалов с балансировкой нагрузки. Имя фермы не обязательно должно совпадать с именем в службах каталога Active Directory. Если Вы укажете новое имя фермы, в TS Session Broker будет создана новая ферма, к которой будет присоединен сервер. Если Вы укажете уже существующее имя фермы, сервер будет присоединен к существующей ферме в TS Session Broker.

Убедитесь, что Вы хотите использовать перенаправление на основе IP-адреса. По умолчанию параметр Use IP address redirection включен. Если Вы снимете этот флажок, сервер переключится в режим перенаправления на основе маркера.

В списке Select IP addresses to be used for reconnection отметьте флажком те IP-адреса, которые Вы хотите использовать. Помните о следующем:

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

Только первый выбранный IPv4-адрес будет использоваться компьютерами, на которых работает клиент Remote Desktop Connection версии 5.2 и более ранних версий.

Не рекомендуется использовать IPv6-адреса, если ферма серверов терминалов содержит серверы под управлением Windows Server 2003.

По завершении нажмите кнопку OK.
Шаг 2. Установка компонента «NLB»

Данный компонент должен быть установлен на сетевом адаптере, который Вы хотите использовать для подключения по протоколу RDP (Remote Desktop Protocol).

Для открытия мастера «Add Features Wizard» и установки компонента «NLB» выполните следующие действия:

В меню Start раскройте папку Administrative Tools и щелкните значок Server Manager. В области Features Summary главного окна диспетчера Server Manager щелкните ссылку Add Features.

-- или --

В области Customize this server окна Initial Configuration Tasks щелкните ссылку Add Features.

В мастере Add Features Wizard установите флажок Windows Network Load Balancing.

Нажмите кнопку Install. Примечание:

Вы также можете установить компонент NLB, выполнив в командной строке следующую команду: Servermanagercmd.exe - install nlb.

Шаг 3. Создание NLB-кластера

Чтобы настроить NLB-кластер, Вы должны настроить три типа параметров:

Параметры узла, являющиеся индивидуальными для каждого узла NLB -кластера.

Параметры кластера, применяющиеся для NLB-кластера в целом.

Правила для портов, контролирующие то, каким образом функционирует кластер. По умолчанию правило для порта равномерно распределяет весь трафик протокола TCP/IP между всеми серверами. При использовании NLB в среде служб терминалов Вам понадобится изменить эти стандартные правила. Примечание:

Когда Вы используете оснастку Network Load Balancing Manager, Вы должны являться участником группы Administrators на том узле, который Вы настраиваете, или Вам должны быть делегированы соответствующие права. Если Вы настраиваете узел или кластер с помощью оснастки Network Load Balancing Manager, запущенной на компьютере, который не является частью кластера, Вы не обязательно должны являться участником группы Administrators на этом компьютере. В соответствии с рекомендациями безопасности, используйте для выполнения этой процедуры команду Run as.


Для создания NLB-кластера выполните следующие действия:

Чтобы открыть оснастку Network Load Balancing Manager, в меню Start раскройте папку Administrative Tools и щелкните значок Network Load Balancing Manager. Вы также можете открыть эту оснастку, выполнив в командной строке команду Nlbmgr.

Правой кнопкой мыши щелкните на узле Network Load Balancing Clusters и в контекстном меню выберите команду New Cluster.

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

Выберите сетевой интерфейс, который Вы хотите использовать в кластере, и нажмите кнопку Next (этому интерфейсу назначается виртуальный IP-адрес, и на него приходит клиентский трафик, который распределяется через NLB).

В окне Host Parameters выберите значение параметра Priority (Unique host identifier). Этот параметр задает уникальный код ID для каждого узла. Узел кластера, имеющий наименьшее числовое значение этого кода, обрабатывает весь сетевой трафик кластера, не попадающий под правило порта. Вы можете переопределить эти приоритеты или обеспечить балансировку нагрузки для определенных диапазонов портов, задав правила на вкладке Port rules диалогового окна Network Load Balancing Properties. Нажмите кнопку Next для продолжения.

В окне Cluster IP Addresses нажмите кнопку Add, чтобы ввести IP-адрес, общий для всех узлов кластера. Этот IP-адрес добавляется к стеку TCP/IP на выбранных интерфейсах всех узлов, являющихся частью кластера. Служба NLB не поддерживает протокол DHCP и отключает этот протокол на каждом настраиваемом интерфейсе. Таким образом, IP-адреса должны быть статическими. Нажмите кнопку Next для продолжения.

В окне Cluster Parameters введите значения параметров IP Address и Subnet mask (для IPv6-адресов маску подсети задавать не нужно). При работе NLB в среде служб терминалов параметр Full Internet Name задавать не нужно.

Установите переключатель Cluster operation mode в положение Unicast, чтобы определить, что для операций кластера должен использоваться индивидуальный MAC-адрес. В режиме Unicast MAC-адрес кластера назначается сетевому адаптеру компьютера, и встроенный MAC-адрес адаптера не используется. Рекомендуется принять значения режима Unicast по умолчанию. Нажмите кнопку Next для продолжения.

В окне Port Rules нажмите кнопку Edit, чтобы изменить правила портов по умолчанию. Настройте правила следующим образом. В разделе Port Range задайте диапазон портов с 3389 по 3389, чтобы новое правило применялось только к RDP-трафику. Установите переключатель Protocols в положение TCP, определив таким образом тип протокола, который будет обрабатываться правилом. Трафик, не обрабатываемый правилом для портов, будет обрабатываться узлом по умолчанию. Установите переключатель Filtering mode в положение Multiple host, таким образом, указав, что сетевой трафик, попадающий под действие этого правила, будет обрабатываться несколькими узлами кластера. Установите переключатель Affinity (применимый только к режиму Multiple host) в положение None, если Вы планируете использовать Session Broker. В противном случае установите этот переключатель в положение Single.

Нажмите кнопку Finish, чтобы завершить создание кластера.

Для того чтобы добавить дополнительные узлы в кластер, щелкните правой кнопкой мыши на новом кластере и в контекстном меню выберите команду Add Host to Cluster. Настройте параметры узла (включая приоритет и выделенные IP-адреса), выполнив описанные выше шаги. Поскольку Вы добавляете узлы в уже настроенный кластер, общие параметры кластера не изменяются.
Отзывы и замечания

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

Чтобы оставить отзыв о данном пошаговом руководстве, воспользуйтесь инструкциями, расположенным по ссылке http://go.microsoft.com/fwlink/?linkid=55105. Не забудьте, что в окне комментариев, расположенном на указанном веб-узле, Вы должны указать название этого пошагового руководства.
Дополнительные ресурсы

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

По вопросам поддержки продуктов обращайтесь на веб-узел Microsoft Connect.

Для получения доступа к группам новостей о NLB и службах терминалов следуйте инструкциям, расположенным на веб-узле Microsoft Connect.

Если Вы являетесь бета-тестером и принимаете участие в программе Technology Adoption Program (TAP), Вы можете обратиться за помощью к участникам назначенной Вам команды разработчиков Microsoft.

Для получения дополнительной информации о службе TS Session Broker в ОС Windows Server 2003 обратитесь к статье Session Broker and Load Balancing Using Terminal Server.
Автор: Артем Жауров aka Borodunter