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

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

  • Жесткий диск (а именно специально отведенное место на жестком диске компьютера);
  • BIOS;
  • CD-ROM (либо компьютера пользователя, либо подключенный ISO-образец);
  • Сетевые адаптеры (для обеспечения подключения с компьютером, сетевыми ресурсами и другими виртуальными машинами).

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

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

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

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

Какая на твой взгляд самая лучшая виртуальная машина ?

Я не буду выдумывать велосипед и пересказывать других. Лучше я вам предложу прочитать статью из журнала Linux Format. В которой эксперты сделали сравнительный обзор пяти популярных виртуальных машин в надежде найти ту самую.., самую лучшую виртуальную машину. Кстати, тем кто отрекся и смог убежать из плена Windows очень рекомендую .

  • Что такое виртуальная машина
  • Зачем нужна виртуальная машина
  • Как мы тестировали Виртуальные Машины
  • Производительность
  • Функциональность
  • Совместимость и снапшоты
  • Интеграция с рабочим столом
  • Графическое ускорение
  • Вердикт

Что такое виртуальная машина

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

Зачем мне нужна виртуальная машина

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

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

Сперва мы взяли двуядерный компьютер (из-за бюджетных ограничений) со свежим Arc Linux. Кроме проприетарной VMware (версия 7.1.0 Рlауег и 30-дневный пробный период Workstation 11), мы использовали официальные пакеты Arch, которые очень близко следуют релизам разработчиков. На каждой машине было 2 ГБ системной ОЗУ и 128 МБ видеопамяти (при необходимости - 256 МБ).

Мы тестировали каждого кандидата на разных гостевых ОС: Mint 17.1 и Kubuntu 15.04 beta, а также разных версиях не-Linux ОС под названием Windows. Для оценки производительности мы скомпилировали основное ядро Mint, запустили сравнительный тест JavaScript SunSpider и сыграли в разные игры из нашей библиотеки Steam. Чтобы протестировать реальные варианты, мы запустили их на 8-ядерной машине с 16 ГБ ОЗУ и 4-ГБ Nvidia GTX, но потом нас заставили ее вернуть.

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

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

В былые дни VirtualBox от Sun (некогда принадлежавшая Innotek, а теперь Oracle) был единственной реальной опцией. Но времена изменились, так что давайте рассмотрим и другие приложения виртуализации.

И VMware, и VirtualBox используют зависимые от ядра модули, которые загружаются, чтобы сотворять свои чудеса. VMware понадобится их скомпилировать, для чего придется установить пакеты заголовков ядра и всю начинку компилятора. Потом вы получите скрипт init для загрузки указанных модулей, хотя для пользователей Systemd он будет бесполезен. Если это ваш случай, вы, возможно, пожелаете создать собственный файл init, вместо того, чтобы все время запускать этот скрипт как root (или видеть всё те же сообщения об ошибках). На момент написания статьи ядра серии 3.19 требовали подлатать исходники VMware, но, надеюсь, к моменту выхода журнала это уже будет исправлено. Пакеты VirtualBox в большинстве дистрибутивов имеются, и если у вас стандартное ядро, можете уже ни о чем не волноваться.

Virt-Manager требует, чтобы до его запуска в вашей системе был запущен сервис libvirtd, о чем вас уведомит любезное сообщение, и если вы используете полнофункциональную среду рабочего стола, то она сама сделает это за вас; вам останется только ввести пароль root.

И VirtualBox, и VMware Workstation достаточно просты, если только вы не вздумаете отвлекаться на каждую опцию. А вот в VMware Player опций не так уж и много, и вы очень быстро настроите и запустите свою машину. Но если вы полны решимости задействовать все эти опции по максимуму, придется установить гостевые дополнения.

Гостевые дополнения Linux для VirtualBox намного проще в установке (CD запустится автоматически), чем дополнительные «инструменты» для VMware, требующие копирования программ с воображаемого CD, изменения разрешений и затем запуска скрипта. Неужто на дворе 1999 год? Зато, проделав все это, вы будете вознаграждены улучшением графики и рядом добавочных функций, которые мы обсудим дальше.

Простейшим в использовании из нашей подборки является Boxes, пусть даже это обусловлено предоставлением всего только голого минимума функций Qemu / libvirt. VMware Player и VirtualBox идут вторыми, а следом - их платный соперник (номинально они труднее, в силу большего количества опций). Virt-Manager не особенно сложен в использовании, но в нем вполне достаточно от лабиринта настроек Qemu, чтобы ошеломить новичка. Помимо этого, механизм для управления хранением у него довольно-таки запутанный, особенно если вы собираетесь хранить свой виртуальный диск в нестандартном месте: тогда вам сначала надо добавить требуемую директорию в качестве «пула хранения». Однако все необходимые экзотические модули предоставит ваш собственный дистрибутив, а в таком случае почему бы и не рискнуть.

Производительность

Медленную или проворную ВМ они для вас создадут?

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

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

Здесь мы не берем в расчет 3D-производительность - это было бы не совсем честно, и для нее есть собственная категория через страницу. Однако для повседневных задач с использованием Terminal вы вряд ли заметите особую разницу между нашими кандидатами. Эксперименты с компиляцией ядра показали, что VirtualBox солидно отстает в соревновании. Сравнительный тест JavaScript SunSpider подтвердил этот вывод: обе задачи выполнились на 20 % медленнее, чем у остальных. Ввод/вывод (I/O) диска (особенно если диск у вас SSD) и сетевой трафик у всех наших кандидатов отличались быстротой. В конечном итоге VMware обеспечила себе перевес благодаря поддержке более новых процессоров Intel.

Функциональность

Что способен предложить каждый кандидат?

Все наши кандидаты предназначаются для разных сценариев использования, и поэтому у каждого имеются свои собственные, индивидуальные преимущества. Конечно, наличие некоторых стандартных функций безусловно подразумевается: к таковым, например, принято относить способность создать моментальные снимки, поддержку расширений процессоров Intel VT-x и AMD-V и гибкую настройку виртуального оборудования. Всё это предлагается всеми, однако некоторые приложения способны на более героические подвиги.

Здесь следует сделать оговорку, что Gnome Boxes и Virt-Manager являются всего-навсего интерфейсами к Qemu (через уровень абстракции libvirt). А Qemu по существу является эмулятором процессора, который способен обеспечивать виртуализацию через KVM, но тем не менее представляет собой целый мир.

Итак, займемся рассмотрением наших кандидатов по отдельности.

Gnome Boxes ★★

При вызове из командной строки Qemu поддерживает массу опций, большая часть которых в Gnome Boxes отсутствует: его целью (реализованной) является простота и понятность внешнего вида и работы. Через его удобный интерфейс мастера можно настроить виртуальную машину буквально тремя щелчками - направьте только его на соответствующий ISO. Boxes абстрагирует разницу между виртуальной и удаленной машиной, и вы можете соединяться и с той, и с другой через протоколы VNC, SPICE (который позволяет аудио работать через сеть) или OVirt.

Gnome Boxes

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

Virt-Manager ★★★★

Virt-Manager (он же Virtual Machine Manager) предлагает значительно больше функций Qemu (но опять-таки не все). Он, похоже, переборщил со своим списком поддерживаемых операционных систем x86, в частности, из семейства Linux.


Virt-Manager

Если оставить это в стороне, Virt-Manager относительно легко позволяет настроить машину любой сложности - можно добавлять любое оборудование, в том числе несколько сетевых интерфейсов. Помимо ВМ KVM, Virt-Man-ager умеет задействовать поддержку Qemu/ libvirt для гостей Xen и контейнеров LXC. Опционально он также может опрашивать гостевые ресурсы и, таким образом, обеспечивать очень симпатичные графики (вроде тех, что в разделе Производительность на стр. 25, на что требуется около 30 секунд после запуска Windows 10). Кроме того, Virt-Manager использует недавно добавленную в Qemu поддержку USB 3.0.

Совместимость и снапшоты

Можно ли перемещать виртуальные машины между реальными?

Иногда бывает нужно переместить ВМ между гипервизорами. Все наши программы могут импортировать машины, хранящиеся в формате Open Virtual Appliance (OVA), который является просто tar-архивом с образом диска VMDK (VMware), и данные о виртуальном оборудовании. VirtualBox разрешает экспорт в этот формат, но имеет еще и свой - Virtual Disk Image (VDI), а также справляется со всеми остальными.

