Внедрение средств виртуализации, как решение централизованного управления инфраструктуры предприятия. Что такое виртуализация и виртуальные машины Способы виртуализации

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

В широком смысле, понятие виртуализации представляет собой сокрытие настоящей реализации какого-либо процесса или объекта от истинного его представления для того, кто им пользуется. Продуктом виртуализации является нечто удобное для использования, на самом деле, имеющее более сложную или совсем иную структуру, отличную от той, которая воспринимается при работе с объектом. Иными словами, происходит отделение представления от реализации чего-либо. В компьютерных технологиях под термином «виртуализация» обычно понимается абстракция вычислительных ресурсов и предоставление пользователю системы, которая «инкапсулирует» (скрывает в себе) собственную реализацию. Проще говоря, пользователь работает с удобным для себя представлением объекта, и для него не имеет значения, как объект устроен в действительности.

Сам термин «виртуализация» в компьютерных технологиях появился в шестидесятых годах прошлого века вместе с термином «виртуальная машина», означающим продукт виртуализации программно-аппаратной платформы. В то время виртуализация была, скорее, интересной технической находкой, чем перспективной технологией. Разработки в сфере виртуализации в шестидесятых-семидесятых годах проводились только компанией . С появлением в компьютере IBM M44/44X экспериментальной системы пэйджинга, впервые был употреблен термин «виртуальная машина» (virtual machine), который заменил более ранний термин «псевдо машина» (pseudo machine). Затем в мэйнфреймах серии System 360/370, можно было использовать виртуальные машины для сохранения предыдущих версий операционных систем. До конца девяностых годов никто кроме так и не решался использовать эту оригинальную технологию всерьез. Однако в девяностых годах стали очевидны перспективы подхода виртуализации: с ростом аппаратных мощностей, как персональных компьютеров, так и серверных решений, вскоре представится возможность использовать несколько виртуальных машин на одной физической платформе.

В 1997 году компания Connectix выпускает первую версию Virtual PC для платформы Macintosh, а в 1998 году патентует свои техники виртуализации. Компания Connectix впоследствии была куплена корпорацией Microsoft, а VMware корпорацией , и на данный момент обе эти компании являются двумя основными потенциальными конкурентами на рынке технологий виртуализации в будущем. Потенциальными — потому что сейчас безоговорочный лидер на этом рынке, однако у Microsoft, как всегда, есть козырь в рукаве.

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

Виды виртуализации

Понятие виртуализации условно можно разделить на две фундаментально различающиеся категории:

  • виртуализация платформ

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

  • виртуализация ресурсов

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

Виды виртуализации

Виртуализация платформ

Под виртуализацией платформ понимают создание программных систем на основе существующих аппаратно-программных комплексов, зависящих или независящих от них. Система, предоставляющая аппаратные ресурсы и программное обеспечение, называется хостовой (host), а симулируемые ей системы – гостевыми (guest). Чтобы гостевые системы могли стабильно функционировать на платформе хостовой системы, необходимо, чтобы программное и аппаратное обеспечение хоста было достаточно надежным и предоставляло необходимый набор интерфейсов для доступа к его ресурсам. Есть несколько видов виртуализации платформ, в каждом из которых осуществляется свой подход к понятию «виртуализация». Виды виртуализации платформ зависят от того, насколько полно осуществляется симуляция аппаратного обеспечения. До сих пор нет единого соглашения о терминах в сфере виртуализации, поэтому некоторые из приведенных далее видов виртуализации могут отличаться от тех, что предоставят другие источники.

Виды виртуализации платформ:

  • Полная эмуляция (симуляция).

При таком виде виртуализации виртуальная машина полностью виртуализует все аппаратное обеспечение при сохранении гостевой операционной системы в неизменном виде. Такой подход позволяет эмулировать различные аппаратные архитектуры. Например, можно запускать виртуальные машины с гостевыми системами для x86-процессоров на платформах с другой архитектурой (например, на RISC-серверах компании Sun). Долгое время такой вид виртуализации использовался, чтобы разрабатывать программное обеспечение для новых процессоров еще до того, как они были физически доступными. Такие эмуляторы также применяют для низкоуровневой отладки операционных систем. Основной минус данного подхода заключается в том, что эмулируемое аппаратное обеспечение весьма и весьма существенно замедляет быстродействие гостевой системы, что делает работу с ней очень неудобной, поэтому, кроме как для разработки системного программного обеспечения, а также образовательных целей, такой подход мало где используется.

Примеры продуктов для создания эмуляторов: Bochs, PearPC, QEMU (без ускорения), Hercules Emulator.

  • Частичная эмуляция (нативная виртуализация).

В этом случае виртуальная машина виртуализует лишь необходимое количество аппаратного обеспечения, чтобы она могла быть запущена изолированно. Такой подход позволяет запускать гостевые операционные системы, разработанные только для той же архитектуры, что и у хоста. Таким образом, несколько экземпляров гостевых систем могут быть запущены одновременно. Этот вид виртуализации позволяет существенно увеличить быстродействие гостевых систем по сравнению с полной эмуляцией и широко используется в настоящее время. Также, в целях повышения быстродействия, в платформах виртуализации, использующих данный подход, применяется специальная «прослойка» между гостевой операционной системой и оборудованием (гипервизор), позволяющая гостевой системе напрямую обращаться к ресурсам аппаратного обеспечения. Гипервизор, называемый также «Монитор виртуальных машин» (Virtual Machine Monitor) — одно из ключевых понятий в мире виртуализации. Применение гипервизора, являющегося связующим звеном между гостевыми системами и аппаратурой, существенно увеличивает быстродействие платформы, приближая его к быстродействию физической платформы.

К минусам данного вида виртуализации можно отнести зависимость виртуальных машин от архитектуры аппаратной платформы.

Примеры продуктов для нативной виртуализации: VMware Workstation, VMware Server, VMware ESX Server, Virtual Iron, Virtual PC, VirtualBox, Parallels Desktop и другие.

Частичная виртуализация, а также «виртуализация адресного пространства» («address space virtualization»).

При таком подходе, виртуальная машина симулирует несколько экземпляров аппаратного окружения (но не всего), в частности, пространства адресов. Такой вид виртуализации позволяет совместно использовать ресурсы и изолировать процессы, но не позволяет разделять экземпляры гостевых операционных систем. Строго говоря, при таком виде виртуализации пользователем не создаются виртуальные машины, а происходит изоляция каких-либо процессов на уровне операционной системы. В данный момент многие из известных операционных систем используют такой подход. Примером может послужить использование UML (User-mode Linux), в котором «гостевое» ядро запускается в пользовательском пространстве базового ядра (в его контексте).

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

При применении паравиртуализации нет необходимости симулировать аппаратное обеспечение, однако, вместо этого (или в дополнение к этому), используется специальный программный интерфейс (API) для взаимодействия с гостевой операционной системой. Такой подход требует модификации кода гостевой системы, что, с точки зрения сообщества, Open Source не так и критично. Системы для паравиртуализации также имеют свой гипервизор, а API-вызовы к гостевой системе, называются «hypercalls» (гипервызовы). Многие сомневаются в перспективах этого подхода виртуализации, поскольку в данный момент все решения производителей аппаратного обеспечения в отношении виртуализации направлены на системы с нативной виртуализацией, а поддержку паравиртуализации приходится искать у производителей операционных систем, которые слабо верят в возможности предлагаемого им средства. В настоящее время провайдерами паравиртуализации являются компании XenSource и Virtual Iron, утверждающие, что быстродействие паравиртуализации выше.

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

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

Примеры виртуализации уровня ОС: Linux-VServer, Virtuozzo, OpenVZ, Solaris Containers и FreeBSD Jails.

  • Виртуализация уровня приложений.

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

Примером такого подхода служат: Thinstall, Altiris, Trigence, Softricity.

Виртуализация ресурсов

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

Виды виртуализации ресурсов:

  • Объединение, агрегация и концентрация компонентов.

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

многопроцессорные системы, представляющиеся нам как одна мощная система,

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

виртуализация систем хранения, используемая при построении сетей хранения данных SAN (Storage Area Network),

виртуальные частные сети (VPN) и трансляция сетевых адресов (NAT), позволяющие создавать виртуальные пространства сетевых адресов и имен.

  • Кластеризация компьютеров и распределенные вычисления (grid computing).

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

  • Разделение ресурсов (partitioning).

При разделении ресурсов в процессе виртуализации происходит разделение какого-либо одного большого ресурса на несколько однотипных объектов, удобных для использования. В сетях хранения данных это называется зонированием ресурсов («zoning»).

  • Инкапсуляция.

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

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

