Windows Server 2008 — новая серверная операционная система

Часть 8. Механизмы виртуализации в Windo

Алексей Федоров

Виртуализация: основные понятия

Виртуализация: ключевые сценарии

Виртуализация: технические подробности

Установка и управление виртуализацией

Заключение

 

Одна из главных новинок в Microsoft Windows Server 2008 — это поддержка механизмов виртуализации (Windows Server virtualization, WSv), которые позволяют максимально эффективно использовать имеющиеся в компаниях аппаратные ресурсы, обеспечивают бесперебойную работу ключевых сервисов и бизнес-приложений, а также поддерживают среды, в которых могут работать приложения, написанные для предыдущих версий операционных систем (legacy applications), и среды, позволяющие эмулировать разные программные и аппаратные компоненты для разработки и тестирования широкого класса бизнес-приложений, сервисов и различных утилит.

В данном обзоре мы рассмотрим основные понятия, связанные с виртуализацией, обсудим ключевые сценарии использования WSv, а также остановимся на ряде технических подробностей (включая архитектуру механизмов виртуализации) и рассмотрим основные моменты, связанные с установкой и управлением механизмами виртуализации и их компонентами — виртуальными машинами, виртуальными дисками и виртуальными сетями (рис. 1).

 

Рис. 1. Виртуализация в Windows Server 2008

Виртуализация: основные понятия

Windows Server virtualization (WSv) — это построенная на базе гипервизора виртуализационная платформа, которая в виде отдельной серверной роли функционирует под управлением 64-разрядной версии Windows Server 2008. Рассмотрим основные характеристики платформы виртуализации в Windows Server 2008:

  • наличие гипервизора — программного компонента, который представляет собой тонкий слой кода, оптимизированного для обеспечения максимальной производительности и надежности и выполняемого между операционной системой и аппаратной платформой. Использование гипервизора предоставляет более эффективный доступ к аппаратным ресурсам любой гостевой операционной системы, выполняемой на платформе виртуализации. Максимально упрощенный доступ к ресурсам обеспечивает создание гораздо более высокопроизводительных решений — как для гостевых операционных систем семейства Windows, так и для систем других производителей;
  • поддержка стандартов — таких как Windows Management Instrumentation (WMI). На уровне платформы полностью поддерживаются программные интерфейсы, которые могут быть использованы сторонними организациями для создания собственных механизмов управления платформой и расширения уже существующих. Многие аспекты виртуализации в Windows Server 2008 могут управляться средствами Windows PowerShell;
  • применение 64-разрядной версии Windows Server 2008 — виртуализация в Windows Server 2008 недоступна для 32-разрядных изданий сервера — она поддерживается только на 64-разрядной платформе. Это позволяет существенно увеличить производительность и масштабируемость виртуальных решений, особенно тех, которым требуются большие объемы памяти;
  • использование аппаратной виртуализации — требуется наличие аппаратной поддержки виртуализации на уровне центрального процессора, которая в настоящий момент реализована в ряде моделей процессоров AMD и Intel. Отметим, что даже при наличии в системе процессора с аппаратной поддержкой виртуализации в большинстве систем эта функциональность должна быть активирована на уровне BIOS;
  • поддержка механизмов DEP — требуется наличие аппаратной поддержки механизмов защиты от выполнения данных (Data Execution Protection, DEP) на уровне центрального процессора. Механизм DEP обеспечивает защиту от вредоносного программного обеспечения за счет того, что запрещает выполнение кода в тех областях памяти, где не предполагается нахождение выполняемого кода. На платформе Intel механизм DEP называется «бит XD (XD Bit)», на платформе AMD — «бит NX (NX Bit)». Большинство процессоров с аппаратной поддержкой виртуализации обеспечивают также аппаратную поддержку механизмов защиты от выполнения данных. Более подробно о защите приложений в Windows Vista и Windows Server 2008 см. в статье «Технологии защиты приложений в Windows Vista и Windows Server 2008» (КомпьютерПресс № 7’2007).

Виртуализация: ключевые сценарии

Виртуализационная платформа в Windows Server 2008 создавалась в первую очередь для реализации четырех ключевых сценариев: консолидация серверов, обеспечение надежной работы, динамические центры обработки данных и поддержка разработки и отладки приложений.

 

Консолидация серверов

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

 

Обеспечение надежной работы

Обеспечение надежной работы — это сценарий, в котором функционирование бизнеса продолжается даже после того, как центр обработки данных получил серьезные физические повреждения. Использование Windows Server 2008 и поддерживаемой в нем виртуализационной платформы является ключевым для обеспечения беспрерывной работы основных бизнес-функций. Виртуальные машины, поддерживаемые в данной виртуализационной платформе, обладают высокой переносимостью; платформы, не зависящие от каких-либо специфичных аппаратных конфигураций, могут переноситься с одного центра обработки данных на другой, а при совместном использовании с механизмами быстрой миграции, «живой» миграции или отказоустойчивых кластеров, виртуальные машины, работающие под Windows Server virtualization, могут быть переведены на другой сервер практически без перерывов в работе сервисов.

 

Динамический центр обработки данных

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

 

Разработка и отладка приложений

За счет возможности создания различных серверных конфигураций без приобретения дорогостоящих аппаратных средств и выполнения специфических настроек администраторы могут легко поддерживать среду для разработки и отладки приложений. В случае применения System Center Virtual Machine Manager виртуализация в Windows Server 2008 позволяет создавать виртуальные машины «по требованию», которые отвечают большинству требований, связанных с разработкой и тестированием широкого класса приложений и сервисов.

Виртуализация: технические подробности

Рассмотрим устройство механизмов виртуализации в Windows Server 2008 более подробно. Может показаться, что Windows Server virtualization похожа на предыдущую платформу — Microsoft Virtual Server, но на самом деле это два принципиально разных продукта. В WSv поддерживаются ключевые операции, знакомые администраторам по предыдущим реализациям серверной виртуализации, — создание и управление виртуальными машинами, работа с виртуальными жесткими дисками (VHD), установка расширений и дополнений к виртуальным машинам, а также работа с виртуальными сетями. Но, несмотря на схожесть в базовом наборе функциональных возможностей, реализация этой функциональности в WSv существенно отличается от предыдущих. Далее мы рассмотрим архитектуру виртуализации в Windows Server 2008.

Как мы уже знаем, виртуализация в WSv 2008 реализована на основе гипервизора. Этот программный компонент выполняет функции, которые ранее были реализованы в программных компонентах, отвечающих за управление виртуальными машинами. Гипервизор не требует использования каких-либо драйверов и работает на процессорах с аппаратной поддержкой виртуализации — таких как AMD-V и Intel VT (рис. 2).

 

Рис. 2. Архитектура Windows Server 2008 virtualization

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

В механизмах виртуализации Windows Server 2008 используется так называемый микроядерный гипервизор (microkernelized hypervisor), который не содержит драйверов и полагается на драйверы, установленные в родительском разделе (операционной системе, выполняющей хостинг виртуализационных механизмов) для доступа к различным аппаратным ресурсам. Сам же гипервизор обеспечивает доступ к таким ресурсам, как процессор и память. Подобная модель позволяет установить гипервизор на любую платформу, поддерживающую выполнение Windows Server 2008 и содержащую аппаратную поддержку механизмов виртуализации. Монолитный гипервизор представляет собой больший по объему программный компонент, который использует драйверы, установленные непосредственно в гипервизоре. Эта модель обеспечивает чуть более высокую производительность, однако ограничивает набор аппаратных платформ, на которые может быть установлен такой гипервизор, — если для какого-то аппаратного ресурса нет драйвера, специфичного для гипервизора, такой ресурс не будет доступен ни в родительской, ни в гостевой операционной системе.

Виртуализация в Windows Server 2008 управляется через Windows Management Instrumentation (WMI). Провайдеры WMI содержат объекты, позволяющие управлять различными аспектами механизмов виртуализации в сервере. Например, можно управлять настройками серверов, создавать и конфигурировать виртуальные машины, управлять запущенными виртуальными машинами. Классы, связанные с поддержкой виртуализации, доступны через пространство имен root\MSVM. С помощью провайдера WMI можно управлять механизмами виртуализации через Windows PowerShell, System Center Virtual Machine Manager, а также посредством различных утилит сторонних производителей.

Провайдер виртуализационных сервисов (virtualization service provider) работает на операционной системе, выполняющей хостинг, и обеспечивает доступ ко всем аппаратным ресурсам компьютера. Виртуальные машины, использующие гипервизор, общаются с аппаратными ресурсами через провайдера виртуализационных сервисов.

Клиент виртуализационных сервисов обеспечивает доступ виртуальных машин, работающих под управлением механизмов виртуализации, к ресурсам компьютера. Важно отметить, что виртуализованные аппаратные ресурсы — это не то же самое, что эмулированные ресурсы. В предыдущих версиях продуктов для виртуализации, таких как Microsoft Virtual Server и Microsoft Virtual PC, обеспечивалась эмуляция аппаратных ресурсов для поддержки совместимости с максимальным числом дочерних операционных систем. Эта модель требует, чтобы все запросы к аппаратным ресурсам выполнялись и через драйвер эмуляции дочерней операционной системы, и через обычный драйвер хостинговой операционной системы, что приводит к серьезным ограничениям в производительности дочерних операционных систем. В механизмах виртуализации Windows Server 2008 поддерживаются «синтетические» аппаратные ресурсы в виде клиента виртуализационных сервисов, обеспечивающего максимальную производительность для дочерних виртуальных машин. Это достигается за счет перенаправления аппаратных запросов непосредственно провайдеру сервисов хостинговой системы. Виртуальные машины, не поддерживающие виртуализацию на уровне гипервизора, по-прежнему используют традиционную аппаратную эмуляцию.

Установка и управление виртуализацией

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

После установки виртуализации, которая, как мы помним, является отдельной ролью в Windows Server 2008 и поэтому требует использования Server Manager, мы можем выполнить базовую проверку, которая позволит убедиться, что виртуализация установлена и работает корректно. Для этого в Server Manager, в разделе Diagnostics, выберем панель Services и убедимся в том, что сервис Virtual Machine Management Service имеет статус Started.

Поддержка виртуальных дисков (VHD) аналогична поддержке в предыдущих версиях виртуализации и базируется на файлах специального формата, которые представляют собой физический диск для виртуальной машины. Виртуальные машины могут иметь несколько виртуальных дисков, подключенных к различным типам интерфейсов — IDE, SCSI и т.п. Виртуальные диски могут иметь фиксированный или динамически изменяемый размер. В первом случае производительность дисков выше, по сравнению с динамическими дисками, но их объем ограничен. Динамические диски наиболее эффективно используют дисковое пространство и лучше всего подходят для примненения при разработке и тестировании приложений (рис. 3).

 

Рис. 3. Поддержка виртуальных дисков

Механизмы виртуализации и соответствующие утилиты поддерживают ряд операций над виртуальными жесткими дисками: сжатие (удаление нулевых разделов), преобразование (изменение типа диска — с динамического на диск с фиксированным размером и наоборот) и расширение (добавление дискового пространства к существующему виртуальному диску), а также получение информации о диске и объединение дисков.

Возможность работы с виртуальными сетями (которые были схожи с сетевыми хабами) появилась в Microsoft Virtual Server 2005. Каждая виртуальная сеть могла быть соединена с одним физическим сетевым адаптером, что позволяло виртуальным машинам обмениваться информацией по физической сети. В механизмах виртуализации Windows Server 2008 описанная выше концепция расширена, а кроме того, добавлено понятие виртуальных «переключателей» (virtual switches). Виртуальные переключатели расширяют функциональность виртуальных сетей, в том числе обеспечивают возможность коммуникации с виртуальными сетями по физической сети. Компьютер, на котором запущена WSv, может выполнять одновременно несколько виртуальных машин, каждая из которых присоединена к различным физическим сетевым картам, а каждая физическая сетевая карта присоединена к различным виртуальным сетям на одном физическом переключателе. В такой конфигурации каждый виртуальный переключатель общается только с соответствующей виртуальной сетью на физическом переключателе, обеспечивая сетевую изоляцию каждой виртуальной машины.

Помимо управления виртуальными дисками и сетями механизмы виртуализации в Windows Server 2008 поддерживают утилиты для управления виртуальными машинами: создание виртуальных машин, управление их настройками и управление запущенными виртуальными машинами через Virtual Machine Connection на базе Remote Desktop Protocol (рис. 4).

 

Рис. 4. Управление виртуальными машинами

Механизмы виртуализации поддерживают виртуальные машины, созданные средствами Virtual Server 2005, Virtual PC 2004, Virtual PC 2007 и Windows Server virtualization.

Заключение

Механизмы виртуализации, появившиеся в Windows Server 2008, позволяют реализовать выполнение ключевых сценариев, в основе которых лежит значительное повышение утилизации имеющихся аппаратных ресурсов. Исследования показывают, что в среднем в компаниях используется не более 15% существующих ресурсов. Развертывание механизмов виртуализации и консолидация серверов позволят увеличить утилизацию аппаратных ресурсов до 50% и более.

 

В начало В начало

КомпьютерПресс 1'2008

Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует