воскресенье, 26 сентября 2010 г.

Статья: Сравнение решений компаний Microsoft и VMware в области виртуализации серверной инфраструктуры

Каждый уважающий себя ресурс по виртуализации хотя бы раз в жизни должен опубликовать сравнение решений Microsoft и VMware. И поскольку VM Press наполнен сам к себе глубоким глубочайшим уважением, то я решил немного подправить свою старую статью, которую делал для знакомых, и представить ее вашему вниманию.

Введение
На сегодняшний день все больше компаний применяют различные решения по виртуализации в своей ИТ инфраструктуре. Так, например, по оценкам аналитического агенства IDC в четвертом квартале 2009 года 18.2% всех поставляемых на рынок серверов использовали те или иные решения по виртуализации. Цифры выглядят не слишком впечатляющими, если не брать в расчет тот факт, что на одном физическом сервере может размещаться, в среднем, от 5-ти до 10 виртуальных машин. Именно за счет столь впечатляющих показателей консолидации вычислительных ресурсов, многие компании рассматривают виртуализацию как основное средство повышения эффективности работы собственной ИТ инфраструктуры.

Виртуализация позволяет не только существенным образом сократить капитальные и операционные затраты на поддержку ИТ инфраструктуры компании, но также упрощает развертывание и управление бизнес-сервисами и предоставляет новые механизмы по повышению уровня доступности сервисов, гарантируя исполнение соглашения об уровне услуг (SLA).

Двумя крупнейшими игроками, предоставляющими решения по виртуализации инфраструктуры, являются компании VMware и Microsoft. Обе компании предлагают различные подходы к организации виртуальной инфраструктуры и предоставляют собственный набор фирменных технологий и решений в области виртуализации.

Ниже будут рассмотрены ключевые особенности организации виртуальной инфраструктуры на базе VMware vSphere 4.1 и Microsoft Hyper-V 2008 R2 и Microsoft System Center Virtual Machine Manager 2008 R2 и описаны преимущества каждого из решений по виртуализации.

Гипервизоры
Решения обеих компаний предоставляют схожий фукнционал в плане создания и конфигурации виртуальных машин, запуска, приостановки работы, создания моментальных снимков, удаленного подключения через служебную консоль и управления виртуальными машинами.

Компания VMware предоставляет комплексное решение по виртуализации инфраструктуры – VMware vSphere 4.1, которое включает в себя как серверы виртуализации (гипервизоры), так и инструменты управления инфраструктурой.


На выбор доступны два варианта гипервизоров – VMware ESXi или VMware ESX. Основное отличие гипервизоров заключается в наличии у VMware ESX так называемой служебной консоли (Service Console) – специализированной виртуальной машины, отвечающей за управление сервером ESX и позволяющей устанавливать программы-агенты сторонних производителей (средства мониторинга и контроля дисковых массиов, переферийного оборудования, ИБП и т.д.). VMware ESXi, в свою очередь, имеет меньший размер, что позволяет записать его, например, на flash накопитель, позволяя отказаться от размещения жестких дисков внутри сервера, снижая, тем самым, энергопотребление и тепловыделение сервера и повышая его надежность за счет уменьшения количества механических компонентов.
Отличительными особенностями гипервизоров VMware ESX/ESXi являются:
  • Поддержка большинства современных и унаследованных ОС семейств Windows, Linux или Unix.
  • Хранение и запуск виртуальных машин с локальных дисков или хранилищ (DAS), сетей хранения данных (SAN), подключающихся по протоколам Fibre Channel, iSCSI, а также сетевых хранилищ (NAS), использующих протокол NFS.
  • Поддержка кластерной файловой системе VMFS для доступа к виртуальным машинам одновременно с нескольких узлов.
  • Удаленное управление с помощью клиент VMware vSphere Client, с помощью консоли SSH, набора скриптов (RemoteCLI) или модуля расширения для PowerShell (PowerCLI).
  • Поддержка технологий управления и экономии оперативной памятью (Memory Overcommitment), позволяющих улучшить показатели консолидации инфраструктуры по сравнению с решениями конкурентов.
  • Поддержка проброса в отдельные виртуальные машины физических устройств с сервера (VMDirectPath I/O), а также устройств, подключенных по шинам USB (USB device passthrough) или COM.
  • Возможность настройки последовательности и интервала запуска виртуальных машин при старте или перезагрузке физического сервера.
  • Поддержка ˈгорячегоˈ добавления виртуальных устройств: процессоров, памяти, дисков, контроллеров и сетевых карт.