Где применяется виртуализация

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

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

В данный момент приложения, работающие на серверах в IT-инфраструктуре компаний, создают небольшую нагрузку на аппаратные ресурсы серверов (в среднем 5-15 процентов). Виртуализация позволяет мигрировать с этих физических серверов на виртуальные и разместить их все на одном физическом сервере, увеличив его загрузку до 60-80 процентов и, повысив тем самым коэффициент использования аппаратуры, что позволяет существенно сэкономить на аппаратуре, обслуживании и электроэнергии.

Разработка и тестирование приложений.

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

Использование в бизнесе.

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

Использование виртуальных рабочих станций.

С приходом эры виртуальных машин будет бессмысленно делать себе рабочую станцию с ее привязкой к аппаратуре. Теперь создав однажды виртуальную машину со своей рабочей или домашней средой, можно будет использовать её на любом другом компьютере. Также можно использовать готовые шаблоны виртуальных машин (Virtual Appliances), которые решают определенную задачу (например, сервер приложений). Концепция такого использования виртуальных рабочих станций может быть реализована на основе хост-серверов для запуска на них перемещаемых десктопов пользователей (нечто подобное мэйнфреймам). В дальнейшем эти десктопы пользователь может забрать с собой, не синхронизируя данные с ноутбуком. Этот вариант использования также предоставляет возможность создания защищенных пользовательских рабочих станций, которые могут быть использованы, например, для демонстрации возможностей программы заказчику. Можно ограничить время использования виртуальной машины – и по прошествии этого времени виртуальная машина перестанет запускаться. В этом варианте использования заложены большие возможности.

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

Как работает виртуализация сегодня

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

10 причин использовать виртуальные машины

  • Экономия на аппаратном обеспечении при консолидации серверов.

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

  • Возможность поддержания старых операционных систем в целях обеспечения совместимости.

При выходе новой версии операционной системы, старую версию можно поддерживать на виртуальной машине, пока не будет полностью обкатана новая ОС. И наоборот, можно «поднять» новую ОС на виртуальной машине и опробовать ее без ущерба для основной системы.

  • Возможность изолировать потенциально опасные окружения.

Если какое-то приложение или компонент вызывает сомнения в его надежности и защищенности, можно использовать его на виртуальной машине без опасности повредить жизненно важные компоненты системы. Такую изолированную среду называют также «песочницей» (sandbox). Помимо этого, можно создавать виртуальные машины, ограниченные политиками безопасности (например, машина перестанет запускаться через две недели).

  • Возможность создания требуемых аппаратных конфигураций.

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

  • Виртуальные машины могут создавать представления устройств, которых у вас нет.

Например, многие системы виртуализации позволяют создавать виртуальные SCSI диски, виртуальные многоядерные процессоры и т.п. Это может пригодиться для создания различного рода симуляций.

  • На одном хосте может быть запущено одновременно несколько виртуальных машин, объединенных в виртуальную сеть.

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

  • Виртуальные машины предоставляют великолепные возможности по обучению работе с операционными системами.

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

  • Виртуальные машины повышают мобильность.

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

  • Виртуальные машины могут быть организованы в «пакеты приложений».

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

  • Виртуальные машины более управляемы.

При использовании виртуальных машин существенно повышается управляемость в отношении создания резервных копий, создания снимков состояний виртуальных машин («снапшотов») и восстановлений после сбоев.

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

  • Невозможность эмуляции всех устройств.

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

  • Виртуализация требует дополнительных аппаратных ресурсов.

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

Некоторые платформы виртуализации требовательны к конкретному аппаратному обеспечению.

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

  • Хорошие платформы виртуализации стоят хороших денег.

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

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

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

Что ждет виртуализацию в будущем

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

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

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

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

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

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

Существует несколько типов виртуализации:

  • Программная виртуализация;
  • Аппаратная виртуализация.

