Войти

Показать полную графическую версию : Настройка двух серверов


osada
26-02-2015, 09:41
Всем доброго дня.

Хотел бы попросить ваши советы по правильной настройке DAG и CAS Load Balancing.

Хотелось бы настроить отказоустойчивую почтовую систему на базе Win Server 2012 R2 Eng и MS Exchange Server 2013 STD.

В наличии два физических сервера для установки двух серверов MS Exchange.
LAN – 192.168.50.x
WAN - уже ранее на внешнем DNS –сервере настроена MX –запись mail.test.com с внешним IP 1.2.3.4 для хождения почты. Сейчас в таком виде работает текущая почтовая служба на другом почтовом сервере, но будем мигрировать на MS Exchange.

На текущем почтовом сервере настроены две сетевые карты:
External – 1.2.3.4
Internal - 192.168.50.3
Домен - test.com, при этом это имя домена должно быть одинаковым как внутри организации, так и снаружи в Интернете.

Первый Exchange Server – exch1.test.com, IP 192.168.50.10
Второй Exchange Server – exch2.test.com, IP 192.168.50.11
Клиенты работают в основном на MS Outlook 2013.

Мои первые действия:
a) Чтобы назначить для обоих серверов exch1.test.com и exch2.test.com отказоустойчивую роль для MailBox:
Настроить exch1.test.com и exch2.test.com в DAG, выделить IP для DAG 192.168.50.12. Таким образом я настрою отказоустойчивость для MailBox - службы
b) Тут нужна ваша помощь.

Согласно статье http://exchangeserverpro.com/exchange-2013-client-access-server-high-availability/ настроить DNS RR хоть какую-то балансировку и отказоустойчивость для CAS.
Т.е., во внутреннем DNS указываю новую А-запись mail.test.com с указанием на IP –адресов моих двух серверов, т.е. 192.168.50.10 и 192.168.50.11.
Это я настроил в тестовой среде и проверил, почта внутренняя работает нормально. Внешнюю почту проверить пока нет возможности.

Вопросы:
Как правильно настроить чтобы эти оба сервера принимали и отправляли внешнюю и внутреннюю почту?
Мой вариант (Сначала отключаем полностью текущий почтовый сервер от сети):

Самый простой. На одном сервере CAS exch1.test.com (перед установкой самого софта Exchange) меняем на Internal карте на IP 192.168.50.3. На External меняем IP на 1.2.3.4. Т.е. будет схожая сетевая конфигурация с текущим сервером, 2 Maibox –сервера + 1 CAS. CAS смотрит в Интернет с приемом-отправкой писем.

Далее хотел узнать насчет других вариантов, как можно еще альтернативно настроить оба сервера? Желательно, чтобы была бы отказоустойчивость и/или балансировка CAS, если это возможно в моем случае. Например, можно ли настроить этот IP 192.168.50.3 в качестве VIP для параллельной работы двух CAS –серверов? Т.е., в случае недоступности exch1.test.com пользователи могли подключаться к exch2.test.com? Если можно, то как?

Нужен ли здесь IIS ARR в данном примере? Т.е., есть ли толк в его установке при моих требованиях?

Windows NLB в моем случае тоже не выход, т.к. DAG работает на этих же физических серверах.

ko4evneg
26-02-2015, 12:35
Балансировку и отказоустойчивость можете реализовать так:
1) DNS RR - дешево и сердито. Создаете по две A записи на каждый сервис во внешней и внутренней зоне. Из минусов только неровное распределение нагрузки.
2) Дополнительный балансировщик. Нужен дополнительный сервак или железяка для него. Соответственно из минусов расходы на них и единственная точка отказа.
3) IIS ARR. Никогда не пробовал такой способ, насколько я знаю тоже нужен доп сервак. Соответственно минусы такие же как и во втором варианте.
4) Для полностью отказоустойчивого решения добавляем ко 2 или 3 варианту еще по серваку для избавления от единственной точки отказа. Из минусов - цена.
Если сервера более-менее мощные, а клиентов не больше 1000 я бы советовал ограничиться DNS RR. Т. к. CAS в 2013 выполняют в основном роль прокси, и основная балансировка будет определятся распределением баз по DAG.