Команду qemu-img можно применять для конвертирования форматов. Особо отметим его любимый формат QCOW2, позволяющий хранить многочисленные моментальные снимки системы внутри, с помощью отличного приема Copy On Write (COW).

Boxes, Virt-Manager, VirtualBox и VMware Workstation поддерживают моментальные снимки системы, сохраняя разные состояния своей ВМ. VMware Player позволяет иметь только один моментальный снимок для каждой машины в дополнение к ее текущему состоянию. Так что глубокое регрессионное тестирование исключается.

VirtualBox и VMware Workstation способны также «клонировать» ВМ, и это эффективный метод создания моментальных снимков системы: данные записываются на соответствующий клон, только если его состояние отличается от состояния родителя. VMware позволяет монтировать гостевой образ VMDK на хост, что тоже бывает удобно, хотя такой же трюк можно проделать посредством конвертирования в образ диска raw и использования стандартных инструментов Linux и арифметики, чтобы рассчитать смещение разделов.

VirtualBox ★★★★

Будучи изначально клиентом виртуализации рабочего стола, VirtualBox до сих пор, вероятно, основной инструмент для многих. У этой программы четкая структура, что упрощает настройку виртуальной машины, и множество полезных опций. Помимо ограничения количества ядер CPU, к которым имеет доступ гостевая ОС, VirtualBox позволяет указать предельный уровень использования CPU гостем в процентах. VirtualBox также поддерживает запись видео, так что за вечер вы сможете записать руководство по Windows для своего канала YouTube.


VirtualBox

Он может импортировать любые виртуальные диски, но предлагает только поддержку хост-контроллера USB 2.0, да и то только если вы установите проприетарный пакет расширений Oracle. Опции с распределенным доступом буфера обмена и drag-and-drop (в одном или в обоих направлениях, как пожелаете) весьма удобны. В VirtualBox имеются удобные индикаторы для сетевого и дискового I/O и для использования CPU.

Кстати, в статье « » мы подробно рассказывали о том, как установить и правильно настроить виртуальную машину VirtualBox.

VMware Player ★★★

Свободное предложение от VMware прошло долгий путь с момента своего появления в 2008 году. Самое примечательное, что это уже не плейер: он более чем способен создать для вас качественную виртуальную машину.


VMware Player

Помимо поддержки ряда сетевых конфигураций (NAT, bridged, host-only и т.д.), он предлагает очень симпатичные опции формирования сетевого трафика, что весьма удобно, если вы тестируете последнюю версию, скажем, клиента DDoS или смотрите, сколько вредоносных программ можно навесить на свою виртуальную машину Windows XP, пока она не лопнет. VMware также поддерживает устройства USB 3.0, а установка гостевых инструментов позволит использовать блестящую графику, буфер обмена с распределенным доступом и директории с распределенным доступом. Player несколько уступает, когда речь идет о моментальных снимках (он позволяет сделать только один), но мы раскритиковали его в предыдущем разделе.

VMware Workstation ★★★★★

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

VMware Workstation также предлагает поддержку новых команд современных процессоров Intel, а также позволяет настраивать машины с виртуальными CPU, в количестве до 16 и 64 ГБ ОЗУ. Однако программа Workstation в большой степени нацелена на интеграцию с остальным (довольно увесистым) пакетом VMware, и поэтому будет выглядеть уместнее прочих в среде предприятия.

Интеграция с рабочим столом

Будут ли они конфликтовать с вашей цветовой схемой?

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

VirtualBox использует Qt4, что особенно бесит на рабочем столе Arch Linux на основе Qt, где повсюду используется Qt5, но это лишь нечто вроде нишевого недостатка. Boxes идеально сочетается с Gnome 3, чего и следовало ожидать; Virt-Manager и VMware используют GTK3 и тоже идеально с ним сочетаются.

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

Особо выделяются режимы Unity в VMware (нет, это не способ сделать все убунтовидным) and Seamless в Virtual-Box - оба отображают окна приложений напрямую из гостя на рабочем столе хоста. Это очень хорошо для Linux-ВМ (исключая потенциальную путаницу между окнами гостя и хоста), однако попытка запустить
предпросмотр не слишком удалась; Windows 7 с включенным интерфейсом Aero тоже оказалась не самым приятным опытом.

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