Программная виртуализация также включает в себя несколько подтипов:

  • Динамическая (бинарная) трансляция - процесс, при котором проблемные команды гостевой OC заменяются на безопасные.
  • Паравиртуализация — процесс, при котором гостевые ОС модифицируют свое ядро с целью функционирования в виртуализированной среде. ОС взаимодействует с гипервизором, который обеспечивает гостевой API. Таким образом, исключается использование таблицы страниц памяти. Паравиртуализация гарантирует более высокую производительность в сравнении с динамической трансляцией, однако она уместна лишь тогда, когда гостевые ОС имеют открытые исходные коды, либо же гипервизор и гостевая ОС - от одного производителя. Термин сформировался в рамках проекта Denali.
  • Встроенная виртуализация — новый метод, базирующийся на применении аппаратно-поддерживаемых возможностей виртуализации, что позволяет пользователям использовать любые версии ОС в сочетании с различными вариантами рабочих сред. По сути, встроенная виртуализация представляет собой полную виртуализацию, реализованную на аппаратном уровне. Данный подход был реализован в рамках проекта BlueStacks Multi-OS (MOS).

Достоинства программной виртуализации:

  • Доступность ресурсов (каталоги, принтеры и т.д.) для обеих ОС;
  • Удобный интерфейс окон приложений;
  • При тонкой настройке аппаратной платформы производительность мало отличается от оригинальной ОС. Переключение между системами происходит менее чем за 1 сек.;
  • Простая процедура обновления гостевой ОС;
  • Двухсторонняя виртуализация (приложения одной системы запускаются в другой, и наоборот).

Аппаратная виртуализация

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

Достоинства:

  • Простота разработки программных платформ виртуализации, доступность аппаратных интерфейсов управления, поддержка виртуальных гостевых систем;
  • Увеличение быстродействия платформ виртуализации за счет использования гипервизора;
  • Защищенность, возможность переключения между несколькими запущенными независимыми платформами виртуализации. Каждая виртуальная машина работает независимо в своем пространстве аппаратных ресурсов. Полная изоляция, позволяющая устранить потери быстродействия на поддержание хостовой платформы;
  • Гостевая система не привязана к архитектуре хостовой платформы. Возможен запуск 64-битных гостевых ОС на 32-битных хостовых системах.

Технологии:

  • Режим виртуального 8086
  • Intel VT (VT-x)
  • AMD-V

Платформы, работающие на аппаратной виртуализации:

  • IBM LPAR
  • VMware
  • Hyper-V

Где применяется виртуализация?

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

  • Виртуальные машины;
  • Ресурсы;
  • Приложения.

Виртуализация уровня ОС

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

  • Solaris Containers/Zones
  • FreeBSD Jail
  • Linux-VServer (англ.)
  • FreeVPS (англ.)
  • OpenVZ
  • Virtuozzo
  • iCore Virtual Accounts

Виртуальные машины

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

Виртуализация серверов

Виртуализация сервера позволяет упростить процесс восстановления систем, вышедших из строя, вне зависимости от их конфигурации.

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

Также возможен и обратный процесс: объединение нескольких физических серверов в один логический. Примером такого процесса является Oracle Real Application Cluster. Также существует и ряд других:

  • Virtual Iron
  • Microsoft (Hyper-V)
  • VMware (ESX Server)
  • Red Hat Enterprise Virtualization for Servers
  • PowerVM

Виртуализация ресурсов

Разделение одного физического сервера на несколько. Каждая отдельная часть отображается у пользователя как отдельный сервер. Данный метод осуществляется на уровне ядра ОС.

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

Примером реализации разделения ресурсов можно отнести проект OpenSolaris Network Virtualization and Resource Control, позволяющий создавать несколько виртуальных сетевых интерфейсов на основе одного физического.

Также данный процесс подразумевает агрегацию, распределение и объединение ресурсов. К примеру, симметричные мультипроцессорные системы объединяют множество процессоров; RAID и дисковые менеджеры объединяют множество дисков в один большой логический диск. Зачастую к данному подтипу также относятся сетевые файловые системы, абстрагированные от хранилищ данных на которых они построены (Vmware VMFS, Solaris/OpenSolaris ZFS, NetApp WAFL).

Виртуализация приложений

Результатом данного процесса является преобразованное из требующего установки в ОС приложения в не требующее установки, автономное приложение.

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

Чтобы создать виртуальное приложение, виртуализируемое помещается в специальную папку. При запуске виртуального приложения запускается виртуализируемое приложение и папка, являющаяся для него рабочей средой. Таким образом, образуется определенный промежуток между приложением и операционной системой, что позволяет избежать конфликтов между ПО и ОС. Виртуализацию приложений осуществляют такие программы, как: Citrix XenApp, SoftGrid и VMWare ThinApp.

