Скрипт по включению режима обслуживания MS Exchange 2013

Изредка я занимаюсь обслуживанием почтовый серверов MS Exchange. Поставить обновления и кумулятивные пакеты — в принципе несложно.

В очередной раз выполняя процедуру по выводу сервера в режим обслуживания, я подумал — почему бы не написать скрипт, содержащий шесть PowerShell-командлетов вида

в которые еще и нужно добавить имя сервера, выводимого в режим обслуживания.

В общем, я написал скрипт, который при запуске с сервера MS Exchange спрашивает «выберите какую операцию вы хотите выполнить»: ввод в режим обслуживания или выход из него.

В зависимости от выбранной опции и роли сервера скрипт выполняет требуемые PS-командлеты.

Критика приветствуется.

Скрипт по включению режима обслуживания MS Exchange 2013: 4 комментария

  1. Нет, не годятся, так как они выполняют лишь эту часть функционала:
    Suspend-ClusterNode $servername
    Set-MailboxServer $servername -DatabaseCopyActivationDisabledAndMoveNow $True
    Set-MailboxServer $servername -DatabaseCopyAutoActivationPolicy Blocked

    Если вы посмотрите по ссылке в статье, то там как раз и приведены остальные командлеты либо ДО, либо ПОСЛЕ запуска этого скрипта.
    P.S. Кстати, там еще перезапускается служба транспорта
    Restart-Service MSExchangeTransport
    Уточню у коллег, почему мы так не делаем…

  2. Здравствуйте, Роман.
    Я не проверял.
    Принципиальная разница в том, что в 2016 нет отдельной роли Client Access. Как следствие, условие if((get-exchangeserver $servername).serverrole -match «Mailbox») не нужно, весь набор командлетов должен отрабатывать на каждом узле DAG.

Добавить комментарий для Anonymous Отменить ответ

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