Компания Microsoft предоставляет гипервизор Hyper-V R2 в качестве одной из ролей своей ОС Windows Server 2008 R2 (Hyper-V Role), либо отдельного продукта – Hyper-V Server 2008 R2. Среди особенностей Microsoft Hyper-V 2008 R2 следует отметить:
  • Небольшой размер кода гипервизора.
  • Поддержку широкого перечня современного аппаратного обеспечения.
  • Наличие родительской виртуальной машины (Parent Partition) для управления сервером Hyper-V и распределения ресурсов другим виртуальным машинам (Child Partition).
  • Возможность размещения виртуальных машин на локальных дисках или на СХД, подключаемых по протоколам SCSI, Fibre Channel или iSCSI.
  • Управление через MMC консоль Hyper-V Manager, или с помощью средств командной строки (Powershell, CMD и т.д.).
  • Поддержку отказоустойчивых кластеров (Failover Cluster), включих до 16 узлов.
  • Поддержку переноса виртуальных машин с одного узла кластера на другой – Live Migration.
  • Интеграцию с доменной инфраструктурой на базе Active Directory.
  • Наличие встроенных средств резервного копирования и восстановления виртуальных машин с помощью Windows Server Backup.
  • Совместную интеграцию со службами Microsoft Remote Desktop Services для развертывания инфраструктуры виртуальных рабочих станций (VDI).

Централизованное управление
Для крупной ИТ инфраструктуры, насчитывающей десятки или даже сотни серверов виртуализации, работа с каждым сервером в отдельности может стать весьма утомительным и трудоемким занятием. Для решения этой проблемы VMware и Microsoft предлагают свои решения по централизованному управлению виртуальной инфраструктурой.

VMware vCenter Server позволяет:
  • Централизованно управлять серверами ESX/ESXi. Несколько серверов vCenter Server могут быть объединены в связанную группу (Linked Groups) для контроля всей виртуальной инфраструктурой из единой консоли.
  • Создавать виртуальные машины копированием из заранее настроенных шаблонов для упрощения и ускорения развертывания новых серверов.
  • Выполнять автоматическое обновление виртуальных машин, шаблонов и других компонентов виртуальной инфраструктуры с помощью VMware vCenter Update Manager.
  • Контролировать и динамически перераспределять вычислительные ресурсы серверов виртуализации (процессоры, память, диски) при помощи пулов ресурсов (Resource Pool).
  • Настраивать кластеры высокой доступности (High Availability) и управлять кластерами с распределением ресурсов (Distributed Resource Schedule).
  • Выполнять операции переноса виртуальных машин (vMotion и Storage vMotion).
  • Мигрировать при помощи VMware vCenter Converter в виртуальную среду существующие физические серверы и виртуальные серверы с других платформ.
  • Следить за состоянием гипервизоров и виртуальных машин, создавать отчеты по текущей загрузке инфраструктуры и настраивать выполнение задач по расписанию.
  • Настраивать разрешения на управление виртуальной инфраструктурой для учетных записей пользователей.
  • Создавать и настраивать распределенные виртуальные коммутаторы (Distributed vSwitches) для централизованного управления виртуальной сетевой инфраструкторой.
  • Использовать профили узлов (Hosted Profiles) для быстрого изменения настроек серверов ESX и контроля изменений в их конфигурации.
  • Подключать плагины сторонних производителей для управления виртуальной инфраструктой (системами резервного копирования, средствами конвертирования виртуальных машин, антивирусной защитой, управления СХД и т.д.).
  • Интегрироваться с VMware View и Citrix XenDesktop для создания инфраструктуры виртуальных рабочих станций (VDI).
Решение Microsoft System Center Virtual Machine Manager 2008 R2 предоставляет следующий функционал:
  • Единую консоль управление серверами виртуализации Microsoft Hyper-V и Microsoft Virtual Server 2005 и
  • Поддержку управления серверами VMware ESX/ESXi с помощью vCenter Server.
  • Поддержку развертывания виртуальных машин из шаблонов.
  • Использование библиотек (SCVMM Library) для хранения и организации централизованного доступа к ISO образам дистрибутивов, дискам и шаблонам виртуальных машин.
  • Установку актуальных обновлений для виртуальных маши, используя Offline Virtual Machine Servicing Tool.
  • Встроенные средства по миграции физических серверов (P2V) и виртуальных серверов (V2V) в инфраструктуру Hyper-V.
  • Использование портала самообслуживание для управления виртуальными машинами из Web браузера.
  • Выполнение операции Quick Storage Migration для переноса виртуальных машин между хранилищами.
  • Интеграцию с Microsoft System Center Operation Manager 2007.
  • Интеграцию с Citrix XenDesktop для создания инфраструктуры виртуальных рабочих станций (VDI).
  • Поддержку удаленного управления с помощью коммандлет PowerShell.