Для переключения почтового потока с вашего сервера, если вы не рассматриваете сценарий сосуществования, настраиваете и проверяете exchange. Это accepted domains, send/receive connectors, autodiscover, outlook anywhere, virtual directories. Не забудьте прописать HELO, A и PTR записи для send коннекторов. По умолчанию почта принимается CAS серверами, так что в зависимости от выбранного способа балансировки нацеливаете MX запись вашего домена (предварительно добавленного в accepted) либо на IP балансировщика, либо на IP CAS при выборе DNS RR (тут надо будет создать две MX записи для обоих серверов). Если есть SPF запись, не забудьте туда добавить IP ваших CAS.

osada
26-02-2015, 13:03
1) " Создаете по две A записи на каждый сервис во внешней и внутренней зоне." - если у меня только один внешний IP адрес, то тогда и прописывать ничего не надо дополнительно во внешней зоне? Только во внутренней (там уже прописано, как указал в своем посте)?

2) Балансировщик не могу использовать по причине финансов. Уже ранее думал про этот момент.

4) Добавить еще по серверу также вряд ли получится по причине финансов.

"Если сервера более-менее мощные, а клиентов не больше 1000 я бы советовал ограничиться DNS RR." - да, сервера средней мощности и клиентов будет меньше 1000. Вот тут стопорю как дальше настроить роутинг внешней почты. Исходя из того, что не получится докупить что-то еще и у меня есть только эти пару серверов, как мне поступить?

Просьба большая объяснить детальнее что мне нужно делать.

Т.е., на данный момент на текущем почтовом сервере одна NIC содержит внешний IP 1.2.3.4 и внутренний IP 192.168.50.3.
Чтобы желательно ничего не менять во внешнем DNS при переходе на Exchange, что мне нужно доделать чтобы нормально шла внешняя почта в обе стороны?

Должен ли я менять внутрениий IP на серверах Exch1 или Exch2?

Ранее я описал самый простой вариант, когда просто поменять внутренний IP на exch1 на 192.168.50.3 и на второй NIC добавить внешний IP 1.2.3.4 наподобие сетевых настроек текущего почтового сервера. Тогда схема выглядит как 1CAS + 2 MBX. Она работоспособна?

Если да, то какие еще альтернативные варианты можно рассмотреть?

osada
26-02-2015, 13:33
Будет ли такой вариант работоспособный?

Внутренние IP адреса двух серверов не меняем, DNS RR создаем с именем mail.test.com с указанием на эти два IP адреса серверов (это уже настроено).

Затем создаем MX - запись с ссылкой на mail.test.com.
При этом настраиваем внешний IP 1.2.3.4 на сетевых картах обоих серверах, но на одном сервере просто вытаскиваем патч-корд или отключаем саму карту. В случае краха первого сервера втыкаем патч-корд и почта будет дальше работать?

ko4evneg
26-02-2015, 15:58
Тогда схема выглядит как 1CAS + 2 MBX. Она работоспособна? »
Да, но тогда вы теряете отказоустойчивость на уровне CAS.

При этом настраиваем внешний IP 1.2.3.4 на сетевых картах обоих серверах, но на одном сервере просто вытаскиваем патч-корд или отключаем саму карту. В случае краха первого сервера втыкаем патч-корд и почта будет дальше работать? »
Должен, но тестирование никто не отменял конечно!

Вообще я бы взял второй внешний IP (например с фтп) и сделал трансляцию 25,80,443 порта на внутренний IP второго сервера. Таким образом будет достигнута автоматическая отказоустойчивость на уровне CAS серверов. И на этот IP направить вторую внешнюю MX запись.

osada
27-02-2015, 12:15
"Вообще я бы взял второй внешний IP (например с фтп) и сделал трансляцию 25,80,443 порта на внутренний IP второго сервера. Таким образом будет достигнута автоматическая отказоустойчивость на уровне CAS серверов. И на этот IP направить вторую внешнюю MX запись." - я тоже про этот момент думал, но как тогда правильно указать MX запись для второго внешнего IP во внешнем DNS?

Например, mail.test.com, MX preference 5, IP 1.2.3.4 - т.е., мы тут указываем, что если на первом сервере настроить на внешней NIC внешний IP 1.2.3.4, то, все ok, почта будет работать. При это происходит трансляция с 1.2.3.4 на первый CAS exch1.test.com, IP 192.168.50.10.

А как правильно прописать второй внешний IP 1.2.3.5? Получается, что во внешнем DNS нужно указать второй хост, например, mail2.test.com, MX preference 10, IP 1.2.3.5. При это происходит трансляция с 1.2.3.5 на второй CAS exch2.test.com, IP 192.168.50.11.

