Обслуживание серверов MS Exchange 2010 SP2

On 01/12/2012, in Exchange, by Алексей Волобуев

В нашем постоянно меняющемся мире для предотвращения угроз безопасности компания Microsoft выпускает обновления. О том, как я применяю их на сервере MS Exchange 2010 SP2, состоящем из 4-х серверов: 2-х серверов с ролями CAS+HUB и 2-х серверов с ролью MB, объединенных в DAG, будет написано дальше.

Итак в моей компании для обмена электронной почтой применяется сервер MS Exchange 2010. Для отказоустойчивости 4 сервера разделены на 2 функциональные части:

1 часть состоит из 2-х серверов с ролями CAS+HUB. Для распределения нагрузки применяется используется кластер MS NLB. Имена серверов SEN-EXCH01 и SEN-EXCH02.

2 часть состоит  из 2-х серверов с ролью MB. Сервера объединены в DAG. Имена серверов SEN-EXMB01 и SEN-EXMB02. Имя DAG — DAG1.

Доменная часть вообщем то не обязательна.

Итак, вышли новые обновления, необходимо их установить на наши сервера. Вначале я обновляю сервера с ролью CAS+HUB.

Для этого, на обновляемом сервере запускаю «Network Load Balancing Manager», на нужном хосте нажимаю правую клавишу мыши, последовательно выбираю «Control Host->Drainstop».

 

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

После обновления серверов с ролями CAS+HUB, приступаю к обновлению серверов с ролью MB и объединенных в DAG.

В Exchange 2010 SP2 есть несколько скриптов, которые делают управление членами DAG более простым. Смысл их очень просто – вы запускаете скрипт, переводящий сервер в режим обслуживания, перемещая активные базы на другой сервер. После завершения обслуживания вы запускаете другой скрипт, который выводит сервер из режима обслуживания и затем перераспределяет базы между членами DAG.

Скрипты находятся по адресу «C:\Program Files\Microsoft\Exchange Server\V14\scripts> «. Если у вас MS Exchange по другому пути, надо соответственно перейти в дугую директорию.

Скрипт первый: StartDagServerMaintenance.ps1 для помещения члена DAG в режим обслуживания После запуска данного скрипта он перемещает все активные базы на другие члены массива  и устанавливает значение настройки сервера почтовых ящиков DatabaseCopyAutoActivationPolicy в значение Blocked. Для каждой базы выполняется командлет Suspend-MailboxDatabaseCopy и при необходимости ресурсы кластера перемещаются на другой сервер.

Смотрим состояние почтовых баз перед применением скрипта. Для этого запускаем командлет Get-MailboxServer | Get-MailboxDatabaseCopyStatus

Состояние почтовых баз перед обслуживанием

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

Для обслуживания сервера SEN-EXMB02 с сервера SEN-EXMB01 запускаем команду

[PS] C:\Program Files\Microsoft\Exchange Server\V14\scripts>.\StartDagServerMaintenance.ps1 -serverName sen-exmb02

Опять смотрим состояние почтовых баз после применениея скрипта. Для этого запускаем командлет Get-MailboxServer | Get-MailboxDatabaseCopyStatus

Рисунок будет добавлен позже Cool

 

Видим, что все активные копии почтовых баз находятся на одном сервере.

Ставим обновления на сервере SEN-EXMB02

После обновления обычно требуется перезагрузится. После перезагрузки, возвращаем сервер из режима обслуживания. Для этого запускаем скрипт с сервера SEN-EXMB01 :

[PS] C:\Program Files\Microsoft\Exchange Server\V14\scripts>.\StopDagServerMaintenance.ps1 -serverName sen-exmb02

Он запустит для каждой базы командлет Resume-MailboxDatabaseCopy, восстановит работу кластера и установить параметр DatabaseCopyAutoActivationPolicy в значение Unrestricted.

После возвращения сервера SEN-EXMB02 из режима обслуживания, необходимо распределить активные и пассивные копии почтовых баз по разным серверам. Для этого запускаем скрипт:

[PS] C:\Program Files\Microsoft\Exchange Server\V14\scripts>.\RedistributeActiveDatabases.ps1 -DagName DAG1 -BalanceDbsByActivationPreference -ShowFinalDatabaseDistribution

C помощью указания различных опций можно перераспределить базы на основании приоритета активации, используя параметр BalanceDbsByActivationPreference. Если вы используете параметр BalanceDbsBySiteAndActivationPreference, скрипт будет предпринимать попытку активировать наиболее предпочитаемую копию и затем выполнить балансировку в пределах сайта. Более подробно можно прочитать здесь 

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

Например: .\RedistributeActiveDatabases.ps1 -DagName DAG1 -BalanceDbsByActivationPreference -ShowFinalDatabaseDistribution -Confirm:$false

После выполнения данного скрипта, проверяем состояние копий почтовых баз с помощью командлета Get-MailboxServer | Get-MailboxDatabaseCopyStatus

 

Tagged with:  

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *