Популярность технологии виртуализации серверов растет, и специалисты в области IT начинают понимать, что перенос части ресурсов компании в виртуализированную инфраструктуру — только полдела. Этими ресурсами нужно управлять, но вся беда в том, что обслуживание виртуализированных серверов и администрирование физических серверов — не одно и то же. Физический сервер и, возможно, операционная система, в которой устанавливаются виртуальные машины, обеспечивают один-два дополнительных программных уровня между этими машинами (VM) и реальным миром. Мы можем создавать, модифицировать и удалять виртуальные машины со скоростью, немыслимой при работе с физическими серверами, однако традиционные наборы инструментов не приспособлены для обслуживания этого дополнительного слоя.
Для управления виртуальной инфраструктурой специалисты Microsoft создали диспетчер System Center Virtual Machine Manager (SCVMM); это компонент разработанного корпорацией семейства продуктов System Center. SCVMM 2008 представляет собой усовершенствованную версию исходного продукта; он был создан для интеграции с System Center Operations Manager (SCOM) 2007 SP1, и те, которые уже используют SCOM, могут испытать новые возможности SCVMM при оптимизации виртуальных ресурсов.
А стоит ли устанавливать SCVMM 2008 тем, которые уже установили роль Hyper-V в системе Windows Server 2008 и работают с диспетчером Hyper-V Manager. Hyper-V Manager представляет простой интерфейс, позволяющий управлять конфигурацией виртуальных машин; при этом машины настраиваются одна за другой. Администратор может создать виртуальную машину, изменить ее настройки, сделать моментальный снимок машины, экспортировать, импортировать ее, остановить ее работу и удалить машину. SCVMM дает возможность выполнять все перечисленные и многие другие операции.
Функциональные возможности SCVMM 2008
SCVMM — это решение, обеспечивающее все аспекты управления виртуальной инфраструктурой. К числу новых инструментов SCVMM 2008 относятся средства интеграции с Hyper-V, оптимизации производительности и ресурсов Performance and Resource Optimization (PRO), а также функция интеграции с SCOM, средства поддержки VMware ESX Server, новая роль делегирования администрирования и функция поддержки кластеров.
Функция интеграции с Hyper-V. Одна из примечательных возможностей SCVMM 2008 — функция интеграции с Hyper-V. Hyper-V представляет собой разработанную корпорацией Microsoft технологию виртуализации, в которой используется гипервизор — тонкий программный слой между аппаратными средствами и операционной системой, который позволяет нескольким операционным системам одновременно выполняться на одном компьютере. Hyper-V имеет 64-разрядную архитектуру (а значит, поддерживает 64-разрядные виртуальные машины), обеспечивает функционирование многопроцессорных виртуальных машин, а также виртуальные коммутируемые сети; иначе говоря, это большой шаг вперед по сравнению с системой Microsoft Virtual Server 2005. SCVMM версии 2008 позволяет управлять всеми аспектами работы хост-систем Hyper-V, а также виртуальных машин.
PRO и SCOM. В пакете PRO диспетчера SCVMM 2008 имеется полезная функция, обеспечивающая балансировку нагрузок виртуальных машин на нескольких серверах. Средства PRO тесно интегрированы с диспетчером SCOM и могут функционировать только при наличии последнего. Агенты SCOM должны быть установлены на всех главных и виртуальных машинах; кроме того, должны быть установлены все пакеты управления SCVMM 2008 и PRO. После установки и настройки PRO диспетчер SCOM будет передавать тревожные сообщения диспетчеру SCVMM 2008. В консоли SCVMM появляется «подсказка» PRO с рекомендацией по решению проблемы. Администратор должен либо вручную дать санкцию на исполнение действий с тем, чтобы средства оптимизации PRO реализовали ее, либо настроить режим автоматического санкционирования, в котором средства PRO будут действовать по своему усмотрению.
Широко известна следующая проблема, связанная с управлением ресурсами: виртуальная машина испытывает недостаток в ресурсах вследствие перегрузки главной машины. SCOM выявляет факт перегрузки, передает данные диспетчеру SCVMM 2008 и генерирует подсказку PRO с рекомендацией переместить виртуальную машину на другую физическую систему. Средства PRO функционируют только на отказоустойчивых кластерах Server 2008. Главная машина, на которую целесообразно переключить нагрузку, определяется с помощью функции Intelligent Placement, впервые реализованной в предыдущей версии SCVMM. При включении режима автоматического санкционирования уровень автоматизации устанавливается на отметке Critical Only; это означает, что автоматически реализуются лишь те рекомендации PRO, которые ассоциируются с угрозами самого высокого уровня. В ситуации с кластером эта настройка дает возможность управлять им автоматически.
Надо сказать, что функции PRO имеют средства управления VMware ESX Server, реализованные в SCVMM 2008. Так, администратор может определить политику в PRO, инициирующую миграцию виртуальной машины VMotion. Однако благодаря интеграции с диспетчером SCOM, средства оптимизации PRO не ограничиваются переносом активно используемой виртуальной машины на другую физическую систему. Эти средства «понимают», что происходит на всех уровнях стека Windows VM — в главном компьютере, в виртуальной машине, а также на уровне приложений, выполняемых на данной системе.
ИТ-специалисты иногда упускают из виду, что в конечном итоге значение имеет не инфраструктура, а приложения и их состояние. Благодаря реализованному в PRO целостному подходу к виртуальной среде мы можем определять политики и правила, выполняющие те или иные действия на главной машине (такие, как увеличение времени процессора для виртуальной машины) не потому, что отмечается высокий коэффициент использования виртуальной машины, а потому, что того требует приложение.
Помимо прочего, средства PRO обладают возможностью расширения. Поэтому Microsoft в сотрудничестве со своими партнерами, специализирующимися на производстве аппаратных и программных компонентов, работает над тем, чтобы сделать подсказки PRO «интеллектуальными», то есть добиться того, чтобы они учитывали особенности выполняемого приложения, а также аппаратной конфигурации. Практические сведения о настройке SCVMM для последующего взаимодействия с диспетчером SCOM, а затем и со средствами PRO можно найти по адресу blogs.technet.com/m2.
Поддержка VMware ESX Server. Теперь благодаря интеграции с VirtualCenter диспетчер SCVMM 2008 может управлять серверами VirtualCenter. Это означает, что SCVMM 2008 может обеспечивать управление такими замечательными возможностями VirtualCenter, как VMotion, а также применять к виртуальным машинам VMware свои средства, например Intelligent Placement и PRO. Intelligent Placement — это функция, реализованная как в SCVMM 2007, так и в SCVMM 2008. Она обеспечивает правильный выбор физической системы по заданному администратором критерию рабочей нагрузки для виртуальной машины и избавляет администратора от необходимости выбирать «по наитию» физическую систему из имеющихся, а затем создавать виртуальную машину в надежде, что она сможет в этой системе функционировать. Для примера поясню, что реализованные в SCVMM 2008 средства управления ESX действуют через средства управления самого VirtualCenter и не управляют системами ESX напрямую. Объясняется это тем, что интерфейсы API для управления ESX доступны лишь через VirtualCenter. Поэтому наличие VirtualCenter Server является необходимой предпосылкой для управления физическими системами и виртуальными машинами VMware.
Делегирование администрирования. Делегирование администрирования — это новая роль, предназначенная для управления физическими системами и виртуальными машинами в SCVMM 2008. Администратор с данной ролью может выполнять все задачи полноправного администратора, но только применительно к подмножеству объектов. Такой режим работы полезен в случаях, когда требуется выполнять административные функции на некоторых, но не на всех физических системах, управляемых диспетчером SCVMM. Эта роль наделена более широкими административными правами, чем пользовательская роль самообслуживания. Последней можно управлять в соответствии с типами функций, которые применяются к каждой виртуальной машине по отдельности, тогда как делегированный администратор располагает всеми правами на заданный набор физических серверов и библиотек. К примеру, можно делегировать административные права на управление физическими системами и библиотеками в том или ином регионе.
Поддержка кластеров. В диспетчере SCVMM 2008 также реализованы средства взаимодействия с отказоустойчивыми кластерами Windows Server 2008 для Hyper-V. Поэтому диспетчер SCVMM 2008 пригоден для работы в кластерной конфигурации при добавлении физических систем, а администратор имеет возможность получать данные о том, какие кластеры доступны с использованием службы Active Directory (AD). Располагая такими средствами взаимодействия, администраторы могут создавать виртуальные машины с высоким уровнем отказоустойчивости, способные задействовать средства оптимизации PRO в кластере Windows Server 2008.
Архитектура и реализации
С точки зрения архитектуры SCVMM 2008 состоит из пяти основных компонентов и среды PowerShell. Первый компонент — это сама служба Virtual Machine Manager (vmmservice.exe). Далее следует база данных Microsoft SQL Server для хранения сведений о конфигурации (это может быть либо SQL Server 2005, либо бесплатно распространяемая версия SQL Server 2005 Express Edition для организаций меньшего масштаба). SQL Server Express входит в состав пакета установки SCVMM 2008. Третий компонент — сетевая библиотека с материалами для совместного использования. Она содержит виртуальные жесткие диски, образы дисков ISO и хранимые виртуальные машины для использования диспетчером SCVMM. Комплект дополняется консолью администратора и порталом самообслуживания. Наряду с основными компонентами, важной составляющей сервера SCVMM является оболочка PowerShell. К тому же на каждом физическом компьютере, управляемом диспетчером SCVMM, должен быть установлен агент VMM.
Существует целый ряд вариантов сборки компонентов SCVMM 2008, но в большинстве своем они относятся к одному из трех основных типов: рабочая группа, корпоративная или уровня предприятия. В конфигурации рабочей группы все компоненты размещаются на одном сервере. Такой подход характерен для малых и средних предприятий, а также для тестовых лабораторий. В корпоративной конфигурации (она представлена на рисунке 1) каждый компонент размещается на собственном сервере; в результате повышается масштабируемость и отказоустойчивость. Конфигурация распределенного центра, представленная на рисунке 2, является расширенной версией корпоративной конфигурации. При этом системы SCVMM и SQL Server размещаются в головных офисах компании, а библиотеки и пары физических систем разбросаны по различным географическим пунктам.
Достоинства оболочки PowerShell
Для функционирования диспетчера SCVMM необходимо наличие оболочки PowerShell (это замечание справедливо и для Exchange Server 2007). В сущности SCVMM представляет собой мощный генератор сценариев PowerShell. Эта архитектура несовершенна — к примеру, она, пожалуй, не обеспечивает такого уровня быстродействия, как вызовы API на языках более низкого уровня. Однако ее отличает беспрецедентная универсальность. Каждое действие SCVMM генерирует и выполняет сценарий PowerShell. В сводном диалоговом окне каждого мастера имеется кнопка PowerShell, которая позволяет администратору просматривать (и копировать) готовый к выполнению сценарий. Администратор может модифицировать сценарий по своему усмотрению, что избавляет его от необходимости вновь обращаться к услугам мастера. Дополнительное преимущество при этом состоит в том, что каждый мастер обучает пользователя работе с PowerShell с помощью проверенного метода обучения программистов: изменения кода, написанного кем-то другим.
Еще одно достоинство архитектуры, построенной вокруг оболочки PowerShell, проявляется в работе диспетчера SCVMM, который ориентирован на выполнение заданий. Когда администратор осуществляет какие-либо действия, выполняется определенный сценарий, после чего, как показано на экране, выполнение сценария отслеживается и регистрируется в представлении Jobs консоли VMM как выполненное задание. Если задание завершается с ошибкой, его можно выполнить повторно.
Установка
Если вы только что приступили к работе с диспетчером SCVMM, одна из ваших основных задач будет состоять в создании библиотеки диспетчера, то есть каталога ресурсов, используемых для создания виртуальных машин. Эти ресурсы подразделяются на три категории: ресурсы на базе файлов, шаблоны и хранимые виртуальные машины. Ресурсы на базе файлов — это основной тип ресурсов библиотеки. К ним относятся образы DVD и компакт-дисков в формате ISO, которые можно присоединять для создания виртуальных машин вместо физического диска; существующие виртуальные жесткие диски Virtual Hard Disks (VHDs), которые обрабатывались sysprepp с целью создания новых экземпляров этих дисков; сценарии PowerShell, а также виртуальные дискеты для загрузки некоторых операционных систем. SCVMM может автоматически создавать с помощью sysprep виртуальный жесткий диск библиотеки из существующей виртуальной машины. Второй тип ресурсов библиотеки — это шаблоны, которые содержат профили аппаратных средств и профили гостевых операционных систем. Эти ресурсы позволяют создавать стандартизированные наборы аппаратных конфигураций (размер памяти, тип процессора, виртуальный DVD или компакт-диск с присоединенным образом диска в формате ISO) и конфигураций операционных систем (версия операционной системы, лицензионный ключ) с целью оперативного создания новой виртуальной машины. Третий тип ресурса в библиотеке — это готовые виртуальные машины, которые можно оперативно развернуть на главном сервере.
Установка SCVMM 2008 не вызывает особых затруднений, особенно если сравнивать ее с процедурой установки версии 2007. В предыдущей версии проверки наличия необходимых компонентов осуществляются на протяжении всего процесса установки, и если чего-то не хватает, приходится возвращаться в исходную точку процедуры установки, добавлять нужный компонент и начинать все с начала. Что же касается версии SCVMM 2008, то программа установки выполняет проверку наличия необходимых аппаратных и программных компонентов в самом начале процесса установки. Кроме того, новый формат мастера позволяет администратору ориентироваться, на какой стадии процесса он находится в данный момент.
Для установки SCVMM необходим SQL Server, но если число систем, подлежащих управлению, в сети невелико, можно обойтись версией SQL Server Express, которая входит в комплект поставки. Кроме того, если планируется устанавливать консоль администратора на систему, отличную от VMM, вам понадобится Microsoft.NET Framework 3.0 и комплект Windows Automated Installation Kit (WAIK), а также оболочка PowerShell. Соединение с сервером VMM осуществляется через порт 8100, соединения с агентами для главных серверов и серверов библиотек — через порт 80, а передача файлов (скажем, для формирования виртуальных машин с виртуальных жестких дисков библиотек) выполняется через порт 443.
Установка SCVMM 2008 на версии сервера Server Core не допускается. Это ограничение логично, поскольку некоторые функции SCVMM (такие, как PowerShell, богатый пользовательский интерфейс) на базовой версии сервера не выполняются. Однако Server Core включает самую защищенную реализацию технологии Hyper-V; это означает, что выполнение диспетчера SCVMM на надежно защищенном главном сервере или в кластере Hyper-V не допускается. Обратите внимание: управление физическими машинами или кластерами Server Core, тем не менее, возможно. Этот недостаток, как мне кажется, не является существенным для больших компаний, в которых все компоненты SCVMM размещаются на отдельных серверах, но это обстоятельство имеет большое значение для сетей предприятий малого и среднего бизнеса.
Настройка
Консоль администратора SCVMM оснащается пользовательским интерфейсом System Center Framework, напоминающим интерфейс Microsoft Outlook: категории размещаются в левой панели, детали — в середине экрана, а применимые действия, — на панели справа, как показано на экране 1. Левая панель разделена на две части: в верхней отображается древообразная структура, а в нижней — основные представления SCVMM. Назовем эти главные представления SCVMM: Hosts, Virtual Machines, Library, Jobs и Administration. На средней панели отображаются главным образом объекты, соответствующие представлению, которое выбрано на панели структуры. Верхнее окно может содержать список главных машин, виртуальных машин, файлов библиотек, заданий или административных параметров. Нижнее окно содержит свойства объекта, выбранного в верхнем окне. Так, на экране 1 в нижнем окне отображается ход выполнения отдельных шагов задания Create virtual machine, выбранного в верхнем окне. На правой панели — панели действий — отображается перечень действий, которые можно выполнять применительно к выделенному объекту. Он содержит все действия, соответствующие пунктам контекстного меню, которое вызывается щелчком правой кнопкой мыши, а также действия общего характера, которые можно выполнить в любое время.
Если вы возьметесь за создание новой виртуальной машины из среды Hyper-V или из программы SCVMM 2008, то, прежде всего, заметите, что в сеансе консоли виртуальной машины мышь не работает. Чтобы мышь работала, а консоль была полнофункциональной, необходимо установить на виртуальной машине службу Integration Services Server 2008 Hyper-V. В первоначальной версии Hyper-V компонент Server 2008 поставлялся с уже установленной службой Integration Services, но более поздние версии Hyper-V несовместимы с ней. Поэтому при установке Integration Services приходится управлять виртуальной машиной без мыши.
Если для регистрации на консоли VMM вы пользуетесь программой Remote Desktop (а не устанавливаете консоль на своей локальной системе), то наверняка знаете, что это еще более сложный процесс, не совсем похожий на тот, с которым вы имели дело раньше. Можно подумать, что если удалить средства управления на виртуальной машине и подключиться к ней с помощью Remote Desktop, проблема будет решена, но это не так. Без установки службы Integration Services виртуальная машина не имеет функционирующего сетевого адаптера и, следовательно, не может управляться дистанционно. Однако вы можете создать подготовленный sysprep образ с предустановленной службой Integration Services и затем сохранить его в библиотеке в виде виртуального жесткого диска, откуда будут создаваться новые виртуальные машины. В этом случае мышь будет функционировать на виртуальных машинах с самого начала. О том, как действовать без мыши, рассказывается в блоге старшего менеджера программ группы Hyper-V Джона Говарда («Controlling Hyper-V VMs in Virtual Machine Connection over TTS/Remote Desktop without a mouse», по адресу blogs.technet.com/jhoward/archive/2008/03/23.aspx).
Специалисты Microsoft разработали диспетчер SCVMM и его административную консоль для управления физическими системами и виртуальными машинами, расположенными в одном и том же домене, в одном и том же лесу или в различных лесах, объединенных доверительными отношениями. Управлять подключенными к домену ресурсами с помощью не подключенной к домену консоли исключительно сложно, но это возможно. В блоге Джона Говарда есть советы и на этот счет, но следовать им стоит лишь в случаях крайней необходимости. Если ваши виртуальные машины расположены в нескольких лесах, я настоятельно рекомендую устанавливать между лесами доверительные отношения.
Современные виртуальные инфраструктуры
Готовить к работе виртуальные машины гораздо проще, чем физические, но когда виртуальные машины включены в производственную цепочку, они имеют множество проблем жизненного цикла, аналогичных проблемам физических серверов. К примеру, на них необходимо устанавливать модули коррекции и для них нужно осуществлять резервное копирование. Сведения об установке в виртуальных машинах модулей коррекции приведены во врезке «Средство автономного обслуживания виртуальных машин Microsoft». Диспетчер SCVMM не является «простым решением» для реализации средств управления жизненным циклом в производственных системах. Он не дает ответа на вопрос, должна ли та или иная система по-прежнему эксплуатироваться, следует выключить ее и хранить в библиотеке SCVMM, или эту систему нужно просто удалить. Деятельность администратора должна включать в себя вопросы жизненного цикла сервера — вне зависимости от того, идет речь о виртуальных серверах или о физических.
Продукт SCVMM в настоящее время находится в стадии открытого бета-тестирования, и для его получения нужно зарегистрироваться на сайте connect.microsoft.com. Предполагается, что SCVMM поступит в продажу в конце 2008 года.
Несмотря на все разговоры о виртуализации, пока что эта технология распространяется довольно медленно. Одно из важнейших препятствий на пути ее внедрения — высокая стоимость создания виртуальной инфраструктуры, пригодной для работы в производственных сетях. Бюджеты ИТ-подразделений настолько скудны, что суммарные расходы по реализации решения становятся исключительно важным фактором. Разработав такие продукты, как Windows Server 2008, Hyper-V, а также оснащенную средствами интеграции с менеджером SCOM версию SCVMM 2008, корпорация Microsoft предложила потребителям убедительный аргумент в пользу формирования современной виртуальной инфраструктуры по сходной цене.
Шон Дьюби (sdeuby@windowsitpro.com) — редактор Windows IT Pro и член группы службы каталогов в компании Intel. Имеет звание MVP; автор книги «Windows 2000 Server: Planning and Migration»
Средство автономного обсдуживания виртуальных машин Microsoft
Уникальная проблема, связанная с виртуализированной инфраструктурой, состоит в том, что необходимо обеспечить соответствие текущему моменту неиспользуемых виртуальных машин, хранящихся в библиотеке диспетчера System Center Virtual Machine Manager (SCVMM), то есть как добиться того, чтобы на этих машинах были установлены все необходимые модули коррекции. Ведь нередко бывает так, что ненужные в данный момент виртуальные машины выключаются на недели, а то и на месяцы, а значит, в течение этих периодов они не участвуют в регулярных процедурах обновления.
Корпорация Microsoft разработала утилиту, которая должна несколько упростить решение этой проблемы. Проходящая ныне бета-испытания программа Offline Virtual Machine Servicing Tool относится к категории средств Microsoft Solution Accelerator. Она интегрируется с SCVMM, PowerShell, а также с диспетчером Microsoft System Center Configuration Manager или со службой Windows Server Update Services и обеспечивает обновление неактивных виртуальных машин. Процедура осуществляется с использованием сценариев PowerShell, именуемых «заданиями на обслуживание» («servicing jobs»). Сценарии извлекают неактивную виртуальную машину из библиотеки, развертывают ее на физической системе, запускают цикл обновления программного обеспечения, а затем выключают виртуальную машину и возвращают ее в библиотеку SCVMM. Продукт функционирует, взаимодействуя с планировщиком задач, поэтому администраторы могут назначать сеансы обслуживания на часы низкой активности физических систем. Средство Offline Virtual Machine Servicing Tool находится сейчас в стадии открытого для широкой общественности бета-тестирования и доступно любому пользователю, зарегистрировавшемуся на сайте Microsoft Connect (connect.microsoft.com). Оно поддерживает только диспетчер SCVMM 2007, но в готовящейся к выпуску новейшей версии должны быть разрешены и вопросы совместимости с SCVMM 2008.