Графическое ускорение

Можно ли избежать проблем программного рендеринга?

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

Но если требуется 3D-ускорение, надо брать VMware или VirtualBox. Как только вы справитесь с установкой гостевых дополнений (включая уводящий в сторону вопрос VirtualBox, с двойным отрицанием, который пытается отвратить вас от его экспериментальной поддержки WDDM, нужной, например, для интерфейса Windows 7 Aero), вам удастся насладиться 3D-ускорением в VirtualBox и в двух клиентах VMware.


Бум-бум, серебряный молот Максвелла опустился на, э-ээ, улей. Он погиб вскоре после того, как был сделан этот скриншот в Don’t Starve.

VirtualBox позволяет выделять виртуальной видеокарте до 256 МБ системного ОЗУ, а VMware - до 2 ГБ. Обратите внимание, что эти гигабайты не берутся у вашей реальной видеокарты, так что зачастую вы не увидите особых улучшений свыше 256 MБ. VirtualBox также обеспечивает 2D-ускорение для гостевых Windows, что должно способствовать ускорению рендеринга видео, увеличению экрана и коррекции цвета, хотя во многом это зависит от конфигурации хоста - на быструю машину эта настройка не особо повлияет. Виртуальная машина Windows, вероятно, не запустит Battlefield 4 [Поле битвы] или Middle-earth: Shadow of Mordor [Среднеземье: Тень Мордора] (получается, нам сильно повезло, что они портированы в Linux), когда все доведено до 11, но более старые или менее требовательные игры пойдут отлично: мы добрый час угрохали на популярную инди-игру Don’t Starve [Не зачахни], начисто позабыв про наше Сравнение.

На VMware все работало лучше, чем на VirtualBox, но, возможно, дело тут было в более выигрышной конфигурации - на Arch Linux мы использовали самый свежий проприетарный драйвер Nvidia, что могло обусловить перевес одного над другим.

Вердикт

Виртуализация - тема для Сравнений давняя и сложная. Желая запускать 3D-игры, вы даже не взглянете на Gnome Boxes или Virt-Manager, и если только вы не добьетесь в VirtualBox лучших результатов, чем мы, вы выберете своим гипервизором VMware. Но опять же, эта технология отнюдь не такая зрелая, как работающий в родном формате DirectX 11. Возможно, с играми вам даже больше повезет в Wine [Ред.: - Или нет.] при каких-нибудь экспериментальных заплатках производительности. Мы вообще-то не в восторге от лицензий VMware, особенно от той, которая заставляет вас платить после 30-дневного пробного периода, однако для некоторых функции уровня предприятия в Workstation будут истинным благом. В частности, если использовав vCenter Converter из VMware, вы виртуализуете машину одним щелчком - идеально, если требуется протестировать что-то новое на своей текущей системе.

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


Пузыри выглядят неплохо, если не видеть усилий, затраченных на их рендеринг.

Но в победители выходит только один (ничья - редкое исключение), и на сей раз это Virt-Manager - ну не могли же мы позволить выиграть VMware. Virt-Manager позволяет взнуздать большую часть мощи Qemu, не прибегая к пространным заклинаниям из командной строки. Виртуальные машины можно ставить на паузу, перенастраивать, перемещать и клонировать - и все это без особых хлопот. Единственное, чего ему не хватает - это поддержки графическо -го ускорения, но как знать, возможно, она и появится. VMware Player и Gnome Boxes делят второе место, поскольку они оба набрали высокие баллы за свою простоту, и нам нравится значок Boxes, на котором изображен тессеракт (или гиперкуб, или куб в кубе - как вам будет угодно).

Virt-Manager ★★★★
Всем бы менеджерам так хорошо работать.

VirtualBox ★★
Некогда единственное решение, а теперь на обочине.

VMware Player ★★★
Быстрый и удобный, да вот лицензия подвела.

VMware Workstation ★★
Быстрый и полнофункциональный, но не бесплатный.

Boxes ★★★
Простейший способ установить и настроить ВМ.

Если вы хоть раз устанавливали какие-то программы, проводили над своим компьютером какие-то эксперименты, то прекрасно знаете о том, сколько времени уходит на восстановление его первозданного состояния. Нередко ради этого приходится полностью переустанавливать систему.

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

