Kemp VLM: настраиваем Exchange 2010

В предыдущем посте я описал начальную настройку балансировщика KEMP VLM. Чтобы продолжить его настройку под Exchange 2010 необходимо сделать некоторые действия с сервером Exchange. А именно:

  • Создать во внутренней DNS-зоне a-запись для подключения клиентов.
  • Необходимо будет создать CAS Array.
  • Имеет смысл зафиксировать порты для сервисов MSExchangeRpc и MSExchangeAB.

Я в лабе использую так называемую 1-arm конфигурацию, то есть и клиенты и серверы находятся в одной сети и балансировщик использует один сетевой интерфейс. Общая конфигурация лабы следующая:

Сервер IP Роль
dc.o365lab.pro 192.168.1.10 DC,DNS,CA
ex1.o365lab.pro 192.168.1.50 CAS,HT,MBX
ex2.o365lab.pro 192.168.1.51 CAS,HT,MBX
lb1001.o365lab.pro 192.168.1.150 VLM

Для клиентского доступа я создам а-запись outlook в зоне o365lab.pro:

> outlook
Server:  dc.o365lab.pro
Address:  192.168.1.10

Name:    outlook.o365lab.pro
Address:  192.168.1.52

Следующий шаг – создание CAS Array:

New-ClientAccessArray -Name outlook -Fqdn outlook.o365lab.pro
-Site Default-First-Site-Name

Затем – фиксация портов для сервисов MSExchangeRpc и MSExchangeAB на всех серверах Exchange:

HKLMSystemCurrentControlSetServicesMSExchangeRPC
ParametersSystemTCP/IP Port = 0xe8сb
HKLMSystemCurrentControlSetServicesMSExchangeAB
ParametersRpcTcpPort = "59596"

Не забываем исправить RpcClientAccessServer у существующих почтовых баз:

Get-MailboxDatabase | Set-MailboxDatabase
-RpcClientAccessServer outlook.o365lab.pro

И исправить адреса доступа к разным клиентским сервисам:

Get-ClientAccessServer | Set-ClientAccessServer -AutoDiscoverServiceInternalUri
https://outlook.o365lab.pro/Autodiscover/Autodiscover.xml 
Get-OABVirtualDirectory | Set-OABVirtualDirectory -ExternalURL
https://owa.o365lab.pro/OAB -InternalURL https://outlook.o365lab.pro/OAB 
Get-WebServicesVirtualDirectory | Set-WebServicesVirtualDirectory
-ExternalURL https://owa.o365lab.pro/ews/exchange.asmx
-InternalURL https://outlook.o365lab.pro/ews/exchange.asmx 
Get-ActiveSyncVirtualDirectory | Set-ActiveSyncVirtualDirectory
-ExternalURL https://owa.o365lab.pro/Microsoft-Server-ActiveSync
-InternalURL https://outlook.o365lab.pro/Microsoft-Server-ActiveSync 
Get-OWAVirtualDirectory | Set-OWAVirtualDirectory -ExternalURL
https://owa.o365lab.pro/OWA -InternalURL https://outlook.o365lab.pro/OWA 
Get-ECPVirtualDirectory | Set-ECPVirtualDirectory -ExternalURL
https://owa.o365lab.pro/ECP -InternalURL https://outlook.o365lab.pro/ECP 

Стоит обратить внимание, что для внутреннего доступа (InternalURL) я использую имя outlook.o365lab.pro, а для внешнего (ExternalURL) – owa.o365lab.pro. По последнему имени так же будет работать Outlook Anywhere. Оно же будет фигурировать во внешней dns-записи для службы автообнаружения. Если по каким то причинам нам нужно минимизировать имена, прописываемые в поле SAN сертификата, то можно использовать одно dns-имя, но в случае с внешним доступом это немного замедлит подключение клиентов.

Теперь можно начать настраивать балансировщик. Все сервисы у нас будут доступны по одному ip-адресу 192.168.1.52. Для упрощения процедуры настройки можно импортировать (Virtual Services → Manage Template) и использовать при создании один из доступных шаблонов. Я буду использовать Core.tmpl:

kemp2

В стандартных настройках имеет смысл поставить L7 Transparency. Остальные настройки оставляем без изменений.

kemp3

Ниже, в Real Servers добавляем физические серверы:

kemp4

Кроме веб-сервиса (OAB/ActiveSync/OWA/ECP) на балансировщике необходимо сделать сервисы для MAPI (порт 135), MSExchangeRpc (порт 59595) и MSExchangeAB (порт 59596). Итоговая таблица сервисов у нас будет выглядеть следующим образом:

kemp5

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

kemp6

kemp7

Видно, что клиент внутренний (использует TCP/IP, а не HTTP) и использует внутренней имя outlook.o365lab.pro для подключения.

Статистика на самом балансировщике показывает, что клиент перенаправляется на сервер ex1:

kemp8

Попробуем организовать небольшой сбой (выключим виртуалку ex1). В статистике сразу становится видно, что ex1 находится в нерабочем состоянии (Down), а все запросы пошли ко второму живому серверу:

kemp9

Полезные ссылки:
LoadMaster Installation and Configuration Guide
LoadMaster Deployment Guide for MS Exchange 2010

7 thoughts on “Kemp VLM: настраиваем Exchange 2010

  1. Что-то комментариев не видно, а ведь отличная статья!
    Кратко и емко, ещебы диаграмму подключений в конце добавить, для облегчения восприятия.

  2. Чего не хватает в статье – краткого поисание, что умеет данный баласировщик, просто раскидывать клиентов как DNS RoundRobin или хранить состояние сессий?

    Например, у нас идет RPC подклчюение, одни CAS падает, будет ли сохранено состояние сеанса или придется переподключаться?

  3. Сергей,
    В качестве представителя kemp technologies подтверждаю что балансировщики КЕМР Load Master перераспределяет трафика клиентов по методом DNS round robin, Least Connection, Agent Based Adaptive Balancing, Fixed Weighted, weighted round robin, Source IP Hash и также у нас есть Load Balancing with persistence- With persistence, the LoadMaster will direct new connections according to the load balancing algorithm,
    but returning connections will go to the same server
    Полная информация находиться здесь
    Димо Илиев
    KEMP Technologies

    Email: diliev@kemptechnologies.com
    Tel: +353 61 260 117

  4. Наверное, можно добавить, что изменение RpcClientAccessServer у существующих почтовых баз? автоматом не меняет настроек клиентов 😎 и предстоит определенная работа, по их переключаению на casarray

  5. Сергей, спасибо за комментарии. Извиняюсь за задержку с ответом, был немного занят.

    1. По диаграмме подключений не совсем понял, что имеется ввиду. Подробнее напишете?

    2. Добавил к статье ссылки на документацию от Kemp. Балансировщик умеет многое. Я не ставил перед собой цель полностью расписать его преимущества/недостатки. Описываю лишь конкретные сценарии (интересные мне) применения.

    Состояние сеанса сохраняется. В терминах Kemp это называется Persistence. И в случае с Exchange 2010 рекомендуется использовать режим Source IP Address (без SSL Offloading, или не-HTTP/HTTPS трафик), либо Super HTTP (с SSL Offloading). Отличие режимов лучше посмотреть в LoadMaster_Configuration_Guide.pdf.

    3. Всех сценариев в небольшой заметке не описать. Таки вы правы, если создавать CAS Array в уже существующей инфраструктуре Ex2010, то придётся повозиться с клиентами. С другой стороны – ничто не мешает нам создать CAS Array сразу – это немного упростит процесс.

Leave a Reply

Your email address will not be published. Required fields are marked *