Достоинства виртуализации приложений:

  • Изолированность приложений и ОС;
  • Отсутствие несовместимости и конфликтов ПО и ОС;
  • Не засоряется реестр, отсутствие конфигурационных файлов;
  • Низкие ресурсозатраты по сравнению с эмуляцией всей ОС.

Концепция виртуальной среды

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

Типы виртуализации

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

Программная виртуализация

Динамическая трансляция

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

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

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

Метод паравиртуализации позволяет добиться более высокой производительности, чем метод динамической трансляции.

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

Впервые термин возник в проекте Denali.

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

Преимущества:

  • Совместное использование ресурсов обеими ОС (каталоги, принтеры и т.д.).
  • Удобство интерфейса для окон приложений из разных систем (перекрывающиеся окна приложений, одинаковая минимизация окон, как в хост-системе)
  • При тонкой настройке на аппаратную платформу производительность мало отличается от оригинальной нативной ОС. Быстрое переключение между системами (менее 1 сек.)
  • Простая процедура обновления гостевой ОС.
  • Двухсторонняя виртуализация (приложения одной системы запускаются в другой и наоборот)

Реализации:

Аппаратная виртуализация

Преимущества:

  • Упрощение разработки программных платформ виртуализации за счет предоставления аппаратных интерфейсов управления и поддержки виртуальных гостевых систем. Это уменьшает трудоемкость и время на разработку систем виртуализации.
  • Возможность увеличения быстродействия платформ виртуализации. Управление виртуальными гостевыми системами осуществляет напрямую небольшой промежуточный слой программного обеспечения, гипервизор, что дает увеличение быстродействия.
  • Улучшается защищённость, появляется возможность переключения между несколькими запущенными независимыми платформами виртуализации на аппаратном уровне. Каждая из виртуальных машин может работать независимо, в своем пространстве аппаратных ресурсов, полностью изолированно друг от друга. Это позволяет устранить потери быстродействия на поддержание хостовой платформы и увеличить защищенность.
  • Гостевая система становится не привязана к архитектуре хостовой платформы и к реализации платформы виртуализации. Технология аппаратной виртуализации делает возможным запуск 64-битных гостевых систем на 32-битных хостовых системах (с 32-битными средами виртуализации на хостах).

Примеры применения:

  • тестовые лаборатории и обучение: Тестированию в виртуальных машинах удобно подвергать приложения, влияющие на настройки операционных систем, например инсталляционные приложения. За счёт простоты в развёртывании виртуальных машин, они часто используются для обучения новым продуктам и технологиям.
  • распространение предустановленного ПО: многие разработчики программных продуктов создают готовые образы виртуальных машин с предустановленными продуктами и предоставляют их на бесплатной или коммерческой основе. Такие услуги предоставляют Vmware VMTN или Parallels PTN

Виртуализация серверов

  1. размещение нескольких логических серверов в рамках одного физического (консолидация)
  2. объединение нескольких физических серверов в один логический для решения определенной задачи. Пример: Oracle Real Application Cluster , grid-технология , кластеры высокой производительности.
  • SVISTA
  • twoOStwo
  • Red Hat Enterprise Virtualization for Servers
  • PowerVM

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

Виртуализация рабочих станций

Виртуализация ресурсов

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

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

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

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

  • Агрегация, распределение или добавление множества ресурсов в большие ресурсы или объединение ресурсов. Например, симметричные мультипроцессорные системы объединяют множество процессоров; RAID и дисковые менеджеры объединяют множество дисков в один большой логический диск; RAID и сетевое оборудование использует множество каналов, объединённых так, чтобы они представлялись, как единый широкополосный канал. На мета-уровне компьютерные кластеры делают все вышеперечисленное. Иногда сюда же относят сетевые файловые системы абстрагированные от хранилищ данных на которых они построены, например, Vmware VMFS, Solaris /OpenSolaris ZFS , NetApp WAFL

Виртуализация приложений

Достоинства:

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

См. также

Ссылки

  • Обзор методов, архитектур и реализаций виртуализации (Linux) , www.ibm.com
  • Виртуальные машины 2007.Наталия Елманова, Сергей Пахомов , КомпьютерПресс 9’2007
Виртуализация серверов
  • Виртуализация серверов. Нейл Макаллистер , InfoWorld
  • Виртуализация серверов стандартной архитектуры. Леонид Черняк , Открытые системы
  • Альтернативы лидерам в канале 2009 г , 17 августа 2009
