Exchange 2013: первый переезд с 2010 и подводные камни coexistence
Exchange 2013 убрал CAS-массивы и переосмыслил архитектуру. Первая реальная миграция с 2010 показала, что coexistence-период - это отдельная история с сертификатами и Autodiscover.
Exchange Server 2013 вышел в GA в декабре 2012 и пошёл в первые реальные проекты в начале 2013 года
Exchange 2013 стал доступен в декабре, и мы сразу взяли его в работу - не в тестовой среде, а на живом проекте. Клиент на сопровождении давно хотел обновить почтовую систему, и раз уж новая версия вышла, разговор случился быстро. Задача выглядела знакомо: перенести несколько сотен ящиков с Exchange 2010, сохранить всё что работает, не устраивать простоев. На деле оказалось, что Exchange 2013 принёс достаточно архитектурных изменений, чтобы то и дело удивляться.
Архитектура без CAS-массивов - сначала непривычно
В Exchange 2010 была чёткая трёхслойная схема: Mailbox серверы, CAS-массив снаружи, Hub Transport между ними. Для отказоустойчивости строили CAS Array с балансировщиком, разворачивали DAG для баз, всё это настраивали отдельно. Картина была громоздкой, но понятной.
Exchange 2013 убрал роль Hub Transport и свернул CAS в один уровень с Mailbox. Теперь только два типа серверов: Mailbox (туда переехала и транспортная логика) и Client Access Server - но CAS в 2013 уже прокси-слой без собственного хранилища, он только маршрутизирует запросы на Mailbox. CAS-массив как отдельная сущность исчез.
Первая реакция - лёгкое замешательство. Куда делись настройки Send Connector, которые раньше жили на Hub? Почему OWA настраивается на CAS, а аутентификация частично живёт на Mailbox? Потребовалось несколько часов с документацией, прежде чем картинка сложилась. Microsoft сделала архитектуру проще для конечного результата, но объяснение через призму Exchange 2010 только мешает - надо читать заново.
Coexistence: вот где начинается настоящее
Параллельная работа двух версий Exchange - это штатный сценарий миграции. Microsoft его описывает, инструкции есть. Но между «описан» и «прошло гладко» - дистанция.
Первая проблема вылезла с Autodiscover. В 2010 Autodiscover работал через SCP в Active Directory и внешний DNS-запись. В смешанной среде клиент Outlook должен правильно определить, на каком сервере лежит его ящик, и подключиться туда. Exchange 2013 проксирует запросы к 2010, если ящик ещё не перенесён, - это работает, но только если Autodiscover-запрос пришёл именно на 2013. Если Outlook кэшировал старый CAS 2010, часть клиентов начинает вести себя странно после того как ящик переехал: подключается, но OWA не открывается, или Outlook долго не обновляет профиль.
Решение оказалось некрасивым: пришлось явно прописать Autodiscover через Internal URL на 2013, убедиться что SCP в AD указывает туда же, и перезапустить Outlook-клиентам профили. Не катастрофа, но несколько часов потеряли на диагностику.
Вторая проблема - сертификаты. Exchange 2013 использует Subject Alternative Names: один сертификат покрывает mail.domain.ru, autodiscover.domain.ru и несколько внутренних имён. При coexistence нужно чтобы оба сервера - 2010 и 2013 - принимали запросы по правильным именам. Старый сертификат на 2010 был выписан на CAS Array, и в нём не было части SAN, нужных для нового сервера. Потребовался перевыпуск.
Это само по себе не сложно, только перевыпуск сертификата на Exchange 2010 в момент, когда часть пользователей уже сидит на 2013, требует аккуратности с окнами - несколько минут недоступности SMTP и OWA при привязке нового cert. Мы это сделали в нерабочие часы, прошло без жалоб, но заранее предупредили клиента.
Что реально понравилось
После всей этой возни с coexistence сами Mailbox-роли на 2013 работают приятно. DAG настраивается привычно, репликация баз - то же что в 2010, здесь сюрпризов не было. OWA заметно посвежел: полноэкранный режим, нормальная работа в Chrome и Firefox без танцев с бубном. В 2010 браузеры, отличные от IE, всегда давали поводы для мелких жалоб.
Powershell-командлеты поменялись, но незначительно - большинство скриптов, которые мы использовали для отчётов и массовых операций, заработали с минимальной правкой.
Итог на текущий момент
Миграция завершена, все ящики переехали, Exchange 2010 отключён. Но честно: если бы мы знали заранее о проблемах с Autodiscover в coexistence, заложили бы в план на день больше.
Следующий клиент, которому планируем предложить переход на 2013, - уже с Exchange 2007. Там архитектурная разница ещё больше, и мы рассчитываем на более длинный coexistence-период. Посмотрим, какие новые сюрпризы приготовит Microsoft.
- Exchange 2007: 64-бит как точка отсчёта - планируем миграцию заранее · 17 октября 2006