Переезд сервера Exchange 2013 может потребоваться в связи с расширением или модернизацией инфраструктуры, когда появляется необходимость обеспечить отказоустойчивую конфигурацию между площадками. Если разворачивать новый сервер нет ни желания, ни ресурсов (новое оборудование, лицензии), то переезд одного из имеющихся серверов – это ваш вариант. Этим и займемся.
Ниже мы будем перемещать в другую локацию сервер exch02.
Если у вас два сервера Exchange в DAG и каждый из них может выдержать 100% нагрузку, то описанные ниже действия вы можете выполнять и в рабочее время (я бы даже рекомендовал вам выполнить это все в рабочее время, за одно увидели бы чего стоит ваша отказоустойчивая конфигурация).
Найти больше информации по настройке и администрированию Exchange 2013 на моем блоге вы сможете в основной статье тематики – Exchange 2013 — Установка, настройка, администрирование.
Содержание
- 1 Переезд сервера Exchange 2013
- 1.1 Отключение балансировки
- 1.2 Перенос активных копий
- 1.3 Перевод в режим обслуживания
- 1.4 Ресурсы кластера
- 1.5 Смена адреса и завершение работы
- 1.6 Переезд сервера и включение
- 1.7 Вывод из режима обслуживания
- 1.8 Проверка состояния
- 1.9 Включение балансировки
- 1.10 Подписка EdgeSync
- 1.11 Добавление адреса DAG
- 1.12 Записи DAG
- 1.13 Принадлежность к сайту
Переезд сервера Exchange 2013
Описанные ниже действия основаны на двух статьях 1 2 на блоге Technet, но также включают в себя и много дополнительных пунктов.
Отключение балансировки
Первым делом сервер необходимо вывести из балансировки, чтобы на него больше не отсылались никакие запросы.
Если у вас используется балансировка DNS RR, то просто временно удалите соответствующие записи. Не забудьте перенаправить на оставшийся сервер все внешние пробросы портов.
Перенос активных копий
Перенесем все активные копии баз данных на оставшийся сервер командой:
1 |
Move-ActiveMailboxDatabase -Server exch02 -ActivateOnServer exch01 |
Аналогичные действия вы можете проделать и через EMC, правда вручную для каждой базы.
Перевод в режим обслуживания
Необходимо перевести сервер в режим обслуживания, чтобы он не обрабатывал никакие клиентские запросы.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#переведем сервер в режим Draining Set-ServerComponentState exch02 -Component HubTransport -State Draining -Requester Maintenance #чтобы ускорить применение изменений, перезапустим службы вручную Restart-Service MSExchangeTransport Restart-Service MSExchangeFrontEndTransport #перенаправим сообщения, ожидающие доставки, на другой сервер (обязательно fqdn) Redirect-Message -Server exch02 -Target exch01.sc.local #сделаем узел неактивным Suspend-ClusterNode exch02 #запретим монтирование баз на сервере и переведем активные копии (если такие ещё остались) на другой активный сервер немедленно Set-MailboxServer exch02 -DatabaseCopyActivationDisabledAndMoveNow $True #посмотрим какая у нас используется политика активации копий баз данных (запомните это значение) Get-MailboxServer exch02 | Select DatabaseCopyAutoActivationPolicy #запретим автоматическую активацию копий Set-MailboxServer exch02 -DatabaseCopyAutoActivationPolicy Blocked #и окончательно переведем сервер в неактивное состояние Set-ServerComponentState exch02 -Component ServerWideOffline -State Inactive -Requester Maintenance #для надежности проверим состояние сервера командой: Get-ServerComponentState exch02 | ft Component,State –Autosize |
Это пока не все…
Ресурсы кластера
Проверим на каком узле располагаются ресурсы кластера:
1 |
Get-ClusterGroup |
И перенесем на другой узел, если требуется:
1 |
Get-ClusterGroup | Move-ClusterGroup –Node exch01 |
Смена адреса и завершение работы
На этом этапе сервер пока включен и самое время, подключившись к нему напрямую, изменить ip-адрес на новый, чтобы при следующем включении все было как надо.
Как только адрес изменен, сервер отключаем.
Переезд сервера и включение
Перевозим сервер куда нужно и включаем. Необходимо спокойно дождаться пока все службы запустятся.
Параллельно вы можете проверять сетевую доступность как самого сервера, так и остальных ресурсов. Обязательно убедитесь, что пинги ходят до всех КД.
Пока не спешите пересоздавать DNS-записи, ведь сервер все ещё в режиме обслуживания.
Вывод из режима обслуживания
Если на предыдущих шагах все было хорошо, самое время вывести сервер из режима обслуживания. Приступим.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#переведем сервер в активное состояние Set-ServerComponentState exch02 -Component ServerWideOffline -State Active -Requester Maintenance #возвращаем узел в рабочее состояние Resume-ClusterNode exch02 #вернем обратно возможность активации копий баз Set-MailboxServer exch02 -DatabaseCopyActivationDisabledAndMoveNow $False #и политику автоактивации в то состояние, которое было до проведения работ (помните я просил запомнить состояние?) Set-MailboxServer exch02 -DatabaseCopyAutoActivationPolicy Unrestricted #возвращаем в активное состояние HubTransport Set-ServerComponentState exch02 -Component HubTransport -State Active -Requester Maintenance #чтобы ускорить применение изменений, все также перезапускаем службы вручную Restart-Service MSExchangeTransport Restart-Service MSExchangeFrontEndTransport |
На этом этапе сервер полностью работоспособен.
Проверка состояния
Вывели сервер из режима обслуживания? Самое время проверить все ли компоненты находятся в нужном состоянии.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#смотрим состояние компонентов Get-ServerComponentState exch02 | ft Component,State –Autosize #состояние узлов кластера Get-ClusterNode #проверяем здоровье компонентов Test-ServiceHealth #этот пункт пока что не обязателен, но вы можете перекинуть на сервер активные копии баз и проверить подключение mapi Test-MapiConnectivity #сразу убедимся в состоянии копий баз данных Get-MailboxDatabaseCopyStatus #проверим состояние репликации Test-ReplicationHealth | ft -autosize #состояние DAG Get-DatabaseAvailabilityGroup | select -ExpandProperty:Servers | Test-ReplicationHealth | ft -autosize #локальное состояние компонентов (Get-ServerComponentState -Identity exch02 -Component ServerWideOffline).LocalStates |
Теперь пора перекидывать на сервер часть нагрузки.
Включение балансировки
Возвращаем сервер в пулы балансировки и перенаправляем пробросы обратно.
Подписка EdgeSync
Даже если у вас не используются серверы эксча с ролью Edge, вам все равно надо создать пустую подписку, иначе служба EdgeSync не сможет запуститься.
1 |
New-EdgeSyncServiceConfig -Site site_name |
Об этом моменте почему-то не говорилось ни в одной статье в интернете, хотя не заметить ошибку вы не сможете.
Добавление адреса DAG
Необходимо в настройки DAG добавить любой свободный адрес из подсети, в которую перетащили эксч. Сделать это можно через EMC. Я же не буду подробно останавливаться на этом моменте
Записи DAG
Дальше вы сможете заметить, что начнут сыпаться ошибки. Связаны они будут с тем, что сервер не может обновить запись кластера DAG 3.
Чтобы все поправить, нужно удалить DNS-запись кластера. Далее в оснастке Управление отказоустойчивости кластеров на любом эксче перевести в offline имя кластера и возвратить в online обратно. DNS-имя должн пересоздаться, ошибки уйти.
Этот момент мне также пришлось разгребать самому.
Принадлежность к сайту
И последний нюанс, о котором мало кто пишет – нужно сообщить эксчам запросы из каких сайтов будут для них доверенными.
1 |
Get-ClientAccessServer | Set-ClientAccessServer -AutoDiscoverSiteScope site1,site2,site_name |
Эта команда устанавливает для всех серверов Exchange список доверенных сайтов.
На этом, кажется, все. Не полагайтесь полностью на статьи, не забывайте читать официальную документацию и обкатывать изменения на лабах. Успехов!