Аппаратная виртуализация
  • Технологии аппаратной виртуализации , ixbt.com
  • Спирали аппаратной виртуализации. Александр Александров , Открытые системы

Примечания


Wikimedia Foundation . 2010 .

Смотреть что такое "Виртуализация" в других словарях:

    виртуализация - В трудах ассоциации SNIA дается следующее общее определение. "Виртуализация — это действие (act) по объединению нескольких устройств, служб или функций внутренней составляющей инфрастуктуры (back end) с дополнительной внешней (front… …

    виртуализация - Разделение физического уровня сети (расположение и соединения устройств) от ее логического уровня (рабочие группы и пользователи). Настройка конфигурации сети по логическим критериям вместо физических. … Справочник технического переводчика

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

Тема: Знакомство с виртуальными машинами. Способы инсталляции Unix-подобных и Windows-подобных ОС на виртуальную машину.

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

Теоретические сведения

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

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

Виды виртуализации

Понятие виртуализации условно можно разделить на две фундаментально различающиеся категории:

    виртуализация платформ

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

    виртуализация ресурсов

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

В ходе выполнения лабораторной работы мы ознакомимся с виртуализацией платформ для организации гостевых ОС.

Под виртуализацией платформ понимают создание программных систем на основе существующих аппаратно-программных комплексов, зависящих или независящих от них. Система, предоставляющая аппаратные ресурсы и программное обеспечение, называется хостовой (host) , а симулируемые ей системы – гостевыми (guest) . Чтобы гостевые системы могли стабильно функционировать на платформе хостовой системы, необходимо, чтобы программное и аппаратное обеспечение хоста было достаточно надежным и предоставляло необходимый набор интерфейсов для доступа к его ресурсам.

Виртуальная машина (virtual machine):

Программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы (target - целевая, или гостевая платформа) и исполняющая программы для target-платформы на host-платформе (host - хост-платформа, платформа-хозяин);

Или виртуализирующая некоторую платформу и создающая на ней среды, изолирующие друг от друга программы и даже операционные системы (песочница, sandbox).

Есть несколько видов виртуализации платформ, в каждом из которых осуществляется свой подход к понятию «виртуализация».

Полная эмуляция (симуляция)

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

Частичная эмуляция (нативная виртуализация)

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

Примеры продуктов для нативной виртуализации: продукты VMware (Workstation, Server, Player), Microsoft Virtual PC, VirtualBox, Parallels Desktop и другие.

Частичная виртуализация , а также «виртуализация адресного пространства»

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

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

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

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

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

Виртуализация уровня приложений

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

Краткая справка по виртуальным машинам:

Oracle VirtualBox – кроссплатформенный свободный (GNU GPL) программный продукт виртуализации для операционных систем Microsoft Windows, Linux, FreeBSD, Mac OS X, Solaris/OpenSolaris, ReactOS, DOS и других. Поддерживаются как 32-битные, так и 64-битные версии ОС.

VMware Workstation - позволяет создавать и запускать одновременно несколько виртуальных машин (x86-архитектуры), в каждой из которых работает своя гостевая операционная система. Поддерживаются как 32-битные, так и 64-битные версии ОС.

VMware Player - бесплатный (для личного некоммерческого использования) программный продукт, предназначенный для создания (начиная с версии 3.0) и запуска готовых виртуальных машин (созданных в VMware Workstation, либо VMware Server). Бесплатное решение с ограниченным, по сравнению с VMware Workstation, функционалом.

Microsoft Virtual PC - программный пакет виртуализации для операционной системы Windows.

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


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

Для чего это нужно?

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

Немаловажный момент – это создание постоянно функционирующей ИТ-инфраструктуры, защищённой от сбоев и устойчивой к катастрофам. За счёт грамотно построенной среды виртуализации происходит сокращение внеплановых простоев и абсолютное исключение плановых отключений на обслуживание серверов либо хранилищ данных. При этом, все ИТ-службы могут уйти от привязки к конкретному поставщику.

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

Для каких категорий пользователей подходит решение

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

Преимущества

Для руководства компаний:

  • сокращение стоимости поддержки ИТ-систем;
  • сокращение стоимости внедрения новых ИТ-сервисов.