Что такое виртуальная машина?

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

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

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

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

Частенько пользователи ищут сравнение виртуальных машин, пытаясь выбрать среди них самую лучшую. Необходимо отметить, что в спорах нередко всплывает та самая VMware, обладающая рядом несомненных преимуществ. Разработчики программы постоянно вносят в свой продукт поддержку практически всех существующих ОС, включая те, которые только-только успели выйти. В частности, именно это приложение в свое время позволяло запустить Windows 8, тогда как в популярном Virtual Box система запускаться отказывалась напрочь.

Но есть у лидера негласного состязания один недостаток. Программа платная. Разумеется, что у профессионалов, которые используют ее возможности для тестирования своих программ, трудностей не возникает, но вот прочим хотелось бы все-таки посоветовать не связываться с ломаными программами и использовать бесплатный Virtual Box. Хоть эти виртуальные машины не пользуются особой популярностью в среде профессионалов, вам их возможностей хватит с избытком.

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

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

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

Параллельно вы можете установить в виртуальную машину другие операционные системы: различные дистрибутивы Linux, Mac OS X и т. д. Одновременно вы можете использовать на своем компьютере, например, на основной системе Windows 10, а на виртуальной машине Windows 7, Ubuntu, и Mac OS X.

Наиболее популярные программы для создания виртуальных машин (ВМ) для обычных пользователей (есть большой корпоративный сегмент систем виртуализации): Oracle VirtualBox (бесплатная), VMware (бесплатный для личного пользования VMware Player, платная VMware Workstation), Parallels (для компьютеров с Mac OS X), Windows Virtual PC (в Windows 7, начиная с редакции Pro, поддерживается бесплатная установка виртуальной среды Windows XP Mode), Hyper-V (работает в x64 битных версиях Windows, начиная с Windows 8) и другие.

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

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

Виртуальные машины (ВМ), в основном, применяют для следующих целей:

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

Например, на моем компьютере в разное время, были установлены в виртуальной среде следующие операционные системы: Windows XP, Windows 7, Windows 8.1, Windows 10, Mac OS X, Linux Mint, Android.

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

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

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

На этом изображении вы можете увидеть, что на моем компьютере установлена Windows 10, а в окне виртуальной машины (я специально уменьшил окно программы виртуализации) запущена операционная система Windows 8.1. Таким образом, на моем компьютере в этот момент работали одновременно две разные операционные системы, независимо друг от друга.

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

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

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

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

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

На этом изображении, на виртуальной машине VMware Workstation запущена операционная система Mac OS X, в окне которой открыт браузер Safari. В VMware Workstation гостевая система может быть раскрыта на весь экран монитора вашего компьютера.

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

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

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

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

Заключение

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

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

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

Итак, начнем с того, что виртуализация делится на три типа:

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

С виртуализацией представлений знакомы многие из вас: самый яркий пример – это терминальные службы Windows Server. Терминальный сервер предоставляет свои вычислительные ресурсы клиентам, и клиентское приложение выполняется на сервере, клиент же получает только «картинку», то бишь представление. Такая модель доступа позволяет, во-первых – снизить требования к программно-аппаратному обеспечению на стороне клиента, во-вторых – снижает требования к пропускной способности сети, в-третьих – позволяет повысить безопасность. Что касается оборудования – то в качестве терминальных клиентов могут использоваться даже смартфоны или старые компьютеры вплоть до Pentium 166, не говоря уже о специализированных тонких клиентах. Существуют, к примеру, тонкие клиенты в форм-факторе розетки Legrand , монтируемые в короб. На клиентских рабочих местах достаточно установить только монитор, клавиатуру и мышь – и можно работать. Для работы с терминальным сервером не обязательно иметь высокоскоростное подключение к локальной сети, вполне достаточно даже низкоскоростного подключения с пропускной способностью 15-20 кбит/с, поэтому терминальные решения очень подходят фирмам, имеющим сильно распределенную структуру (к примеру – сети небольших магазинов). Кроме того, при использовании тонких клиентов значительно повышается безопасность, потому что пользователям можно разрешить запускать только ограниченный набор приложений, и запретить устанавливать свои собственные приложения. В принципе, то же самое можно сделать и с полноценными клиентскими рабочими станциями, но с использованием терминальных служб это будет сделать гораздо проще, особенно – не предоставляя доступ целиком к рабочему столу, а лишь публикуя отдельные приложения (возможно в Citrix Metaframe/PS, а так же в Windows Server 2008 и выше). Более того, никакую информацию нельзя будет скопировать на и с внешнего носителя, если это явно не разрешено в настройках терминальных служб. То есть проблема «вирусов на флэшках» отпадает автоматически. Еще одно неоспоримое достоинство – снижение сложности администрирования: упрощается обновление приложений (достаточно обновить их на сервере), и упрощается работа служб поддержки: к терминальной сессии любого пользователя можно подключиться удаленно без установки дополнительного ПО.
Недостатков у таких систем два: во-первых – необходимость покупки более мощных серверов (хотя это может быть дешевле, чем множество клиентских рабочих станций с ТТХ, достаточными для запуска приложений локально), во-вторых – появление единой точки отказа в виде терминального сервера. Эта проблема решается за счет использования кластеров, или ферм серверов, но это приводит к еще большему удорожанию системы.