Прав ли я?

Например, перестанет работать mail.test.com, т.е. exch1.test.com с IP 192.168.50.10, По идее внешняя почта должна увидеть, что есть mail2.test.com работает и начнет слать почту через mail2.test.com.

Если да, то как правильно публиковать внешние URL для виртуальных каталогов Exchange на обоих серверах в соответствии с mail.test.com и mail2.test.com?

ko4evneg
27-02-2015, 12:48
Прав ли я? »
просто сделайте две MX записи
MX preference 5, IP 1.2.3.4
MX preference 5, IP 1.2.3.5
У вас будет и отказоустойчивость и балансировка на уровне MX
Если да, то как правильно публиковать внешние URL для виртуальных каталогов Exchange на обоих серверах в соответствии с mail.test.com и mail2.test.com? »
Если мы считаем, что у вас с IP 1.2.3.4 и 1.2.3.5 проброшены 80 и 443 порты на CASы, то создаете две A записи, плюс две для автодискавера:
mail.test.com 1.2.3.4
mail.test.com 1.2.3.5
autodiscover.test.com 1.2.3.4
autodiscover.test.com 1.2.3.5
Затем указываете на всех виртуальных директориях URL доступа http[s]://mail.test.com/<имя директории>

osada
27-02-2015, 13:13
Понятно, спасибо!

Значит я переборщил тут с созданием еще одного DNS имени mail2.test.com. Все можно сделать на уровне одной записи mail.test.com

И как я понял, при публикации первого и второго серверов в EAC в виртуальных каталогах нужно указывать URL не как exch1.test.com и exch2.test.com соответственно, а сразу mail.test.com в обоих случаях.

Прав ли я?

И еще вопрос касательно рекомендаций по установке выделенных аппаратных или программных балансировщиков.

Если можно просто на уровне внешего DNS указывать несколько IP для одной записи и использовать DNS RR, то в каких случаях насоятельно рекомендуется покупать отдельно балансировщик траффика?

Тот же Kemp или F5, как пример.

ko4evneg
27-02-2015, 14:39
И как я понял, при публикации первого и второго серверов в EAC в виртуальных каталогах нужно указывать URL не как exch1.test.com и exch2.test.com соответственно, а сразу mail.test.com в обоих случаях. »
Верно. Так же и в остальных виртуальных директориях.
Если можно просто на уровне внешего DNS указывать несколько IP для одной записи и использовать DNS RR, то в каких случаях насоятельно рекомендуется покупать отдельно балансировщик траффика? »
При больших инсталляциях. Например нагрузка на CAS при 10000 юзерах уже будет весьма ощутимой. Плюс балансировщики 7 уровня могут мониторить отказ на уровне приложений, DNS RR такой возможности не дает. В 2013 роль CAS балансировщика сильно уменьшилась, поскольку теперь не нужна привязка (affinity) для сессий и множество задач перенесено с CAS на MBX (например генерация OWA).

osada
27-02-2015, 18:04
Спасибо, понятно.

osada
10-03-2015, 10:16
"просто сделайте две MX записи
MX preference 5, IP 1.2.3.4
MX preference 5, IP 1.2.3.5
У вас будет и отказоустойчивость и балансировка на уровне MX "

Кажется, немного я туплю здесь. Сейчас пытаюсь создать эти две MX - записи в Win Server 2012 R2 и просто не получается:

1) mail.test.com 1.2.3.4
mail.test.com 1.2.3.5
autodiscover.test.com 1.2.3.4
autodiscover.test.com 1.2.3.5 - эти записи созданы.

2) Создаю первую MX -запись с приоритетом 10 ссылаясь на mail.test.com и указанием первого IP 1.2.3.4, запись создается успешно. Делаю согласно https://technet.microsoft.com/en-us/library/cc759534%28v=ws.10%29.aspx?f=255&MSPPError=-2147217396

Пытаюсь создать вторую точно такую MX запись с таким же приоритетом 10 и указанием IP 1.2.3.5, но выдается ошибка, что такая запись уже создана.

В чем тут ошибка?

ko4evneg
10-03-2015, 11:10
Пытаюсь создать вторую точно такую MX запись с таким же приоритетом 10 и указанием IP 1.2.3.5, но выдается ошибка, что такая запись уже создана. »
Имя MX записи второй поменяйте, оно не должно совпадать с первой.




© OSzone.net 2001-2012