Первое «виртуальное устройство» (Virtual Appliance) было выпущено компанией VMware в одно время с «проигрывателем программного обеспечения» Software VMware Player и представляло собой браузерное устройство (Browser Appliance). Оно предназначалось для обеспечения безопасного пользования сетью Internet, так как создавало внешние соединения HTTP только по технологии преобразования сетевых адресов (Network Address Translation, NAT). С тех пор мир виртуальных устройств бурно развивался, однако осуществить прорыв так и не удалось.

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

В настоящее время подобные решения самого разного назначения предлагают многие компании, наиболее известные среди них — VMware, Microsoft, Citrix, Sun, Parallels и Virtual Iron. Хотя зачастую продукты виртуализации используют собственные виртуальные аппаратные компоненты, для миграции с одного продукта на другой существует множество инструментов и методов.

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

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

ПРЕИМУЩЕСТВО: ЭКОНОМИЯ ВРЕМЕНИ

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

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

Между тем, появились самые разно-образные руководства для настройки систем Linux о том, как сделать так, чтобы при следующем запуске автоматически запрашивались сетевые настройки и корневой пароль. Помимо ручных методов, поставщики виртуальных устройств, к примеру, компания rPath (http://www.rpath.com, http://www.rpath.org), предлагают множество разнообразных плагинов и специальных инструментов.

РЫНКИ ВИРТУАЛЬНЫХ УСТРОЙСТВ

rPath является неоспоримым первопроходцем в мире виртуальных устройств: еще в 2005 г. она начала предоставлять инструменты для виртуальных устройств и создала для них собственную рыночную площадку. Этот рынок предлагает готовые системы (как правило, Linux) для множества платформ. В число инструментов входят rВuilder (программное обеспечение для создания виртуальных устройств для различных платформ виртуализации: VMware, Microsoft, Citrix, Virtual Iron, Parallels, Qemu, Amazon), платформа для управления жизненным циклом rРath (администрирование и обслуживание виртуальных устройств) и услуги в сфере виртуальных устройств. Тем самым производитель демонстрирует, что в настоящее время рынок виртуальных устройств уже сформировался.

VMware открыла собственный рынок виртуальных устройств (Virtual Appliance Marketplace) относительно недавно (см. Рисунок 1), с появлением своего браузерного устройства (http://www.vmware.com/appliances). Помимо виртуальных устройств Linux (которые гораздо легче распространять благодаря их лицензионным условиям и концепции открытых кодов), здесь представлены устройства Windows и другие коммерческие продукты — от Microsoft Exchange до брандмауэров Check Point. По этой причине хочется предупредить каждого, кто собирается заняться распространением подобных решений: необходимо принять во внимание условия лицензионных соглашений, иначе за благие намерения придется дорого заплатить.

Рисунок 1. На рынке виртуальных устройств VMware предлагает пакеты из предварительно настроенных, готовых к применению виртуальных устройств.

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

Microsoft с недавних пор также предлагает на собственном сайте Web и на Technet и MSDN готовые, предварительно настроенные системы в виде виртуальных устройств. Еще один сайт, правда, с существенно меньшим наполнением, можно найти по адресу http://virtualappliances.net. После скачивания виртуального устройства его интеграция в используемую платформу виртуализации может осуществляться по-разному. На данный момент это главный ограничивающий фактор для неопытных пользователей, поскольку у некоторых даже архив в формате .tgz вызывает серьезные трудности. Однако поставщики решений виртуализации стараются предоставить простые функции импорта, доступные через графический управляющий интерфейс, и часто к виртуальному устройству прилагают соответствующую инструкцию (см. Рисунок 2).

Рисунок 2. Импорт виртуального устройства в Virtual Infrastructure от VMware осуществляется с помощью мастера.

VMware удалось достаточно хорошо продвинуть процесс импортирования: импорт можно осуществлять через Internet из клиента виртуальной инфраструктуры VMware Virtual Infrastructure, при этом обращение происходит либо на рынок VMware, либо по адресу URL. Если виртуальное устройство имеется в локальной сети, то его можно выбрать напрямую в файловой системе.

VMware занимается и технической платформой виртуальных устройств — это минимально достаточная операционная система (Just Enough Operating System, JEOS) и стандартизованный формат виртуальных машин (Open Virtual Machine Format, OVF), введение которого производитель приурочил к VMworld 2007, и с тех пор он активно продвигается. OVF — важный шаг на пути к удобству пользования и упрощению процесса импортирования устройств. В качестве стандартной операционной системы JEOS призвана сформировать базу для приложений, повысить безопасность, благодаря своей минималистской концепции, и свести на нет предрасположенность к ошибкам. Эта идея очень интересна, причем не только для специалистов по ИТ. Конечным пользователям уже не придется заботиться о базовых вопросах (версия операционной системы, заплаты и т.д.), и они будут заниматься лишь приложением, что, естественно, облегчит им жизнь.

Кроме того, единая основа предоставляет огромные преимущества разработчикам программного обеспечения, поскольку каждый последующий вариант сочетания аппаратного обеспечения, состояния микрокода, операционной системы, установленных заплат, аппаратных драйверов, базового программного обеспечения и т.д. ведет к увеличению затрат на тестирование и количества ошибок, а кроме того, к росту накладных расходов на поддержку приложений. Если база все время одинакова, то о факторе затрат можно не беспокоиться. Эта ситуация знакома, к примеру, по Sony PlayStation или Wii от Nintendo: в обоих случаях программное обеспечение функционирует весьма стабильно, поскольку основа игровых приставок постоянна. В случае компьютерных приложений существует бесчисленное множество причин их медленной работы или сбоев, тогда как у приставок все они сведены к минимуму. Apple следует аналогичному принципу, и конечные пользователи в восторге от этого, хотя им приходится мириться с ограничениями по совместимости.

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

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

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

Возможность скачивать полностью установленные системы – отличная идея. Это позволяет значительно экономить время, поскольку не приходится читать руководств по установке, а создатель устройства уже позаботился об устранении всех возможных проблем. При наличии соответствующего соединения Internet запустить систему на локальном компьютере можно за несколько минут. Однако это лишь вершина айсберга. Коммерческие поставщики предоставляют пользователям свое программное обеспечение в полностью установленном виде: будь то выступления Web, отправляемые клиентам в виде устройств, или самостоятельно разработанные приложения — возможнос-ти интересны и разнообразны.

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

Дэннис Циммер — главный технический директор компании Icomasoft, он ведет сайт сообщества http://www.vmachine.de и является автором книг и тематических статей.


© AWi Verlag


Преимущества использования виртуальных устройств

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