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

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

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

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

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

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

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

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

  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.

Leave a Reply

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