Виртуализация приложений – достаточно интересное, и относительно новое направление. Рассказывать здесь подробно о нем я не буду, поскольку это тема для целой отдельной статьи. Коротко говоря, виртуализация приложений позволяет запускать отдельное приложение в своей собственной изолированной среде (иногда называется «песочница», sandbox). Такой способ помогает решить множество проблем. Во-первых – опять же безопасность: приложение, запущенное в изолированной среде – не способно нанести вред ОС и другим приложениям. Во-вторых – все виртуализированные приложения можно обновлять централизованно из одного источника. В-третьих – виртуализация приложений позволяет запускать на одном физическом ПК несколько разных приложений, конфликтующих друг с другом, или даже несколько разных версий одного и того же приложения. Более подробно о виртуализации приложений можно посмотреть, к примеру, в этом вебкасте: www.techdays.ru/videos/1325.html Возможно, однажды я даже напишу статью на эту тему.

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

Но кроме этого, виртуализация серверов может использоваться и в продакшн-среде. Причин тому много.
Виртуализация позволяет сократить количество серверов благодаря консолидации, то есть там, где раньше требовалось несколько серверов – теперь можно поставить один сервер, и запустить нужное число гостевых ОС в виртуальной среде. Это позволит сэкономить на стоимости приобретения оборудования, а так же снизить энергопотребление, а значит и тепловыделение системы – и, следовательно, можно использовать менее мощные, и, соответственно – более дешевые системы охлаждения. Но у этой медали есть и обратная сторона, и не одна. Дело в том, что при внедрении решений на базе виртуализации, скорее всего придется покупать новые сервера. Дело в том, что виртуальные сервера используют аппаратные ресурсы физического сервера, и, соответственно – понадобятся более мощные процессоры, большие объемы оперативной памяти, а так же более скоростная дисковая подсистема, и, скорее всего – большего объема. Кроме того, некоторые системы виртуализации (в частности – MS Hyper-V) требуют поддержки процессором аппаратных технологий виртуализации (Intel VT или AMD-V) и некоторых других функций процессора. Многие процессоры, которые выпускались до недавнего времени, в частности – все x86_32bit – этим требованиям не удовлетворяют, и поэтому от старых, хотя и вполне рабочих серверов придется отказаться. Однако же, один более мощный сервер скорее всего будет стоить намного дешевле нескольких менее мощных, да и старые сервера, скорее всего давно пора менять из-за морального устаревания.

Есть еще один очень важный момент: виртуализация северов позволяет до предела упростить администрирование инфраструктуры. Главное преимущество, которое оценят все сисадмины – это возможность удаленного доступа к консоли виртуальных серверов на «аппаратном», точнее – «вирутально-аппаратном» уровне, независимо от установленной гостевой ОС и ее состояния. Так, чтобы перезагрузить «зависший» сервер, теперь не нужно бежать в серверную, или покупать дорогостоящее оборудование типа IP-KVM-переключателей, достаточно просто зайти в консоль виртуального сервера и нажать кнопку «Reset». Помимо этого, виртуальные сервера поддерживают технологию моментальных снимков (о ней см. мою предыдущую статью), а так же бэкап и восстановление виртуальных систем намного легче.

