Введение
Потребители желают запускать свои среды Exchange на виртуальных платформах. Так обстояло дело с Exchange Server 2003, работающим на VMWare, но в компании Microsoft поддерживают виртуальные серверы Exchange со времен выхода Exchange Server 2007 (на Windows Server 2008!), работающего на платформе Hyper-V. Итак, Exchange Server 2003 работает на Virtual Server 2005 R2, но это несерьезная альтернатива на мой взгляд.
Поддерживается не только Hyper-V платформа, но и все виртуальные платформы, отвечающие требованиям программы Microsoft SVVP (Server Virtualization Validation Program) полностью поддерживаются. Для Exchange Server 2010 все роли сервера полностью поддерживаются в виртуальной среде за исключением роли Unified Messaging Role. Роль UM работает с данными в реальном времени (т.е. с голосовыми данными), что может вызывать проблемы на виртуальных платформах. Только представьте непонятные сообщения голосовой почты или странно звучащий голос.
В этой статье я попытаюсь объяснить, как запускать сервер Exchange Server 2010 на Hyper-V платформе. Рекомендации этой статьи также действительны для других виртуальных платформ, таких как VMware или Xen Server.
Разработка виртуальных серверов Virtual Exchange 2010
При разработке среды Exchange 2010 есть определенные руководства конфигурации, такие как объем памяти, мощность процессора, конфигурация диска (для роли сервера Mailbox Server Role) и соотношение между количеством серверов Exchange и контроллеров домена/серверов глобальных каталогов (или, если говорить точнее, соотношение между количеством процессоров в каждом сервере). Это все очень важные составляющие, о которых следует знать!
Одним из наиболее важных моментов является то, что вам придется использовать те же расчеты для виртуальной среды Exchange Server 2010, которыми вы пользуетесь для физической среды. Поэтому используйте тот же объем памяти, то же количество (виртуальных) процессоров, те же сетевые параметры и те же расчеты пространства для хранения. Я часто сталкивался с ситуацией, когда эти цифры занижались, что всегда ведет к снижению производительности!
Настройка виртуального диска для серверов Exchange 2010 Mailbox
Официальную политику поддержки работы сервера Exchange Server в виртуальной среде можно найти на сайте Microsoft technet. Hyper-V имеет несколько типов виртуальных дисков (Virtual Hard Disks - VHD):
-
Динамический диск (Dynamic Disk);
-
Фиксированный диск (Fixed Disk);
-
Дифференциальный диск (Differential Disk);
-
Транзитный диск (Pass-through disk).
Динамический диск (Dynamic Disk) представляет собой .VHD файл, который вначале представляет собой небольшой файл (около 2 МБ) на несущем сервере, а при необходимости его размер увеличивается. Это вызывает определенные трудности, которые являются достаточной причиной для того, чтобы не поддерживать его в виртуальных серверах Exchange. Пожалуйста, обратите внимание, что динамические диски отлично работают, они просто не поддерживаются официально!
Фиксированный диск (Fixed Disk) также представляет собой .VHD файл, работающий на несущем сервере (Host Server), но этот файл имеет предопределенный неизменный размер. Если вы укажите размер 250 ГБ для фиксированного диска, программа создаст .VHD файл размером в 250 ГБ на момент создания. Он не вызывает перегрузок автоматического увеличения размера и полностью поддерживается в виртуальных серверах Exchange.
Дифференциальный диск (Differential Disk), по сути, состоит из двух виртуальных дисков. Один родительский диск с разрешением только чтения (read-only) и небольшой дочерний диск с разрешениями чтения и записи (read/write), на котором сохраняются все изменения виртуальной машины. У вас может быть один родительский диск в сочетании с несколькими дочерними дисками. Дифференциальные диски также не поддерживаются для работы на виртуальных серверах Exchange.
В вышеуказанном списке не упомянуты снимки (snapshots). Снимки, по своей сути, являются реализацией дифференциальных дисков. По умолчанию, снимки хранятся на системном диске (System Disk) (C:\Hyper-V), если это не изменено. Если не знать об этом, есть риск того, что системный диск (System Disk) заполнится снимком, что приведет к отказу работы несущего сервера. Снимки также не поддерживаются в виртуальных средах Exchange.
Транзитный диск на самом деле не является виртуальным диском, это физический диск, установленный для несущего компьютера (Host Computer). Это может быть физический жесткий диск, а может быть и LUN на устройстве хранения. Не важно, будет это iSCSI решение хранения или решение оптоволоконных каналов. Физический диск не настраивается в качестве .VHD файла на виртуальной машине, он крепится к виртуальному SCSI контроллеру виртуальной машины.
Чтобы прикрепить физический диск к виртуальному контроллеру SCSI, диск должен находиться в автономном режиме на несущем компьютере. Если диск не находится в автономном режиме, вы не сможете добавить его к контроллеру SCSI и опция 'Physical hard disk' на контроллере SCSI будет неактивна.
Еще одним моментом, который следует помнить, является то, что создание снимка транзитного диска невозможно (это не поддерживается в производственной среде), если вы попытаетесь создать снимок, вы получите ошибку:
На мой взгляд, транзитные диски являются лучшим решением для работы серверов Exchange на платформе Hyper-V, поскольку они не вызывают никаких перегрузок дисков.
Но как это работает? Конечно, все зависит от самого решения хранения, но при тестировании с iSCSI решением от компании Hitachi Data Systems (HDS 2100) с выделенными дисками под сервер Exchange 2010 Server, прикрепленными в качестве транзитных дисков к виртуальному контроллеру SCSI, система работает, как физическая машина. Потрясающе'.
Примечание: Есть отличная статья о работе Jetstress на веб сайте MSExchange.org, написанная автором MSExchange.org Руй Сильва (Rui Silva). Читайте ее здесь.
Обзор о задании размеров для Exchange 2010 Hub Transport Server читайте в следующей статье: Understanding Server Role Ratios and Exchange Performance. Обзор о задании размеров для Exchange 2010 Client Access Server читайте в следующей статье: Sizing Client Access Servers.
Настройка сети
Особое внимание нужно уделять сетевым параметрам вашего несущего сервера. Если вы используете iSCSI решение, убедитесь, что сеть избыточна и что вы можете использовать multipath I/O для массива хранения. При возможности используйте 10Gbe решение для получения максимальной производительности.
Для публичной сети, т.е. сети, используемой клиентами для подключения к виртуальным машинам, используйте как можно больше сетевых карт, чтобы предотвратить перегрузки в вашей сетевой конфигурации. Не забудьте выделить специальный сетевой интерфейс вашего несущего сервера для целей управления.
Кластеры и репликация Exchange
Чтобы создать решение высокой доступности (High Available) с помощью Hyper-V, есть два варианта:
-
Кластеры узлов (Host Clustering) ' два или более несущих сервера Hyper-V настраиваются в кластере обхода отказа (failover cluster), а виртуальная машина настраивается в качестве ресурса кластера (Cluster Resource). Когда узел кластера дает сбой (Cluster Node) или его нужно вывести в автономный режим для обслуживания, ресурс кластера перемещается на другой узел кластера. Но когда сервер Exchange, работающий на виртуальной машине, дает сбой, ничего не произойдет, обход отказа нерабочего сервера Exchange приведет к переводу нерабочего сервера на другой узел кластера.
-
Кластеры гостевых систем (Guest Clustering) ' две виртуальные машины под управлением Exchange Server настраиваются в кластер, будь то кластер в Exchange Server 2007 или группа DAG в Exchange Server 2010. Когда что-то происходит с виртуальной машиной, на которой работает определенный несущий сервер, другая виртуальная машина перехватывает на себя ее функцию.
В Hyper-V R1 кластерная технология обхода отказа доступна в традиционной форме: когда происходит ситуация обхода отказа, ресурс кластера (сервер Exchange!) выводится в автономный режим, перемещается на другой узел кластера и снова выводится в режим онлайн. В компании Microsoft это называют быстрой миграцией ('Quick Migration'). В зависимости от объема памяти этот процесс может занимать до нескольких минут, что может быть неприемлемо в производственной среде.
В Hyper-V R2 технология кластеров была усовершенствована с реализацией томов Cluster Shared Volumes (CSV), где оба узла кластера имеют доступ к общему хранилищу одновременно. Кластер CSV предлагает кластер миграции в режиме реального времени ('Live Migration'). Используя Live Migration, работающая виртуальная машина будет скопирована с узла кластера на другой узел без простоя виртуальной машины. Пожалуйста, обратите внимание, что сама технология Live Migration, также может занимать до нескольких минут в зависимости от конфигурации виртуальной машины.
Когда дело доходит до работы серверов Exchange в кластерной среде, особенно при использовании решения Live Migration, вы не можете сочетать репликацию серверов Exchange (CCR или DAG) с кластерами CSV Clusters. Вам нужно либо использовать CCR или DAG, работающие вне кластера Hyper-V Cluster, либо использовать один сервер Exchange в кластере Hyper-V. Работа CCR или DAG в кластере Live Migration не поддерживается!
Это действительно не только для Hyper-V, но и для VMWare VMotion.
Но как это работает!? Недавно мы установили сервер Exchange 2010 Mailbox Server для клиента на платформе кластера CSV. 750 почтовых ящиков, интенсивное использование, 3 базы почтовых ящиков примерно по 150 ГБ каждая, хранящихся на NetApp iSCSI решении и работающих без проблем. Поразительно'