Для руководителей ИТ-подразделений:

  • сокращение сроков внедрения новых ИТ-сервисов;
  • простота обслуживания инфраструктуры;
  • повышение надежности ИТ-систем в целом.

Для ИТ-персонала:

  • повышение удобства управления инфраструктурой;
  • сокращение низкоквалифицированных работ;
  • повышение собственной квалификации.

Виртуализация вычислительных ресурсов

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

Основные решения для виртуализации вычислительных ресурсов на сегодняшний день:

  • VMware vSphere
  • Microsoft Windows Server
  • Virtuozzo
  • Citrix XenServer
  • Oracle VM
  • Red Hat Enterprise Virtualization
  • Linux KVM
  • Huawei FusionSphere

Виртуализация систем хранения данных

Современные ИТ-архитектуры обязательно содержат подсистему хранения данных. Она может быть реализована несколькими способами – от хранения на вычислительном узле до устройств, выделенных исключительно под хранение. Кроме того, хранение может происходить на различных носителях: от шпиндельных дисков и лент до твердотельных накопителей.

Для виртуальной инфраструктуры система хранения также является неотъемлемой частью. Чтобы оптимизировать работу гипервизора с системой хранения, производители аппаратных СХД оснащают свои решения специализированными драйверами, которые позволяет перенести выполнение некоторых операций на СХД, что экономит вычислительные ресурсы. Но есть ещё один путь – использование виртуализированного хранилища, применяемого в гиперконвергентных инфраструктурах. Такое хранилище создается на базе тех же самых вычислительных узлов и использует серверные диски как часть единого хранилища. Это позволяет радикально сократить затраты на построение и обслуживание, выделить оптимизированные ресурсы хранения для каждой ВМ. В дополнение, система виртуализации СХД сама строит отказоустойчивую схему хранения с балансировкой нагрузки и в соответствии с политикой обслуживания для каждой ВМ. Системы виртуализации СХД могут применяться как в масштабах ЦОД, так и при выполнении небольших локальных задач.

Сами решения могут быть дополнениями к гипервизору или включаться в его состав по умолчанию. Все основные производители имеют в своём арсенале подобные решения:

  • VMware Virtual SAN
  • Microsoft Storage Spaces, входящий в Microsoft Windows Server
  • Virtuozzo Storage
  • Red Hat Ceph
  • StarWind Virtual SAN
  • Huawei FusionStorage
  • EMC ScaleIODataCore
  • Virtual SAN

Виртуализация сети

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

На данный момент на рынке представлено ограниченное количество решений, позволяющих виртуализировать сразу все аспекты сети:

  • VMware NSX
  • Microsoft Windows Server 2016 Datacenter вместе с System Center
  • Cisco
  • Huawei

Виртуализация рабочих мест

Важнейшая область применения технологий виртуализации – создание рабочих мест пользователей, когда основная рабочая нагрузка приходится на общий сервер, а пользователь видит на экране устройства доступа только изображение происходящего в виртуальном ПК. Эта технология получила название VDI (Virtual Desktop Infrastructure).

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

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

Решения для VDI, представленные на рынке:

  • VMware Horizon
  • Citrix XenApp и XenDesktop
  • Parallels VDI и RAS
  • Huawei FusionAccess

Управление и автоматизация виртуализации

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

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

Среди основных продуктов можно выделить:

  • VMware vCenter и vRealize
  • Microsoft System Center
  • Red Hat Enterprise Virtualization Manager
  • Citrix Systems XenCenter
  • SolarWinds Virtualization Manager
  • DELL Foglight

Пакет vRealize Suite, представляет собой платформу для управления гибридным облаком на решениях VMware.

Под брендом vRealize компания VMware объединяет все решения, предназначенные для управления гибридной инфраструктурой, в том числе средства управления ресурсами на стороне облачных провайдеров (не только VMware), а также средства управления инфраструктурами на базе различных гипервизоров.

Стек VMware vRealize Suite отвечает требованиям компании Gartner, предъявляемым к средствам управления облаками – Evaluation Criteria for Cloud Management Platforms, а именно:

  • доставка приложений или ресурсов инфраструктуры по требованию через портал самообслуживания или каталог сервисов;
  • обсчет стоимости ресурсов облака и прозрачное планирование финансовых показателей его эффективности.

Технологии

  • Parallels
  • VMware
  • Microsoft
  • Citrix
  • Red Hat
  • OpenStack