Технологии повышения доступности виртуальной инфраструктуры
Для повышения надежности работы и уровня доступности виртуальной инфраструктуры каждый из вендоров предоставляет набор технологий для защиты виртуальных машин.

Так, например, технологии VMware vMotion и Microsoft Live Migration обеспечивают перенос работающих машин с одного физического узла на другой в реальном времени без остановки и простоя служб. Это может быть полезно как при проведении технического обслуживание одного из серверов виртуализации, так и при постепенной замене оборудования или обновлении инфраструктуры виртуализации. Аналогично, при необходимости переноса виртуальной машины с одного диска или хранилища на другое могу быть использованы технологии VMware Storage vMotion или Microsoft Quick Storage Migration.

Для снижения времени незапланированного простоя виртуальной среды применяются решения VMware High Availability и Microsoft Failover Cluster. Все защищаемые виртуальные машины должны располагаться на общем хранилище к которому имеют доступ несколько узлов виртуализации, объединенных в кластер. Сбой или отказ одного из узлов отслеживается остальными участниками кластера, а запущенные на нем виртуальные машины автоматически регистрируются и перезапускаются на оставшихся работоспособных узлах. Использование кластеров высокой доступности позволяет уменьшить время незапланированного простоя серверов до 5-20 минут.

Серверы VMware ESX поддерживают организацию двух типов кластеров: высокодоступные кластеры (HA – High Availability) и кластеров с распределением ресурсов (DRS – Distributed Resource Schedule).

Для первоначальной настройки кластера HA, требуется, чтобы все узлы были зарегистрированы на одном сервере VMware vCenter Server, а также были подключены к общему хранилищу, на котором располагаются виртуальные машины. При отказе одного сервера, работавшие на нем виртуальные машины автоматически перезапускаются на других доступных узлах HA кластера.

Кластер DRS позволяет серверу VMware vCenter Server балансировать нагрузку, равномерно распределяя виртуальные машины между всеми узлами и, при необходимости, выполняя перенос виртуальных машин на наименее загруженные узлы.

Одной из разновидностей DRS кластера является кластер распределенного управления питанием (DPM – Distributed Power Management), позволяющий выключать часть серверов ESX при низкой загрузке на серверы, снижая тем самым энергопотребление, и включая их снова, при возникновении потребности виртуальных машин в вычислительных ресурсах.

Кроме того, VMware предоставляет уникальный механизм непрерывной защиты наиболее критических сервисов, путем запуска дополнительной копии виртуальной машины на другом узле, и синхронизации в реальном времени состояния между основной (primary) и дополнительной (secondary) копиями виртуальной машины. В случае сбоя основного сервера, все управление и запросы переходят к дополнительной виртуальной машины без простоя.

Для защиты виртуальных машин Hyper-V от незапланированного простоя используются отказоустойчивые кластеры (Failover Cluster), построенные на базе служб Microsoft Clustering Services, доступных. Для кластера требуется наличие общего дискового хранилища для размещения виртуальных машин, а также доменной инфраструктуры Active Directory.

Системая мониторинга и управления ресурсами (PRO Tips) в SCVMM 2008 R2, работающая совместно с SCOM 2007 R2, отслеживает разничные параметры виртуальной инфраструктуры: доступные вычислительные ресурсы, загрузку физических и виртуальных машин, наличие ошибок в работе различных компонентов и служб, и на основании полученных данных выдавать рекомендации по оптимальному размещению виртуальных машин на кластерах серверов Hyper-V.

Резервное копирование
Виртуальная инфраструктура меняет подход к организации резервного копирования, позволяя отказаться от классической схемы установки агентов и выполнения резервного копирования каждого сервера в отдельности. Вместо этого, доступны решения, позволяющие защищать все виртуальные машины на сервере в реальном времени.