Еще одно неоспоримое преимущество – ОС, запущенная внутри виртуальной машины (гостевая ОС) понятия не имеет, какое оборудование установлено на физическом сервере, внутри которого она работает (хост). Поэтому, при замене железа, при апгрейде или даже переезде на новый сервер необходимо обновить драйверы только на ОС самого хоста (хостовой ОС). Гостевые ОС по будут работать как и раньше, поскольку «видят» только виртуальные устройства.

Так же, хочется напомнить, что в виртуальной среде могут действовать особые правила лицензирования ПО (в частности, покупка лицензии на Microsoft Windows Server 2008 Enterprise позволяет использовать бесплатно четыре копии ОС в качестве гостевой, а Microsoft Windows Server 2008 Datacenter вообще разрешает использовать неограниченное число гостевых ОС при условии полного лицензирования по процессорам).

Еще нельзя не упомянуть о технологиях отказоустойчивости. Физические сервера, на которых запускаются виртуальные машины, могут быть объединены в кластер, и в случае отказа одного из серверов – автоматически «переезжать» на другой. Полной отказоустойчивости добиться не всегда возможно (в частности, в MS Hyper-V такой «внезапный переезд» будет выглядеть так же, и иметь такие же возможные последствия, как внезапное обесточивание сервера), но возможные простои сильно сократятся: «переезд» занимает несколько минут, тогда как ремонт или замена самого сервера может занять часы, а то и дни. Если же «переезд» виртуальных машин происходит в штатном режиме, то он может пройти совершенно незаметно для пользователей. Такие технологии у разных вендоров называются по-разному, к примеру у MS она называется «Live Migration», у VMware – Vmotion. Использование таких технологий позволит проводить работы, связанные с выключением сервера (к примеру – замену некоторых аппаратных компонент, или перезагрузку ОС после установки критических обновлений) в рабочее время и не выгоняя пользователей из их любимых приложений. Кроме этого, если инфраструктура построена соответствующим образом – запущенные виртуальные машины могут автоматически перемещаться на менее нагруженные сервера, или же наоборот «разгружать» наиболее загруженные. В инфраструктуре на базе технологий Microsoft для этого используются System Center Virtual Machine Manager и Operations Manager.

В заключение темы по виртуализации серверов - отмечу, что виртуализация не всегда одинаково полезна. В частности, не всегда будет хорошей идеей переносить в виртуальную среду высоконагруженные сервера, а особенно - высоконагруженные по дисковой подсистеме - это «тяжелые» СУБД, Exchange Server, особенно - роль Mailbox Server, и прочие высоконагруженные приложения. А вот сервера с меньшей нагрузкой (контроллеры доменов AD, WSUS, всевозможные System Center * Manager, веб-сервера) виртуализировать можно и даже нужно. Замечу, кстати, что именно с контроллерами доменов - очень желательно, чтобы хотя бы один из контроллеров был «железным», то есть не виртуальным. Нужно это потому, что для корректной работы всей инфраструктуры желательно, чтобы при запуске всех остальных серверов хотя бы один КД уже был доступен в сети.

Резюме

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

Достоинства такой системы:

  • Снижение требований к «железу» на стороне клиентов
  • Снижение требований к пропускной способности сети
  • Повышение безопасности
  • Значительное упрощение администрирования и поддержки

Недостатки:
  • Повышения требований к серверам, как по производительности, так и по надежности
  • Возможная единая точка отказа

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

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

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

Недостатки:
  • Некоторая сложность в понимании технологий и в практическом внедрении.

Если же вам нужно освободить место в стойке, снизить энергопотребление систем, избавиться от «серверного зоопарка» - то ваше решение – виртуализация серверов.

Достоинства такого решения:

  • Экономия места в стойках
  • Снижение энергопотребления и тепловыделения
  • Упрощение администрирования
  • Широкие возможности по автоматизации развертывания и управления серверами
  • Снижение вынужденных и запланированных простоев системы за счет failover-кластеров и live migration
  • Позволяет (при использовании ОС Microsoft Windows Server) сэкономить на лицензиях на гостевые ОС

Недостатки – в принципе, те же, что и у терминальных решений:

  • Повышение требований к аппаратному обеспечению серверов
  • Возможная единая точка отказа – физический хост и хостовая ОС

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