Типы виртуализации, используемые в datacenter

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

Серверная виртуализация

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

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

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

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

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

Технологию виртуализации операционной системы предлагают такие компании как Sun (в комплекте с операционной системой Solaris•) и SWSoft, которая предлагает коммерческий продукт Virtuozzo, а также спонсирует открытый проект виртуализации на уровне операционной системы, называемый OpenVZ.

Аппаратная эмуляция

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

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

Этот подход к виртуализации означает, что приложения работают в действительно изолированной гостевой ОС, сосуществующей с одной или более другими гостевыми ОС, по одной для VMM. Все VMMs постоянно находятся в гипервизоре виртуализации. Этот подход не только поддерживает несколько ОС, он может поддерживать непохожие ОС, имеющие как небольшие (например, версия и уровень обновления), так и существенные (например, в аппаратной эмуляции гипервизора можно одновременно использовать абсолютно разные ОС, такие как Windows и Linux) различия.

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

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

Другой недостаток аппаратной эмуляции состоит в том, что программа виртуализации представляет стандартный аппаратный интерфейс (VMM) гостевой операционной системе. Гипервизор обеспечивает взаимодействие с VMM, а затем выполняет вызовы к реальным физическим ресурсам компьютера. Этот означает, что в гипервизор должны входить интерфейсы (для) ресурсов данной машины; эти ресурсы называются драйверами устройств. Если вам приходилось устанавливать новое оборудование на ПК, вам известно, что часто в операционной системе нужно устанавливать драйвер устройства, необходимый для его взаимодействия с данной системой.

Проблема драйверов в технологии аппаратной эмуляции заключается в том, что в гипервизор входят драйверы определенных устройств и у пользователей нет никакой возможности устанавливать драйверы новых устройств (в отличие от обычного ПК). Следовательно, если в гипервизоре отсутствуют драйверы для некоторых ресурсов данной машины, его нельзя использовать на этом компьютере. Это может вызывать проблемы, особенно в организациях, желающих воспользоваться преимуществами новых аппаратных технологий.

Программное обеспечение для аппаратной эмуляции предлагают такие компании как VMware (в двух версиях, VMware Server и ESX Server) и Майкрософт, которая предлагает продукт, называемый виртуальным сервером. VMware поддерживает только серверы на базе (процессора) x86, предпочтительно под управлением ОС Майкрософт. Ожидается замена виртуального сервера Microsoft's Virtual Server сервером Hyper-V, который входит в состав ОС Microsoft Windows Server 2008. Еще одной возможностью является использование виртуального сервера на основе гипервизора Xen.

Паравиртуализация

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

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

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

Кажется, что паравиртуализация является подходящим решением. Тем не менее, у той технологии виртуализации есть один существенный недостаток: из-за легковесности и мультиплексированного доступа к аппаратным ресурсам, взаимодействие с интерфейсами паравиртуализации требует изменения гостевых операционных систем. Для этого нужен доступ к исходному коду гостевой операционной системы. Это возможно только в операционных системах с открытым исходным кодом, таким как Solaris и Linux, а также в ОС Майкрософт с возможностью доступа к исходному коду. Хорошая новость – четырехядерные процессоры Quad-Core AMD Opteron• в системах Sun x64 обеспечивают функциональную возможность, позволяющую гипервизору управлять неизменяемыми операционными системами. Следовательно, значение этого недостатка паравиртуализации будет уменьшаться по мере появления серверов с этими новыми микросхемами в производственных структурах.

Одним из примеров паравиртуализации является относительно новый продукт, называемый Xen, разработка которого финансируется коммерческой компанией XenSource. Система Xen включена в недавние дистрибутивы Linux от Red Hat и Novell, а также доступна для многих других распространителей ОС Linux, таких как Debian и Ubuntu. Сама компания XenSource также продает продукты на основе (гипервизора) Xen. Еще одной возможностью является (платформа) Virtual Iron, также основанная на Xen.

Виртуализация хранилищ данных

Объем данных, создаваемых и хранимых в datacenter. Из-за растущей тенденции замены реальных бизнес-процессов цифровыми приложениями в Интернете, все компании наводнены данными.

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

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

Повышение важности аппаратных средств, обеспечиваемое виртуализацией

Хотя виртуализация считается программной технологией, она повышает значимость аппаратного обеспечения в ЦОД. Это обусловлено тем, что отключение массы серверов и перенос их операционных систем на виртуальные машины еще больше повышает важность остающихся серверов, которые обслуживают все эти виртуальные машины.

Хотя организации могут позволить выход из строя отдельных серверов в среде типа «одно приложение/один сервер», поскольку отказ одной системы затруднит работу одной группы пользователей, виртуализация это совсем другое дело. Каждый сервер обслуживает несколько виртуальных машин и групп пользователей. Выход из строя одного виртуального сервера может отразиться на многих приложениях и всех пользователях этих приложений.

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


Поделиться информацией

Вы можете послать эту статью или новость коллеге или знакомому по email со своим комментарием, пригласить обсудить ее. Просто нажмите на иконку конверта --->


Сообщения, вопросы и ответы

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

Ваше сообщение (вопрос, ответ, комментарий)