VMware Data Recovery (VDR) позволяет осуществлять централизованное резервное копирование виртуальных машин VMware ESX на локальные диски или сетевую папку по расписанию. Преимущество VDR заключается в использовании технологии дедупликации данных, которая позволяет уменьшать размер резервной копии. VDR позволяет восстанавливать как виртуальные машины целиком, так и отдельные папки и файлы.

Microsoft DPM 2010 позволяет выполнять резервное копирование и восстановление виртуальных машин, расположенных на серверах Hyper-V, а также устанавливать агенты внутри виртуальных машин для резервирования данных приложений (баз SQL серверов, почтовых ящиков Exchange и порталов SharePoint).

Лицензирование
Оба вендора предоставляют решения как для малого и среднего бизнесы, так и для крупных компаний.
Для небольших компаний или удаленных филиалов с несколькими серверами, которым не требуется централизованное управление, доступна бесплатная версия VMware ESXi Free.

Компаниям, испытывающим необходимость в централизованном управлении виртуальной инфраструктурой, предлагаются VMware vSphere Essentials и Essentials Plus, в которые входят лицензии на три двухпроцессорных сервера и одна лицензий VMware vSphere Essentials. Дополнительно, в лицензии Essentials Plus доступны средства резервного копирования VMware Data Recovery, организации HA кластера и выполнения переноса vMotion между узлами.

Для средних и крупных компаний доступны различные типы лицензий для серверов ESX (редакции от Standard до Enterprise Plus) и vCenter Server (редакции Foundation или Standard), обеспечивающих требуемый функционал.

При выборе решений от компании Microsoft, возможно использование гипервизора входящего в состав ОС Windows Server 2008 R2 в редакциях Standard, Enterprise или Datacenter, либо поставляемого в виде отдельного бесплатного продукта Microsoft Hyper-V Server 2008 R2.

Для централизованного управления небольшой инфраструктурой Hyper-V могут применяться продукты System Center Essentials 2010 или System Center Virtual Machine Manager 2008 R2 Workgroup Edition (позволяет управлять пятью серверами виртуализации).

Для средних и крупных компаний доступен SCVMM 2008 R2 в качестве отдельного продукта, либо в составе пакетов лицензий System Center Server Management Suite Enterprise (SMSE) и Datacenter (SMSD), включающих в себя, помимо SCVMM, другие продукты линейки System Center (SCCM, SCOM, SCDPM и т.п.) и предоставляющие расширенные права на установку агентов и управление виртуальными машинами, запущенными на лицензированном сервере.

Заключение
Как видите обе компании предлагают функциональные, гибкие и надежные решения по организации и управлению виртуальной средой Вашей компании. Выбор же конкретного продукта зависит от размера организации, и, само-собой, от тех требований, которые бизнес предъявляет к современной ИТ инфраструктуре: функциональность, доступность, экономичность и простота в управлении. Чего и позволяет добиться серверная виртуализация.

четверг, 23 сентября 2010 г.

Использование функции RemoteApp for Hyper-V для работы с устаревшими приложениями

С выходом Windows Server 2008 (Terminal Services, ныне Remote Desktop Services) у пользователей появилась возможность подключаться не только к удаленному рабочем столу, но и к отдельным опубликованным приложениям (RemoteApp или т.н. Seamless Mode). Данный режим существенно облегчает работу, позволяя перенести выполнение большинства приложений на терминальный сервер прозрачно для пользователей.

Тем не менее, во многих организациях до сих пор используются различные устаревшие приложения, которые не могут выполняться на ОС Windows Server 2008 и выше, что может препятствовать переходу на новые ОС. Данную проблему можно решить различными способами, например, используя решения сторонних производителей (например, Citrix XenApp) или запуская виртуальную машину на локальной рабочей станции пользователя (Windows XP Mode или MED-V), однако есть и другой вариант.

Для клиентских ОС существует возможность публикации отдельных приложений с организацией удаленного доступа к ним по протоколу RDP (RemoteApp for Hyper-V).

Как и в классическом варианте терминального доступа в режиме RemoteApp for Hyper-V существует хост - виртуальная машина с установленными приложениями, к котором требуется обеспечить удаленный доступ и клиент - устройство, за которым работает пользователь.

