В прошлый раз мы завершили настройку и предварительную подготовку серверов Exchange 2016. Наш следующий шаг – переключение HTTP/HTTPS и SMTP траффика. После этого мы будем выполнять миграцию наших почтовых ящиков.
Детали каждого из этих шагов будут приведены ниже.
Переключение SMTP траффика
Поговорим про SMTP траффик. Его можно разделить на две большие категории:
- Внутренний SMTP траффик.
- Внешний SMTP траффик.
Далее мы будем рассматривать внешний SMTP траффик и корректировать его параметры. По большому счету, по части внешнего SMTP траффика нас интересует два момента:
- Внешний исходящий траффик от наших клиентов, т.к. в процессе его маршрутизации используется коннектор отправки. На текущий момент там добавлены только два сервера – CAS01 и CAS01 (Exchange 2010).
- Внешний входящий траффик, т.к. он распределяется нашим балансировщиком между серверами CAS01 и CAS01 (Exchange 2010).
Приступим к настройке параметров внешнего SMTP траффика.
Важное предупреждение – весь процесс перенастройки маршрутизации SMTP может занять от 30 минут до пары часов, с учетом применения изменений и репликации Active Directory. Настоятельно рекомендую делать это в нерабочее время.
Корректировка параметров коннектора отправки
Для корректировки параметров коннектора отправки выполните следующие действия:
1. Запустите “Exchange Management Console” на одном из серверов CAS Exchange 2010.
2. Перейдите в раздел настройки коннектора отправки:
3. Добавьте оба наших сервера Exchange 2016:
4. Удалите сервера CAS01 и CAS02 из коннектора отправки.
5. Сохраните внесенные изменения.
Теперь наша почта должна отправляться через сервера Exchange 2016 и мы должны видеть примерно следующее в заголовках наших писем:
Received: from MBX04.itproblog.ru (10.10.10.163) by MBX04.itproblog.ru
(10.10.10.163) with Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2242.4; Fri, 23
Apr 2021 10:04:53 -0700
Received: from CAS01.itproblog.ru (10.10.10.155) by MBX04.itproblog.ru
(10.10.10.163) with Microsoft SMTP Server (version=TLS1_0,
cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256) id 15.1.2242.4 via Frontend
Transport; Fri, 23 Apr 2021 10:04:52 -0700
Received: from MBX02.itproblog.ru ([fe80::25cb:3d44:4198:7a9a]) by
CAS01.itproblog.ru ([fe80::5019:c125:fcc:926e%11]) with mapi id
14.03.0513.000; Fri, 23 Apr 2021 10:04:52 -0700
Корректировка параметров балансировки SMTP траффика
Внешний SMTP траффик у нас приходит на наш балансировщик KEMP LoadMaster. Далее он балансируется на сервера CAS01 и CAS02. Нам необходимо удалить сервера Exchange 2010 из нашего виртуального сервиса для SMTP и добавить туда сервера Exchange 2016.
Что нам нужно:
1. Запустить консоль управления нашим балансировщиком
https://10.10.10.150/
2. Перейти в раздел виртуальных сервисов и открыть виртуальный сервис “Exchange 2010 SMTP” для редактирования:
3. Удалим сервера Exchange 2010 из списка реальных серверов:
4. Добавим сервера Exchange 2016 в наш виртуальный сервис:
5. Переименуем наши виртуальные сервисы Exchange 2010 SMTP во что-то более нейтральное:
6. Проверяем работу входящей внешней электронной почты.
Переключение HTTP/HTTPS траффика
Переключение HTTP/HTTPS приходит на нашем балансировщике сетевой нагрузки KEMP LoadMaster. Он балансирует HTTP/HTTPS между серверами CAS01 и CAS02. Нам необходимо удалить сервера Exchange 2010 из нашего виртуального сервиса для переключение HTTP/HTTPS и добавить туда сервера Exchange 2016.
При аутентификации в веб сервисах (например, OWA или ECP) Exchange 2016 будет перенаправлять траффик на сервера Exchange 2010.
Подробнее про перенаправление (redirect) и проксирование (proxy) в Exchange 2016 можно ознакомится вот тут.
Что нам нужно:
1. Запустить консоль управления нашим балансировщиком
https://10.10.10.150/
2. Перейти в раздел виртуальных сервисов и открыть виртуальный сервис “Exchange 2010 HTTPS” для редактирования:
3. Удалим сервера Exchange 2010 из списка реальных серверов:
4. Добавим сервера Exchange 2016 в наш виртуальный сервис:
5. Скорректируем параметры проверки для виртуальных серверов:
7. Переименуем наши виртуальные сервисы Exchange 2016 HTTP/HTTPS траффика во что-то более нейтральное:
6. Проверяем работу OWA и ECP – должен пойти траффик на наши новые сервера:
При аутентификации в OWA или ECP Exchange 2016 будет перенаправлять траффик на сервера Exchange 2010, т.к. все наши почтовые ящики еще лежат там.
Переключение HTTP/HTTPS траффика завершено.
Миграция почтовых ящиков
Теперь наша организация Exchange 2010 готова к началу миграции почтовых ящиков. Перед миграцией основной части почтовых ящиков нам необходимо перенести системные почтовые ящики и почтовый ящик учетной записи администратора системы Exchange.
Перенос системных почтовых ящиков
Под системными почтовыми ящиками мы будем подразумевать следующее:
- Системные почтовые ящики Exchange 2010. Например, arbitration mailbox.
- Почтовый ящик администратора системы Exchange.
Посмотреть список почтовых ящиков арбитрации можно следующим командлетом:
Get-Mailbox -Arbitration
На скриншоте выше видно, что часть почтовых ящиков арбитрации находится на сервере почтовых ящиков Exchange 2010 (MBX02). Нам необходимо перенести их в одну из почтовых баз, которая расположена на сервере Exchange 2016. Мы будем переносить их в базе DB03.
Для переноса arbitration mailbox выполним следующий командлет в Exchange Management Shell на любом сервере Exchange 2016:
Get-Mailbox -Arbitration -Server mbx02 | New-MoveRequest -TargetDatabase DB03
Посмотреть статус миграции можно следующим командлетом:
Get-MoveRequest
Более детальную статистику можно посмотреть следующим командлетом:
Get-MoveRequest | Get-MoveRequestStatistics
После того, как процесс переноса почтовых ящиков будет завершен мы удалим завершенные запросы на перенос почтовых ящиков следующим командлетом:
Get-MoveRequest | Where status -eq "Completed" | Remove-MoveRequest
Перенос почтового ящика администратора Exchange
После того, как мы переместили почтовые ящики арбитрации выполним перенос почтового ящика нашего администратора системы Exchange в почтовую базу на одном из серверов Exchange 2016.
Перенос необходим для того, чтобы у нас появился доступ к новой версии ECP. Сейчас при переходе в веб консоль управления Exchange мы видим консоль управления старой версии Exchange (2010), т.к. почтовый ящик нашего администратора расположен в базе DB02 (сервер MBX02, Exchange 2010):
На самом деле мы можем перейти в новую версию OWA или ECP добавив в адресной строке браузера “?ExchClientVer=15”, но это будет необходимо делать каждый раз при доступе к OWA и ECP. Во-первых, это не удобно, а во-вторых, мы проверим процесс переноса и его последствия на первом “боевом” почтовом ящике.
Для переноса почтового ящика администратора Exchange в почтовую базу Exchange 2016 выполним следующий командлет на сервере Exchange 2016:
Get-Mailbox -Identity roman | New-MoveRequest -TargetDatabase DB04
Статус и процент завершения можно проверить следующим командлетом:
Get-MoveRequest | Get-MoveRequestStatistics
После того, как процесс переноса будет завершен мы удалим запрос на перенос почтового ящика администратора Exchange следующим командлетом:
Get-MoveRequest | Where status -eq "Completed" | Remove-MoveRequest
Если у нас, например, был открыт Outlook, то он сообщит нам, что неплохо было бы перезапустить клиент Outlook, т.к почтовый ящик переехал в другую базу:
Теперь при доступе к OWA и ECP у нас должен быть интерфейс новой версии Exchange:
Если вас все же редиректит на старую версию OWA или ECP, то попробуйте выполнить шаги вот из этой статьи базы знаний.
В моем случае нужно было включить наследование в Acctive Directory для учетной записи администратора и дождаться завершения процесса репликации:
Как обходной вариант – добавить параметр “?ExchClientVer=15” в адресной строке браузера. Например, для ECP:
https://mail.itproblog.ru/ecp/?ExchClientVer=15
Миграция через веб-интерфейс управления
Для того, чтобы осуществить перенос почтового ящика через веб интерфейс необходимо выполнить следующие действия:
1. Перейти в веб-интерфейс администрирования:
https://mail.itproblog.ru/ecp/
2. Перейти в раздел “Recipients” – “Migration”:
3. Указать, что мы собираемся перенести почтовый ящик в другую почтовую базу:
4. Мы будем переносить пользователя u1:
5. Укажем имя для нашего пакета переноса ящиков и укажем, что мы будет переносить как оперативный почтовый ящик, так и архивный почтовый ящик:
6. По окончанию работ письмо будет отправлено на почтовый адрес пользователя roman и, когда пакет переноса дойдет до стадии финализации, работы по переносу продолжатся автоматически:
До миграции размер почтового ящика был порядка 1,5 ГБ:
Отслеживать детальную информацию по процессу переноса и текущий статус мы можем в том же разделе “Recipients” – “Migration”:
После завершения миграции размер почтового ящика составил порядка 1,6 ГБ:
Итого, основные моменты по миграции одного тестового почтового ящика:
- Количество переносимых почтовых ящиков – 1 шт.
- Размер почтового ящика до миграции 1,544 ГБ.
- Размер почтового ящика до миграции 1,629 ГБ.
- Время миграции – 20 минут.
- Тип дисков для баз данных – NVMe SSD.
Миграция через использование командлетов PowerShell
Мы можем запускать перенос почтовых ящиков через модуль Exchange для PowerShell.
Давайте перенесем наши оставшиеся почтовые ящики именно через PowerShell. Что нам нужно сделать:
1. Запустить модуль Exchange Management Shell на одном из серверов Exchange 2016.
2. В наших почтовых базах, которые расположены на серверах Exchange 2010 остались следующие почтовые ящики:
3. Для создания запросов на перенос этих почтовых ящиков выполним следующие командлеты:
Get-MailboxDatabase DB02 | Get-Mailbox | New-MoveRequest -TargetDatabase DB03
Get-MailboxDatabase DB01 | Get-Mailbox | New-MoveRequest -TargetDatabase DB04
4. Отслеживать статус и текущий процент завершения переноса почтовых ящиков можно следующим командлетом:
Get-MoveRequest | Get-MoveRequestStatistics
После успешного завершения миграции все запросы на перенос должны иметь статус “Completed”:
Перенос почтовых ящиков завершен.
Заключение
Мы рассмотрели заключительные шаги по переносу основной части рабочей нагрузки с Exchange 2010 на 2016 – почтовых ящиков. Предварительно мы выполнили переключение потока входящей и исходящей почты организации на сервера Exchange 2016.
Перенос почтовых ящиков мы можем выполнять как через графический интерфейс администрирования, так и через Exchange Management Shell.
Последний шаг, который на остается выполнить с серверами Exchange 2010 – это вывести их из эксплуатации. Чем мы и займемся в следующей публикации.