Microsoft предоставляет на выбор два сценария публикации:
  • В Standalone режиме администратор создает .rdp файл, в котором указывает название приложения и имя хоста, к которому планирует подключаться один или несколько пользователь. Для каждого публикуемого приложения должен быть создан отдельный .rdp файл. Кроме того, в силу ограничений клиентских ОС, на хосте может быть активной лишь одна пользовательская сессия, иными словами, только один пользователь сможет получить доступ к опубликованным приложениям на данном хосте. Хотя данный вариант не требует установки дополнительных служб и компонентов, но может быть сложен в управлении и обслуживании при наличии большого количества хостов и публикуемых приложений.
  • VDI конфигурация предполагает развертывание полноценной инфраструктуры виртуализации рабочих станций на базе сервера виртуализации Hyper-V, Remote Desktop Session Host и Connection Broker из состава Windows Server 2008 R2. Данный вариант обеспечивает единую точку подключения ко всем публикуемым приложениям, отслеживает активные сеансы пользователей, дабы избежать одновременного подключения сразу к нескольким хостам, однако не избавляет администраторов от необходимости создавать .rdp файлы и выполнять настройку виртуальных машин.
В качестве хостовой ОС для публикации приложений поддерживаются следующие ОС:
  • Windows XP x32 Professional SP3;
  • Windows Vista x32 SP1 или выше в редакции Enterprise или Ultimate;
  • Windows 7 x32 в редакции Enterprise или Ultimate.
В Windows 7 данный функционал поддерживается по умолчанию, а для Windows XP и Windows Vista придется загрузить дополнительное обновление (отсюда и отсюда, соответственно).

В качестве клиентской ОС с которой выполняются подключения, поддерживается Windows 7 x32 или x64 (однако, в роли клиентов также могут выступать Windows XP и Windows Vista с установленным клиентом RDP Client 7.0).

Публикация приложений
В качестве примера рассмотрим вариант публикации одного или нескольких стандартных приложений из состава Windows XP.

Перед тем, как переходить к самой процедуре настройки хостовой машины, вам потребуется установить актуальную версию клиента RDP (RDP Client 7.0) для соответствующей версии ОС и обновление, включающее функционал RemoteApp for Hyper-V (ссылки приведены выше). После установки обновления на компьютер потребуется его перезагрузить.

Включите поддержку удаленных подключений по протоколу RDP, добавьте права на подключение выбранным пользователям и группам, а также проверьте настройки брандмауэра.

Откройте редактор реестра (regedit) на хостеовой машине и измените параметр fDisabledAllowList расположенный в HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\TsAppAllowList, установив его значение в 1.

Запустите клиент RDP, укажите имя хоста, к которому требуется подключиться, и сохраните файл конфигурации (.rdp), нажав Save As.

Откройте созданный файл в текстовом редакторе, найдите строчки и замените их значения на приведенные ниже:
Alternate shell:s:rdpinit.exe
RemoteApplicationMode:i:1

Добавьте в файл следующие строчки:
RemoteApplicationName:s:<ИМЯ_ПРИЛОЖЕНИЯ>
RemoteApplicationProgram:s:<ПУТЬ_К_ФАЙЛУ>
DisableRemoteAppCapsCheck:i:1
Prompt For Credentials on Client:i:1
, где <ИМЯ_ПРИЛОЖЕНИЯ> - описательное имя приложения (например, Notepad);
<ПУТЬ_К_ФАЙЛУ> - полный путь к исполняемому файлу приложения (например, "C:\Windows\System32\Notepad.exe").

Пример модифицированного файла показан на рисунке:

Сохраните файл и перенесите его на клиентский компьютер.

Теперь, когда пользователь захочет получить доступ к опубликованному приложению ему будет достаточно запустить .rdp файл и указать свои учетные данные для подключения. При необходимости публикации нескольких приложений вам потребуется создать несколько .rdp файлов, указав в каждом путь к нужному приложению.

Учтите, что если вы планируете использовать один и тот же хост для подключения нескольких пользователей поочередно, то крайне желательно настроить автоматическое завершение сеанса после отключения пользователя. Сделать это можно отредактировав групповые политики хоста (через локальные или доменные групповые политики). Интересующая Set time limit for disconnected sessions настройка находится:
Для Windows XP: Computer Configuration -> Administrative Templates -> Windows Components -> Terminal Services -> Sessions
Для Windows Vista: Computer Configuration -> Administrative Templates -> Windows Components -> Terminal Services -> Terminal Server -> Session Time Limits
Для Windows 7: Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Session Time Limits
Установите значение параметра в Enable и укажите интервал отключения через 1 минуту.

При подготовке статьи использовались следующие материалы:
  1. RemoteApp for Hyper-V (VDI) Deployment.