Нажмите "Enter", чтобы перейти к содержанию

Сравнение виртуальных машин: Сравнение VirtualBox, VMware и Hyper-V. Какая платформа лучше? — Starus Recovery

Содержание

Лучшая виртуальная машина: Обзор виртуальных машин

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

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

Еще по теме: Использование виртуальной машины VirtualBox

Лучшая виртуальная машина

Содержание

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

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

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

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

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

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

Сперва мы взяли двуядерный компьютер (из-за бюджетных ограничений) со свежим 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, позволяющий хранить многочисленные моментальные снимки [snapshot] системы внутри, с помощью отличного приема 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» мы подробно рассказывали о том, как установить и правильно настроить виртуальную машину 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 10 не слишком удалась; 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 ★★★
Простейший способ установить и настроить ВМ.

Сравнение виртуальных машин

Название Создатель Процессор хост-машины Гостевой процессор ОС хост-машины Официально поддерживаемые гостевые ОС Поддержка SMP в гостевых ОС Поддержка любой ОС Поддержка драйверов в гостевой ОС Принцип действия Лицензия Типичное применение Скорость работы гостевой ОС в сравнении с ОС хоста
Bochs Kevin Lawton [1] Intel x86, AMD64, SPARC, PowerPC, Alpha, MIPS, ARM Intel x86, AMD64 Windows, Linux,
OS X, IRIX, AIX, BeOS
DOS, Windows, xBSD, Linux Есть Есть  ? Эмулятор LGPL Хобби, разработка Очень низкая
Colinux Dan Aloni и другие [2] Intel x86 Такой же как и у родительской Windows NT (NT, 2000, XP, Server 2003), Linux Linux  ? Нет Некоторые Портирование GPL version 2 Изоляция Без потерь
Denali University of Washington Intel x86 Intel x86 Denali Ilwaco, NetBSD Нет Нет  ? Паравиртуализация и портирование  ? Исследования Медленная
DOSBox Peter Veenstra, Sjoerd и сообщество [3] Intel x86, AMD64, SPARC, PowerPC, Alpha, MIPS Intel x86 GNU/Linux, Windows, Mac OS Classic, Mac OS X, BeOS, FreeBSD, OpenBSD, Solaris, QNX, IRIX, Kolibri Внешне эмулирует оболочку DOS Нет Нет Есть Эмуляция с помощью динамической трансляции или интерпретации GPL Исполнение приложений под DOS, в частности, игр Крайне низкая. Скорость работы никак не связана с тем, какое приложение исполняется
DOSEMU DOSEMU Intel x86 Intel x86 Linux DOS Нет Есть Есть Аппаратная виртуализация GPL version 2 Полная поддержка приложений Без потерь
FreeVPS PSoft Intel x86, AMD64 Совместимый Linux Различные дистрибутивы Linux Есть Нет n/a Виртуализация на уровне ОС GPL version 2 Хостинг, разделение сервисов, безопасность Без потерь
GUSS guss-hackers Intel x86 Intel x86 GNU/Linux GNU/Linux  ?  ?  ?  ? GPL  ?  ?
Integrity Virtual Machines Hewlett- Packard Itanium Itanium HP-UX HP-UX (анонсирована поддержка Linux, Windows, OpenVMS) Есть (4-way) Есть Необязательно Виртуализация Проприетарная Консолидация серверов Близка к производительности хост-системы

(не нужно ставить дополнительные гостевые сервера)

Jail FreeBSD Intel x86, Совместимый FreeBSD FreeBSD Есть Нет N/A Виртуализация на уровне ОС BSD Хостинг, разделение сервисов, безопасность Без потерь
KVM KVM Процессор Intel с поддержкой технологии VT Процессор Intel с поддержкой технологии VT Linux Linux Нет Нет N/A Паравиртуализация, Аппаратная виртуализация GPL2  ? Близка к производительности хост-системы
Linux-VServer Linux-VServer Intel x86, AMD64, IA-64, Alpha, PowerPC/64, PA-RISC/64, SPARC/64, ARM, S/390, SH/66, MIPS Совместимый Linux Различные дистрибутивы Linux Есть Нет N/A Виртуализация на уровне ОС GPL version 2 Хостинг, разделение сервисов, безопасность Без потерь
Mac on Linux Mac On Linux PowerPC PowerPC Linux Mac OS X, Mac OS 7. 5.2 to 9.2.2, Linux  ?  ?  ? Виртуализация GPL Без потерь
OpenVZ Проект сообщества, поддерживаемый Parallels, Inc. Intel x86, AMD64, IA-64 Intel x86, AMD64, IA-64 Linux Различные дистрибутивы Linux Есть Нет Совместимый Виртуализация на уровне ОС GPL Изоляция виртуализированных серверов Без потерь
Parallels Workstation Parallels, Inc. Intel x86, Intel VT-x Intel x86 Windows, Linux, Mac OS X (Intel version) Windows, Linux, FreeBSD, OS/2, eComStation, MS-DOS, Solaris Нет Есть Есть Виртуализация, легковесный гипервизор Проприетарная Хобби, разработка, тестирование, рабочая станция Близка к производительности хост-системы
PearPC Sebastian Biallas и другие [4] x86, AMD64, PowerPC PowerPC Windows, Linux, OS X, NetBSD OS X, Darwin, Linux Нет Есть Есть Эмуляция с помощью динамической трансляции GPL Хобби, разработка, рабочая станция 10% производительности хост-системы
QEMU Fabrice Bellard и другие Intel x86, AMD64, IA-64, PowerPC, Alpha, SPARC 32 and 64, ARM, S/390, M68k Intel x86, AMD64, ARM, SPARC 32 and 64, PowerPC, MIPS Windows, Linux, OS X, FreeBSD, BeOS Список постоянно меняется [5] Есть Есть  ? Динамическая рекомпиляция GPL/LGPL Хобби, разработка, рабочая станция, сервер От 10 до 20% скорости хост-системы [6]
QEMU с модулем kqemu Fabrice Bellard Intel x86, AMD64 Такой же как и у хост-системы Linux, FreeBSD, Windows Список постоянно меняется [7] Нет Есть  ? Виртуализация GPL Хобби, разработка, рабочая станция, сервер Близка к производительности хост-системы
QEMU с модулем qvm86 Paul Brook x86 x86 Linux, NetBSD, Windows Список постоянно меняется Нет Есть  ? Виртуализация GPL Хобби, разработка, рабочая станция, сервер Близка к производительности хост-системы
VDSmanager ISPsystem (ИСПсистем) Intel x86 Такой же как и у родительской FreeBSD FreeBSD Есть Нет N/A Виртуализация на уровне ОС Проприетарная Хостинг, разделение сервисов, безопасность Без потерь
View-OS Renzo Davoli и другие [8] Intel x86, PowerPC, AMD64 (in progress) Такая же как и у хост-системы Linux 2. 6+ Исполняемые файлы Linux Есть Нет N/A Частичная виртуализация с помощью перехвата системных вызовов GPL version 2 Безопасность, изоляция, тестирование, мобильность Близка к производительности хост-системы (лучше с патчем ptrace ядра)
User-mode Linux Jeff Dike и другие Intel x86, PowerPC Такая же как и у хост-системы Linux Linux  ? Нет  ? Портирование GPL version 2 Изоляция Низкая
Virtual PC 2004 Microsoft Intel x86 Intel x86 Windows DOS, Windows, OS/2 Нет Есть Есть Virtualization (перехват гостевых вызовов) Проприетарная (бесплатная с июля 2006 года) Хобби, разработка, рабочая станция Практически без потерь, если используются расширения Virtual Machine additions
Virtual PC 2007 Microsoft Intel x86, x64 Intel x86 Windows Vista (Business, Enterprise, Ultimate), XP Pro, XP Tablet PC Edition DOS, Windows, OS/2 Нет Есть Есть Virtualization (перехват гостевых вызовов) Проприетарная (бесплатная с июля 2006 года) Хобби, разработка, рабочая станция Практически без потерь, если используются расширения Virtual Machine additions
VirtualPC 7 for Mac Microsoft PowerPC Intel x86 OS X Windows, OS/2, Linux Нет Есть Есть Динамическая рекомпиляция (поддерживается перехват гостевых вызовов) Проприетарная Хобби, разработка, рабочая станция Низкая
VirtualBox 2004 Innotek Intel x86 Intel x86 32-bit Windows, Linux, MacOS X DOS, Windows, Linux, OpenBSD Нет Есть Есть Динамическая рекомпиляция (основана на QEMU) Свободная и проприетарная версии (GPL, PUEL) Хобби, разработка, тестирование Практически без потерь, если используются расширения
VirtualLogix VLX VirtualLogix ARM, DSP C6000, Intel x86, Intel VT-x и VT-d, PowerPC Такая же как и у хост-системы Нет (инсталлируется на голое железо) Linux, C5, VxWorks, Nucleus, DSP/BIOS and proprietary OS Есть Есть Есть Паравиртуализация, портирование, аппаратная виртуализация Проприетарная Встроенные системы реального времени: мобильные телефоны, сетевые устройства и т. д. Близка к производительности хост-системы
Virtual Server 2005 R2 Microsoft Intel x86, AMD64 Intel x86 Windows 2003, XP Windows NT, 2000, 2003, Linux (Red Hat and SUSE) Нет Есть Есть Virtualization (перехват гостевых вызовов) Проприетарная (Free) Организация сервер-фармов Близка к производительности хост-системы при установленных c дополнениях для Virtual Machine
Virtuozzo (Parallels) Виртуоззо Рисерч Parallels, Inc. Intel x86, IA-64, AMD64 Intel x86, IA-64, AMD64 Linux & Windows Различные дистрибутивы Linux; Windows Есть Нет Совместимый Виртуализация на уровне ОС Проприетарная Консолидация серверов, восстановление после сбоев, сервис-провайдеры Без потерь
VMware ESX Server 3.0 VMware Intel x86, AMD64 Intel x86, AMD64 Нет (инсталлируется на голое железо) Windows, RedHat, SuSE, Netware, Solaris Есть

(дополнительно) (до 4-ч)

Есть Есть Виртуализация x86 Проприетарная Консолидация серверов уровня предприятия, организация непрерывной работы, разработка/тестироване Близка к производительности хост-системы
VMware ESX Server 2. 5.3 VMware Intel x86, AMD64 Intel x86 Нет (инсталлируется на голое железо) Windows, RedHat, SuSE, FreeBSD, Netware Есть

(Add-on) (2 way)

Есть Есть Виртуализация x86 Проприетарная Консолидация серверов уровня предприятия, организация непрерывной работы, разработка/тестироване Близка к производительности хост-системы
VMware Server VMware Intel x86, AMD64 Intel x86, AMD64 Windows, Linux DOS, Windows, Linux, FreeBSD, Netware, Solaris, Virtual Appliances[9] Есть Есть Есть Виртуализация x86 Проприетарная (Free) Консолидация серверов, разработка, тестирование При использовании VMware Tools практически без потерь
VMware Workstation 5.5 VMware Intel x86, AMD64 Intel x86, AMD64 Windows, Linux DOS, Windows, Linux, FreeBSD, Netware, Solaris, Virtual Appliances[10] Есть Есть Есть Виртуализация x86 Проприетарная Технические специалисты, разработчики, тестировщики, тренеры При использовании VMware Tools практически без потерь
VMware Player VMware Intel x86, AMD64 Intel x86, AMD64 Windows, Linux DOS, Windows, Linux, FreeBSD, Netware, Solaris, Virtual Appliances[11] Нет Есть Есть Виртуализация x86 Проприетарная (Free) Технические специалисты, разработчики, тестировщики, тренеры (заранее подготовленная машина) При использовании VMware Tools практически без потерь
SimNow AMD AMD64 AMD64 Linux (64bit), Windows (64bit) Linux, Windows (32bit и 64bit) Есть Есть Есть Кеширование кода, виртуализация Проприетарная (AMD) Разработка, сервер Почти в 10 раз медленней
Solaris Zones Sun Microsystems OpenSolaris Intel x86, AMD64, UltraSPARC, SPARC64 Совместимая Solaris Solaris, Linux (BrandZ) Есть Нет - Виртуализация на уровне ОС CDDL (Free) бизнес, разработка, консолидация серверов, хостинг, разделение сервисов, безопасность, изоляция Близка к производительности хост-системы
SVISTA 2004 Serenity Systems International Intel x86 Intel x86 Windows, OS/2, Linux, FreeBSD  ? Нет  ?  ?  ? Проприетарная Хобби, разработка, рабочая станция  ?
TRANGO TRANGO Systems, Grenoble, France ARM, XScale, MIPS, PowerPC Paravirtualized ARM, MIPS, PowerPC none: bare metal execution, Linux or Windows as dev. hosts Linux, eCos, µC/OS-II Есть Есть Есть Паравиртуализация, портирование, аппаратная виртуализация Проприетарная Мобильные телефоны, сетевые устройства и т.д. Без потерь
Xen Кембриджский университет, Intel, AMD Intel x86, AMD64, ((ведётся портирование на PowerPC и IA-64)) Такая же как у хост-системы NetBSD, Linux Linux, NetBSD, FreeBSD, OpenBSD, Windows XP & 2003 Server (требует версию не ниже 3.0 и процессор поддерживающий технологию Vanderpool или Pacifica), Plan 9 Есть Есть Не требуются Паравиртуализация, портирование или аппаратная виртуализация GPL  ? Без потерь
z/VM IBM z/Architecture z/Architecture и предшественники Никакая или такая же. Множество уровней вложенности, например VM/ESA работает внутри z/VM 4. 4, которая работает внутри z/VM 5.2, которая работает внутри z/VM 5.1. Linux on zSeries, z/OS, z/VSE, z/TPF, z/VM, VM/CMS, MUSIC/SP и предшественники Есть, реальная и виртуальная (гостевая система может получить больше процессоров, чем есть), динамическое назначение процессоров Есть Есть, но не обязательно Уникальная аппаратная виртуализация Проприетарная Универсальная Наивысшая. Обычно работают тысячи виртуальных машин на одной системе, одна или более на каждого пользователя
Название Создатель Процессор хост-машины Гостевой процессор ОС хост-машины Официально поддерживаемые гостевые ОС Поддержка SMP в гостевых ОС? Работает любая ОС? Поддержка драйверов в гостевой ОС? Принцип действия Лицензия Типичное приминение Скорость работы гостевой ОС в сравнении с ОС хоста

Лучшие виртуальные машины: Hyper-V, VirtualBox, VMware

Виртуальная машина – программа, позволяющая выделить часть ресурсов вашего ПК в отдельный виртуальный компьютер. Он эмулирует все элементы реального компьютера, в том числе жёсткий диск, USB-порты и сетевую карту. На “виртуальный компьютер” можно установить собственную операционную систему и нужные программы. Работать они будут также, как на реальном компьютере. Виртуальный компьютер даже можно подключить к локальной сети или к Интернет с собственным IP-адресом.

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

Три лучшие виртуальные машины

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

  • Microsoft Hyper-V
  • Oracle VirtualBox
  • VMware Workstation

Рассмотрим их основные отличия, преимущества и недостатки.

Виртуальнная машина Microsoft Hyper-V

Во все 64-битные версии операционных систем Windows 8 и Windows 10 уже встроена виртуальная машина Microsoft Hyper-V. Чтобы запустить её надо зайти в панель управления Windows. Выбрать раздел “Включение и выключение компонентов Windows”. В открывшемся окошке надо отметить пункт “Hyper-V”.

После перезагрузки можно запустить Hyper-V через интерфейс Modern. Для этого проще всего набрать “Hyper-V” в строке поиска:

После этого появится окно программы Hyper-V:

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

Бесплатная виртуальная машина Oracle VirtualBox

VirtualBox – бесплатная и простая в работе виртуальная машина. Она может запускать в качестве “гостевой” почти любую операционную систему, в том числе Windows, MacOS или Linux.

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

Скачать VirtualBox можно с официального сайта: https://www.virtualbox.org/

Виртуальная машина VMware Workstation

Если вы хотите развернуть на виртуальной машине постоянно-действующий сервер, лучше выбрать VMware Workstation. Это платная виртуальная машина, которая поддерживает работу с Windows и Linux.

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

Надо отметить, что у VMware Workstation есть бесплатный “младший брат” – VMWare Player. Плеер не умеет создавать новые виртуальные машины. Он может только запускать машины, ранее созданные в VMware Workstation. VMWare Player очень полезен на этапах тестирования новых программ. Разработчик может передать заказчику созданную им систему на ознакомление в виде образа виртуальной машины. Эта практика получает всё большее распространение. Так заказчику гораздо проще изучать новую систему, поскольку отпадает необходимость инсталлировать её самостоятельно.

Официальный сайт VMware Workstation: https://www.vmware.com/

Если вы хотите изучить какую-либо новую операционную систему, лучшим выбором будет бесплатная виртуальная машина ORACLE Virtual Box. Она поддерживает любые современные ОС и гибко настраивается. Если же вы хотите развернуть постоянно действующий виртуальный сервер, лучше выбрать платную VMWare Workstation.

3 лучшие Виртуальные Машины

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

Общие сведения о виртуальных машинах

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

Все отличия существующих виртуальных машин, по сути, сводятся лишь к перечню поддерживаемых ими операционных систем, а так же стоимости. Наиболее распространены сегодня системы VirtualBox, Windows Virtual PC и VMWare. Чем же они отличаются?

ORACLE VirtualBox - универсальная, бесплатная виртуальная машина

VirtualBox - очень простой, мощный и бесплатный инструмент для виртуализации, развивающийся благодаря поддержке знаменитой корпорации ORACLE. Позволяет устанавливать в качестве "гостевой" практически любую современную операционную систему, будь то Windows, MacOS или любой из многочисленных представителей семейства Linux.

Создание виртуальных машин в VirtualBox выполняется с помощью пошагового мастера. Разобраться в её работе сможет любой, более-менее опытный пльзователь ПК. Система поддерживает работу с сетями, поэтому, при желании можно дать виртуальной машине выход в Интернет.

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

Windows Virtual PC - виртуальная машина от Microsoft

Экран Windows Virtual PCWindows Virtual PC - виртуальная машина для работы только и исключительно с Windows. Установка Linux, MacOS и прочих операционных истем не поддерживается.

Virtual PC позволяет запускать несколько разных копий Windows на одном компьютере. При этом можно задать им приоритет, чтобы в автоматическом режиме выделять под нужды той или иной виртуальной машины большее количество ресурсов замедляя работу остальных.

Моноплатформенность виртуальной машины Virtual PC является её главным недостатком. Впрочем, если требуется тестировать только программы, работающие на Windows, это не актуально. Некоторым недостатком можно считать менее функциональный и менее удобный чем в VirtualBox интерфейс. В остальном Virtual PC вполне надёжный инструмент, позволяющий создавать виртуальные машины с операцонными системами Microsoft Windows.

VMware Workstation - для серьёзных задач

Экран системы виртуализации VMWareVMware Workstation – мощная, платная, максимально-надёжная программа для виртуализации, которая поддерживает работу с Windows и Linux. Для виртуализации MacOS, данная машина не предназначена.

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

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

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

Необходимо отметить, что у VMware Workstation есть бесплатный "младший брат" - VMWare Player. Плеер не умеет создавать виртуальные машины, но позволяет запускать ранее созданные в VMware Workstation. Эта программа будет полезна в случаях тестирования, когда, к примеру, разработчик какой-либо автоматизированной системы передат её на ознакомление в виде образа виртуальной машины. Эта практика получает всё большее распространение, поскольку избавляет пользователя от необходимости разворачивать незнакомую программу самостоятельно.

Резюме

Если вы хотите просто потестировать какую-либо программу или новую операционную систему, лучшим выбором будет бесплатная виртуальная машина - ORACLE Virtual Box. Она поддерживает любые современные ОС и гибко настраивается.

VirtualBox ориентирована на актуальные версии операционных систем, поэтому, если нужно обеспечить работу какой-либо программы, написанной для одной из старых версий Windows, идеальным выбором будет Windows Virtual PC - она наиболее надёжно реализует тонкости работы любых версий Windows на самом современном оборудовании.

Если же вы хотите развернуть серьёзное виртуальное решение, требующее стабильной, продолжительной работы, следует выбрать VMWare Workstation. Хоть это и платная система, но она гарантирует надёжность работы для ответственных задач.

Что такое виртуальная машина? - Российская Федерация

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

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

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

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

Вам могут встретиться разные названия этой технологии, например виртуальный сервер, экземпляр виртуального сервера (VSI) или виртуальный частный сервер (VPS), однако в этой статье мы будем использовать самый простой термин — «виртуальная машина».

Принцип работы виртуализации

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

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

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

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

Существует два основных типа гипервизоров.

Гипервизоры 1 типа работают непосредственно на физическом оборудовании (обычно сервере), заменяя собой ОС. Для создания виртуальных машин и управления ими через гипервизор, как правило, используется отдельный программный продукт. Некоторые инструменты управления, например VMware vSphere, предоставляют возможность выбора гостевой ОС для установки на виртуальную машину.

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

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

Полный обзор гипервизоров приведен в документе Гипервизоры: полное руководство.

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

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

  • Использование ресурсов и повышение рентабельности: благодаря тому, что на одном физическом компьютере может одновременно работать несколько виртуальных машин, клиентам не нужно каждый раз приобретать новый сервер для запуска новой ОС; это повышает рентабельность каждого приобретенного ранее аппаратного устройства.
  • Масштабирование: благодаря облачным вычислениям можно легко развернуть несколько экземпляров одной виртуальной машины для повышения эффективности работы при пиковой нагрузке.
  • Переносимость: при необходимости виртуальные машины можно переносить между физическими компьютерами сети. Это позволяет распределять задачи между серверами со свободной вычислительной мощностью. Более того, возможность переноса виртуальных машин между локальными и облачными средами обеспечивает поддержку сценариев на основе гибридного облака, когда вычислительные ресурсы используются совместно вашим ЦОД и поставщиком облачных услуг.
  • Гибкость: создать виртуальную машину легче и быстрее, чем установить ОС на физическом сервере, для этого достаточно создать копию виртуальной машины с уже установленной ОС. Разработчики и тестировщики ПО могут создавать среды по запросу для выполнения новых задач.
  • Безопасность: по сравнению с операционными системами, работающими непосредственно на базе оборудования, виртуальные машины предлагают несколько способов повышения безопасности. Виртуальная машина — это файл, который можно проверить на наличие вредоносного кода с помощью внешней программы. В любой момент времени можно создать моментальный снимок виртуальной машины для возврата к предыдущему состоянию в случае заражения вредоносным кодом. Быстрые и простые процедуры создания виртуальных машин позволяют полностью удалить взломанную виртуальную машину и мгновенно воссоздать ее в исходном состоянии.

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

Существует несколько сфер применения виртуальных машин для ИТ-администраторов предприятий и для конечных пользователей. Вот некоторые из них:

  • Облачные вычисления: за последние десять с лишним лет виртуальные машины превратились в базовый компонент облачных вычислений и обеспечили возможность успешного выполнения и масштабирования десятков разных типов приложений и задач.
  • Поддержка DevOps: виртуальные машины прекрасно подходят разработчикам на предприятиях благодаря возможности настраивать шаблоны виртуальных машин с учетом внутренних процессов разработки и тестирования ПО. Разработчики могут создавать виртуальные машины для конкретных задач, например статических тестов ПО, включая автоматизированные процессы разработки с такими этапами. Все это помогает оптимизировать инструментарий DevOps.
  • Тестирование новой операционной системы: виртуальная машина позволяет протестировать новую ОС на рабочем столе, не затрагивая при этом основную ОС.
  • Изучение вредоносных программ: виртуальные машины могут применяться исследователями вредоносного кода, которым регулярно нужны «чистые» системы для тестирования.
  • Запуск несовместимых программ: иногда может возникнуть потребность в дополнительной ОС для запуска определенной программы, которая не поддерживается в основной ОС. В качестве примера можно привести программное обеспечение Dragon с функциями голосовой диктовки. Компания Nuance, производитель этого продукта, прекратила поддержку macOS. Однако проблему можно решить следующим образом: гипервизор для рабочего стола, например VMware Fusion или Parallels, позволяет запустить Windows в виртуальной машине, обеспечив доступ к нужной версии ПО.
  • Безопасный просмотр веб-сайтов: использование виртуальной машины для работы в Интернете позволяет посещать веб-сайты, не беспокоясь о вирусах. Можно создать моментальный снимок системы и выполнять откат после каждой сессии работы в Интернете. Любой пользователь может самостоятельно настроить эту функцию с помощью гипервизора 2 типа. Либо же администратор может предоставить временный виртуальный рабочий стол на сервере.

Типы виртуальных машин

В этом разделе рассматриваются лишь некоторые из множества видов виртуальных машин:

  • Виртуальные машины Windows
  • Виртуальные машины Android
  • Виртуальные машины Mac
  • Виртуальные машины iOS
  • Виртуальные машины Java
  • Виртуальные машины Python
  • Виртуальные машины Linux
  • Виртуальные машины VMware
  • Виртуальные машины Ubuntu

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

Большинство гипервизоров поддерживают виртуальные машины, работающие в ОС Windows как гостевые системы. Гипервизор Microsoft Hyper-V входит в состав операционной системы Windows. Во время установки он создает родительский раздел, содержащий сам гипервизор и основную ОС Windows, которые обладают привилегированным доступом к аппаратному обеспечению. Другие операционные системы, включая гостевые системы Windows, выполняются в дочерних разделах, взаимодействующих с аппаратным обеспечением через родительский раздел.

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

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

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

В некоторых проектах, например Shashlik или Genymotion, используется эмулятор, который воссоздает архитектуру ARM в программном обеспечении. Альтернативный проект Android-x86 переносит Android на архитектуру x86. Для ее запуска необходимо установить программу Android-x86 в качестве виртуальной машины с использованием гипервизора VirtualBox 2 типа. Еще одно альтернативное решение, Anbox, запускает операционную систему Android в ядре ОС Linux хоста.

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

ОС macOS от Apple может работать исключительно на оборудовании Apple; лицензионное соглашение с конечным пользователем запрещает запускать macOS на оборудовании других производителей как виртуальную машину или иным способом. Для создания виртуальных машин с гостевой ОС macOS можно использовать гипервизоры 2 типа на базе оборудования Mac.

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

На сегодняшний день невозможно запустить iOS в виртуальной машине, поскольку Apple разрешает запускать ОС iOS исключительно на устройствах iOS и строго контролирует свой продукт.

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

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

Платформа Java — среда выполнения, предназначенная для программ на языке разработки программного обеспечения Java. Язык Java создавался под лозунгом «написано однажды, выполняется где угодно». Это означает, что любая программа Java может работать на любом оборудовании с платформой Java. Для этого на платформе Java предусмотрена виртуальная машина Java (JVM).

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

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

Более подробная информация о Java приведена в документе Java: полное руководство.

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

Виртуальная машина Python, как и JVM, не запускает гипервизор и не включает гостевую ОС. Этот инструмент обеспечивает возможность выполнения программ на языке программирования Python на множестве различных ЦП.

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

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

Linux — распространенная гостевая ОС, применяемая во многих виртуальных машинах. Это еще и популярная ОС хоста для работы виртуальных машин, имеющая собственный гипервизор под названием «виртуальная машина на основе ядра» (KVM). KVM была добавлена в ядро Linux еще в 2007 году. Несмотря на то, что проект создавался на основе открытого исходного кода, сегодня компания-разработчик KVM принадлежит Red Hat.

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

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

В документе VMware: полное руководство приведена исчерпывающая информация о VMware.

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

Ubuntu — дистрибутив Linux, разработанный компанией Canonical. Он доступен в двух версиях — для ПК и сервера — с возможностью установки в виде виртуальной машины. Ubuntu можно развернуть как гостевую ОС в Microsoft Hyper-V. Он предоставляет оптимизированную версию Ubuntu Desktop, которая отлично работает в расширенном режиме Hyper-V (Enhanced Session Mode), обеспечивая тесную интеграцию между хостом Windows и виртуальной машиной Ubuntu. Кроме того, поддерживаются следующие возможности: интеграция буфера обмена, динамическое изменение размера рабочего стола, общие папки и перемещение указателя мыши между рабочим столом хоста и гостевой системы.

Сравнение моделей с одним и несколькими арендаторами

В средах облачных вычислений виртуальные машины обычно доступны в двух вариантах — с одним и несколькими арендаторами.

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

Виртуальные машины с одним арендатором доступны в двух вариантах — выделенные хосты и выделенные экземпляры.

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

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

Модели ценообразования для виртуальных машин

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

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

Сравнение виртуальных машин и физических серверов

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

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

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

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

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

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

Сравнение виртуальных машин и контейнеров

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

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

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

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

Более подробная информация приведена в статье блога Сравнение контейнеров и виртуальных машин: в чем отличия?.

В следующем видеоролике Сай Веннам подробно разбирает основные принципы контейнеризации и ее отличия от виртуальных машин (8:09):

Стратегия выбора поставщика виртуальных машин

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

  • Надежная поддержка: убедитесь в наличии круглосуточной поддержки клиентов по телефону, электронной почте, через чат или недалеко от вашего офиса. Важно, чтобы в службе поддержки работали реальные люди, которые помогут найти решение в критической ситуации. Кроме того, следует обратить внимание на поставщиков услуг, предоставляющих дополнительные услуги.
  • Управляемые услуги: предлагает ли поставщик как управляемые, так и неуправляемые облачные решения? Если вы не владеете всеми тонкостями технологии виртуализации, выбирайте поставщика, который возьмет на себя все задачи по настройке, обслуживанию и текущему мониторингу производительности.
  • Интеграция ПО: насколько эффективно виртуальная машина будет взаимодействовать с другими средами? Операционные системы, сторонние программы, технологии и приложения с открытым исходным кодом расширяют спектр доступных решений для вашей компании. Желательно, чтобы поставщик виртуальных машин обеспечивал поддержку самых популярных продуктов других поставщиков. Примечание: опасайтесь привязки к определенному поставщику.
  • Высококачественные сети и инфраструктура: насколько современной является инфраструктура для новой виртуальной машины? Сюда относятся связанные физические серверы, современные ЦОД и магистральная сеть. Со своей стороны поставщик облачных услуг должен предоставить современное оборудование и технологию высокоскоростной сети.
  • Расположение, расположение и еще раз расположение: чем ближе к пользователям расположены данные, тем проще будет обеспечить требования к малому времени отклика, безопасности и скорости доставки услуг. Хорошая глобальная сеть на основе разбросанных по всему миру ЦОД играет важнейшую роль в обеспечении доступа к данным в нужном месте и в нужный момент времени.
  • Резервное копирование и восстановление: каким образом поставщик облачных услуг планирует обеспечивать бесперебойную работу виртуальных машин в случае непредвиденных событий? Предоставляет ли поставщик дополнительные услуги резервного копирования и избыточности для виртуализированной среды? Необходимо ответственно подойти к вопросу обеспечения бесперебойной работы.
  • Удобство масштабирования: насколько быстро можно развернуть, зарезервировать, приостановить или обновить виртуальную машину? Что касается масштабируемости виртуальных машин, самый лучший ответ — «по запросу».
  • Гибкие конфигурации ресурсов ЦП: чем больше вариантов конфигурации доступно, тем лучше. Не каждая конфигурация виртуальной машины подходит на все случаи жизни. Выбирайте поставщика виртуальной машины, предоставляющего различные пакеты конфигураций с одним или несколькими арендаторами.
  • Уровни защиты: никогда не будет лишним поинтересоваться у поставщика услуг предпринимаемыми мерами защиты. Бизнес-данные — самый ценный капитал вашей компании, особенно когда речь идет о конфиденциальной информации клиентов. Частные сетевые линии, федеральные ЦОД, встроенные функции шифрования и соблюдение регулятивных норм чрезвычайно важны для защиты вашего самого ценного ресурса.
  • Полная поддержка миграции: ваши приоритеты в ИТ неизбежно будут меняться. Это факт. Любой поставщик виртуальных машин должен предоставлять возможность перемещения задач между гибридными, локальными и удаленными средами. Выбирайте варианты сетевой миграции данных, ориентированные на приложения, с полным циклом получения и обработки данных.

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

IBM Cloud предлагает для работы с виртуальными машинами различные конфигурации как относительно технических возможностей, так и с точки зрения ценообразования. Технический профиль виртуальной машины можно выбрать, исходя из ваших требований к вычислительной мощности, памяти, объему локального хранилища, возможностям GPU, т. е. настроить систему для своих конкретных задач. Кроме того, для управления виртуальными машинами VMware можно использовать решения IBM Cloud for VMware.

В зависимости от нормативных требований и требований к безопасности можно выбрать общедоступный или частный узел. Частная среда с одним арендатором может быть размещена на выделенном хосте, выбранном вами из более чем 60 ЦОД IBM в 19 странах по всему миру.

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

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

Для просмотра дополнительных сведений посетите страницу IBM Cloud и создайте IBMid.

Виртуальная машина: обзор популярных виртуальных машин

Есть необходимость запустить в Windows среде приложения, разработанные для Mac? Очень хочется одному из первых попробовать в работе Windows 10 TP, но уже не получается выделить отдельный раздел на жестком диске под нее? Нет ничего невозможного, во всем в этом вам поможет виртуализация, самая сложная и полезная технология.

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

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

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

Чаще всего виртуализация применяется для решения задач следующего типа:

  • Специалисты крупных компаний применяют виртуализацию для наилучшего и эффективного распределения большой вычислительной мощности серверов;
  • Домашние пользователи используют виртуализацию (виртуальные машины) для одновременного запуска разу нескольких приложений из разных операционных систем. С помощью виртуальных машин пользователь может запустить Windows XP и написанные под нее программы в другой операционной системе, скажем работающей на ядре Linux. Или создать виртуальную ОС Windows 8 на компьютере Apple Macintosh.

Virtual PC – виртуальная машина от Microsoft

Компания Microsoft – разработчик самой популярной операционной системы, разработала собственную систему виртуализации, которая предназначенная для работы исключительно в среде Windows – это Virtual PC 2007 для Windows XP и Vista, а также сравнительно новая виртуальная машина Virtual PC для Windows 7. В дополнение к последней версии программы виртуализации разработчики создали инструмент Windows XP Mode, который представляет собой виртуальную версию XP Professional. Данный инструмент позволяет запускать устаревшие приложения и программы в более новой ОС Windows 7.

В Windows 8 и тестовой Windows 10 на смену Virtual PC пришла более новая технология Hyper-V, позаимствованная из Windows Server. Данная технология имеет массу отличий от обычных виртуальных машин, поэтому ей мы посвятим отдельный обзор.

На самом деле не компания Microsoft является разработчиком Virtual PC. Изначально эта программа создавалась другой компанией, и была рассчитана на работу в ОС Windows и Mac OS. Тогда, в качестве гостевых операционных систем использовались OS/2, DOS и ОС на ядре Linux. Когда компания Microsoft стала единственной владелицей данного продукта, было решено отказаться от поддержки программой Mac OS. Таким образом все силы разработчиков были сосредоточены на дальнейшем развитии Virtual PC исключительно для ОС Windows. Как следствие, на сегодняшний день мы имеем бесплатный инструмент для создания виртуальной среды, который прекрасно работает в Windows в качестве основной и гостевой ОС. Однако при всем при этом этот инструмент является довольно посредственным, из-за того, что в нем отсутствуют разного рода дополнения предназначенными для взаимодействия со всеми остальными системами.

Скачать можно тут: www. microsoft. com

Виртуальная машина VmWare

VmWare – это признанный всем мировым IT-сообществом лидер в области создания виртуальных решений для специалистов. Однако у компании разработчика имеются инструменты не только для специалистов из крупных организаций, но также и для домашнего пользователя – это бесплатное приложение VMware Player. Раньше, бесплатная программа виртуализации VMware Player умела только запускать созданные ранее виртуальные машины (их образы), но сейчас она научилась еще и создавать их. То есть приложение стало полноценным инструментом виртуализации. Правда в отличии от платного своего аналога, именуемого как VMware Workstation, функционал бесплатно приложения несколько ограничен, но можно смело сказать, что расширенные функции платной версии далеко не всегда нужны домашнему пользователю.

В качестве основной операционной системы VMware Player использует Linux и Windows, а в качестве гостевых ОС, могут быть использованы DOS, Windows, Linux, Mac, BSD и другие. Для тех, кто является счастливым обладателем компьютера Macintosh, копания разработчик выпускает приложение VMware Fusion, которое по своим возможностям полностью напоминает VMware Workstation.

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

Скачать можно тут: www. vmware. com

Parallels Workstation – виртуализация для домашнего пользователя

Одним из самых крупных игроков на мировом рынке виртуализации является компания Parallels. Ее основные инструменты виртуализации предназначаются в первую очередь для крупных компаний сервис-провайдеров. Но, не брезгует разработчик и домашним пользователем, так для машин с Windows и Linux у компании имеется программа виртуализации Parallels Workstation, а для Apple машин существует аналогичное решение Parallels Desktop. В отличии от других разработчиков, данная компания не предлагает бесплатных решений, за создание и запуск виртуальной машины пользователю придется заплатить.

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

Стоит так же отметить еще и то, что компания имеет мобильную версию приложения Parallels Mobile для iOS. С помощью данного версии можно запросто настроить удаленное управление запущенной Parallels Desktop виртуальной машины на Mac OS.

Купить можно тут: www. paraLlels.com.ru

VirtualBox – виртуальная машина от компании Oracle

Одной из самых распространенных программ ля виртуализации является VirtualBox. Над созданием этого приложения трудилась не одна группа разработчиков, и далеко не одна именитая в IT-среде компания. В настоящее время продуктом полностью владеет компания Oracle, которая получила ее в п процессе поглощения предыдущего владельца (Sun Microsystems) еще в 2010 году. Результате всех перемещений программы VirtualBox от одного владельца к другому, на сегодняшний день мы имеем программу виртуализации с большим количеством поддерживаемых операционных систем. На официальном сайте программы, можно скачать для установки на компьютер сборки для платформ Windows, Mac OS, Linux и Solaris. Эти же ОС кстати говоря можно использовать в VirtualBox в качестве гостевых.

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

Скачать можно тут: www. virtualbox. org

Из всего выше описанного можно сделать вывод и остановиться, как кажется нам на двух программах виртуализации – это VirtualBox и VMware Player. Данных приложений с головой хватит для установки дополнительных операционных систем.

Обзор наиболее популярных гипервизоров VMware, Hyper-V и KVM

Технологии виртуализации существуют уже более 30 лет и сегодня это одно из ключевых направлений IT. Многие сервисы нового поколения базируются на этих технологиях. Рынок продуктов виртуализации обширен и вопрос, какой гипервизор выбрать, всегда актуален. Как это часто бывает, универсального решения на все случаи жизни тут не существует, каждый из продуктов обладает своими достоинствами и недостатками, поэтому выбирая нужно исходить из потребностей бизнеса. Чаще всего компании выбирают между продуктами KVM, VMware и Hyper-V. Этот обзор призван помочь выбрать оптимальный вариант.

Виды гипервизоров

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


 

Гипервизор 1-го вида


Гипервизор 2-го вида

К гипервизорам первого вида относятся решения Hyper-V, KVM, ESXi, в качестве примеров решений второго вида можно привести VMware Workstation, Oracle Virtual Box, OpenVZ. Мы сосредоточимся на решениях первого вида, поскольку второй вид ориентирован на индивидуальное использование, в масштабах предприятия обычно используют решения первого вида.

Мы остановимся подробнее на проприетарных решениях Hyper-V и VMware, а также затронем решение с открытым кодом KVM. Несмотря на то, что эксперты считают его «сыроватым», многие предприятия выбирают именно его. Так, согласно отчету IT Central Station за январь 2018 года четверть операторов связи и около 11% финансовых компаний выбирают именно его.

Hyper-V vs VMware

Мы начнем обзор с решения Hyper-V. Нужно отметить, что существует Windows Server 2016 со стандартной ролью Hyper-V и существует Hyper-V Server 2016. Windows Server 2016 представлен двумя редакциями Standard и Datacenter. С позиции виртуализации эти редакции аналогичны, однако существуют отличия в лицензировании: в версии Standard в рамках одной серверной лицензии можно развернуть только две виртуальных машины. Версия Datacenter не оставляет ограничений по их количеству. При этому нужно иметь в виду, что лицензируется не сам факт создания виртуальной машины, а только операционная система внутри нее. Таким образом если заказчику нужны виртуальные серверы Linux, можно запустить любое их количество и в стандартной версии Windows Server. С 2016 года компания Microsoft несколько пересмотрела политику лицензирования и теперь стоимость лицензии связана с количеством ядер на физическом сервере.

Версия Hyper-V Server 2016 подойдет тем, кто не заинтересован в системе аппаратной виртуализации. Эта версия бесплатна и не имеет процедурных ограничений. Однако, у нее есть и свои особенности:

1. Все виртуальные машины, работающие под управлением Windows нужно лицензировать.

2. Решение поддерживает работу с удаленной консолью, но не имеет графического интерфейса.

3. Разработчик не поддерживает эту версию, но для нее доступны обновления.

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

Теперь обратимся к решениям VMware. Решение VMware ESXi представляет собой автономный продукт, похожий на Linux. Оно устанавливается непосредственно на аппаратное обеспечение, как операционная система и работает на базе собственного проприетарного ядра VMkernel. Его нельзя приобрести отдельно, решение поставляется только в комплекте с VMware vSphere 6, при этом лицензируется каждый физический процессор на физическом сервере. Количество виртуальных машин и объем оперативной памяти сервера не влияют на цену.

У VMware есть и бесплатные решения ESXi Free и VMware Free vSphere Hypervisor. Первое требует регистрации и доступно в режиме пробной бесплатной версии без ограничений функциональности в течение 60 дней, по истечении которых нужно будет или мириться с ограничениями бесплатной версии, или приобретать полноценную.

Бесплатное решение VMware Free vSphere Hypervisor, хоть и не предлагает ограничений для хоста по памяти и процессорам, обладает целым рядом других ограничений.

1. API доступны только для чтения.

2. Виртуальная машина не может иметь больше 8 виртуальных процессоров.

3. Не поддерживается совместная работа с Veeam для резервного копирования.

4. Невозможно подключение к vCenter Server.

5. Не поддерживаются VM host live migration, VM storage live migration.

6. Нет поддержки высокой доступности.

Таким образом, построить полноценное коммерческое решение на базе бесплатного ESXi вряд ли удастся.

Основные характеристики проприетарных гипервизоров

Система

Ресурсы

Free Hypervisor

Essential Plus

Enterprise Plus

MS Hyper-V

Хост

Количество логических CPU

576

576

576

512

Объем физической памяти, ТБ

4 ТБ

4 ТБ

12 ТБ

24 ТБ

Количество виртуальных процессоров на 1 хост

4096

4096

4096

2048

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

1024

1024

1024

1024

Виртуальная машина

Количество виртуальных процессоров на 1 виртуальную машину

8

128

128

240 для поколения 2 или 64 для поколения 1

Максимальный объем памяти для виртуальной машины

6128 Гб

6128 Гб

6128 Гб

12 Тб для поколения 2 или 1 Тб для поколения 1

Максимальное дисковое пространство

62 Тб

62 Тб

62 Тб

64 Тб для формата VDHX, 2040 Гб для VHD

Количество дисков

60

60

60

256

Кластер

Максимальное число узлов

-

64

64

64

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

-

8000

8000

8000

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

Основным недостатком Hyper-V является отсутствие поддержки технологии USB Redirection для подключения USB-ключей к виртуальным машинам. Ее пытаются заменить технологий Discrete Device Assigment, однако это не полноценная замена. Кроме того, Hyper-V не поддерживает добавление процессоров «на лету», но может уменьшать размер диска, а не только увеличивать как VMware.

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

Опция

Free Hypervisor

Essential Plus

Enterprise Plus

MS Hyper-V

VM host live migration

-

+

+

+

VM storage live migration

-

-

+

+

QoS для хранилища/сети

-

-

+

+

Проброс оборудования

PCI VMDirectPath/ USB redirection

PCI VMDirectPath/ USB redirection

PCI VMDirectPath/ USB redirection

Discrete Device Assigntment

Горячее добавление

Диски/vNIC/USB

Диски/vNIC/USB

Диски/vNIC/USB/ CPU/ОЗУ

Диски/vNIC/память

Горячее удаление

Диски/vNIC/USB

Диски/vNIC/USB

Диски/vNIC/USB/ CPU

Диски/vNIC/память

Изменение размера диска

Увеличение

Увеличение

Увеличение

Уменьшение и увеличение

Шифрование ВМ

-

-

+

+

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

Кроме функциональности нужно учитывать и средства управления. Для серверов Hyper-V это решение для управления гипервизорами. Virtual Machine Manager (VMM). Оно позволяет создавать, развертывать, клонировать виртуальные машины и многое другое.

Для управления VMware используется решение vSphere, которое использует ESXi хосты и vCenter Server для централизации управления.

Приведем краткое тезисное сравнение этих двух решений:

  • Самым дорогим решением сегодня является VMware, Hyper-V дешевле.
  • При расчете стоимости системы виртуализации кроме самого гипервизора нужно учесть и стоимость лицензий ПО, устанавливаемого на виртуальные машины. С этой позиции Hyper-V поможет дополнительно сэкономить по сравнению с VMware.
  • В гиперконвергентных решениях Hyper-V существенно дешевле.
  • В решении VMware реализован механизм обеспечения отказоустойчивости, в решении Microsoft пока нет.
  • У VMware лучше реализация VDI, но в случае с Hyper-V организация VDI обойдется дешевле.
  • Решение Hyper-V менее требовательно к аппаратной части.
  • В случае использования Hyper-V организация хранилища обойдется дешевле, чем VMware.
  • В VMware есть специальные средства для балансировки нагрузок между ресурсами хостов, в Hyper-V таких средств нет.
  • Благодаря System Center Virtual Machine Manager в Hyper-V есть возможность не просто реализовывать проекты простой серверной виртуализации, но и создавать частные облака.

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

Теперь же рассмотрим полностью бесплатное решение KVM.

Гипервизор с открытым кодом KVM

KVM представляет собой полноценную систему виртуализации для Linux/x86 с поддержкой аппаратных расширений (Intel VT и AMD-V).

Изначально решение работало только с процессорами x86, однако в последних версиях реализована поддержка разных процессоров и широкий набор гостевых операционных систем, в том числе Windows, Linux, Solaris, BSD.

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

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

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

KVM – простое и нетребовательное к ресурсам программное обеспечение, которое отлично подойдет для бюджетных решений. Для этого гипервизора можно использовать интерфейс управления Virsh и GUI virtmanager. Поскольку решение бесплатно, службы поддержки у него нет.

Подводя итоги

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


Лучшие виртуальные машины на 2021 год

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

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

Дэниел Мартин / Снимок экрана

VMware участвует в игре виртуальных машин с 1998 года и предлагает три различных программного обеспечения для виртуализации: VMware Workstation Pro, VMware Fusion и VMware Workstation Player.

Пакет Workstation Pro идеально подходит для профессиональных пользователей, которым нужна мощная виртуальная машина, способная одновременно запускать приложения в нескольких гостевых операционных системах. Между тем Fusion от VMware - это более простое приложение, разработанное для домашних пользователей, которые хотят запускать Windows на своих компьютерах Mac, и оно поддерживает дисплеи iMac.

С другой стороны, VMware Workstation Player, до недавнего времени известный как VMware Player, представляет собой привлекательный вариант начального уровня: если вы используете его для личного использования (не в коммерческих или некоммерческих целях), вы можете загрузить бесплатную версию. Это отличное решение для одного домашнего компьютера, и его часто используют люди, которые хотят лучше познакомиться с другой операционной системой или те, кто хочет добавить дополнительную безопасность своей компьютерной деятельности - доступную как для Windows, так и для Linux.Профессиональная версия начинается от 150 долларов и активируется лицензионным ключом, хотя для преподавателей колледжа, сотрудников, студентов и даже родителей предоставляются скидки.

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

Parallels

Когда дело доходит до предоставления пользователям Mac возможностей Windows, Parallels Desktop 15 не имеет себе равных. Последняя версия программного обеспечения совместима с самой последней версией MacOS, что позволяет имитировать Windows XP, 7, 8 и 10 в качестве гостевой операционной системы (хотя, поскольку поддержка Windows XP и 7 закончилась, вам понадобится будьте осторожны, что вы с ними делаете).Вы также можете удобно запускать приложения Mac и Windows одновременно без перезагрузки, а также предоставлять инструменты для быстрого перемещения файлов между операционными системами, запуска программ прямо с док-станции Mac и доступа к облачному хранилищу.

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

Программное обеспечение включает простой мастер настройки для начинающих и поддерживает дисплеи Retina и расширенную трехмерную графику с DirectX 9–11. Parallels также может эмулировать операционные системы Linux и Solaris, но наиболее тесная интеграция достигается при использовании последней версии Windows. В дополнение к базовому программному обеспечению существует также профессиональная версия с улучшенными возможностями интеграции, поддержки и сетевых возможностей, а также бизнес-версия для управления на уровне предприятия. Новые лицензии доступны за 80 долларов, а обновление до последней версии стоит 40 долларов.

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

Программное обеспечение работает практически одинаково, независимо от хост-платформы, и даже предлагает 3D-виртуализацию, многоэкранные разрешения и похвальную поддержку оборудования, помимо других функций. Последние обновления включают новую совместимость с виртуальными машинами для Oracle Cloud (VirtualBox управляется Oracle, поэтому такая совместимость важна для программного обеспечения), поддержку вложенного оборудования, виртуализированного на процессорах Intel, функции хоста / гостя Linux, исправления графического интерфейса пользователя и дополнительная поддержка 3D.Это не самый быстрый и не самый динамичный вариант по сравнению с аналогичными предложениями, но, опять же, качество часто имеет высокую цену. К счастью, поддержка и обновления превосходны - хотя вам могут потребоваться некоторые технические знания, чтобы все работало так, как вам нравится.

Boxes от Gnome - это инструмент для создания и управления виртуализацией, разработанный для Linux, который может помочь вам настроить все виды инструментов виртуализации - от конкретных настроек рабочих станций до включенных операционных систем.Простой и элегантный интерфейс позволяет легко увидеть, какие системы виртуализации у вас есть в любой момент и как они работают. Если вы ищете удобное решение для виртуализации для Linux, попробуйте Gnome Boxes: он отлично работает с QEMU и Virt Manager, которые являются идеальными инструментами для выполнения дополнительных задач.

Обратите внимание, что Boxes автоматически выделяет ресурсы для виртуализации в соответствии с рекомендациями поставщика. Если Boxes не может найти никаких рекомендаций или информации о виртуализации от процессора, он автоматически назначит 20 ГБ хранилища и 500 МБ ОЗУ, так что будьте к этому готовы.

Мы знаем, что Apple Boot Camp технически не является виртуальной машиной, но мы решили включить ее, потому что она очень интригующая. Программное обеспечение, встроенное во все Mac, позволяет пользователям выполнять двойную загрузку MacOS и Windows на одном компьютере. Boot Camp не имитирует операционную систему; вместо этого он помогает создать раздел на жестком диске для загрузки любой операционной системы Windows, которую вы предпочитаете. Работа без жесткого диска обеспечивает более высокое качество работы, чем любая виртуальная машина.

К сожалению, это означает, что, поскольку Apple Boot Camp использует разделение на разделы, вы не сможете одновременно использовать приложения Windows и лучшие приложения Mac.Вам нужно будет полностью перезагрузить компьютер, чтобы переключаться между приложениями Mac и Windows, или наоборот.

Хотя Boot Camp не является виртуальной машиной, вы можете запустить его раздел как виртуальную машину с помощью Parallels 14 (см. Выше). Таким образом, у вас будет быстрый доступ к Windows в MacOS, а также максимальная производительность, когда у вас будет достаточно времени, чтобы перезагрузить компьютер и запустить Windows с нуля.

Рекомендации редакции

контейнеров vs.ВМ: в чем разница?

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

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

Как работает виртуализация

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

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

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

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

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

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

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

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

Что такое контейнеры?

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

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

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

Контейнеры и виртуальные машины: в чем разница?

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

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

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

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

Почему контейнеры?

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

Управление контейнерами для мультиоблака

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

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

Чтобы узнать о решении корпоративного уровня для Kubernetes, прочитайте об услуге IBM Cloud Kubernetes.

Контейнеры

против виртуальных машин (ВМ): в чем разница?

Согласно недавнему исследованию 451 Research, внедрение контейнеров приложений будет расти на 40% ежегодно до 2020 года. Контейнеры способствуют быстрой и гибкой разработке, как никогда раньше. Но по-прежнему остаются вопросы по основам контейнеров, а именно:

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

В этом сообщении блога мы рассмотрим первый вопрос: чем виртуальные машины (ВМ) отличаются от контейнеров.

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

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

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

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

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

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

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

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

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

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

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

Для получения дополнительной информации или если у вас есть вопросы, посетите Паб по адресу netapp.io .

В чем разница между контейнерами и виртуальными машинами?

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

Гипервизоры - это способ управления виртуальными машинами (ВМ) на процессорах, которые поддерживают виртуальную репликацию оборудования. Не все процессоры имеют такое оборудование - обычно оно встречается в микропроцессорах среднего и высшего класса. Это стандартная плата для серверных процессоров, таких как Intel Xeon, и ее можно найти в большинстве процессоров приложений, таких как серия Arm Cortex-A.Как правило, виртуальная машина запускает любое программное обеспечение, работающее на «голом железе», обеспечивая изоляцию от реального оборудования. Гипервизоры типа 1 работают на «голом железе», тогда как гипервизоры типа 2 имеют базовую операционную систему (см. Рисунок, а) .

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

Контейнеры

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

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

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

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

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

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

Технология виртуальных машин

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

Доступен ряд контейнерных технологий, в первую очередь Linux.Одна из наиболее популярных платформ - Docker, которая теперь основана на Linux libcontainer. Фактически, Docker - это система управления, которая используется для создания, управления и мониторинга контейнеров Linux. Ansible - еще одна система управления контейнерами, которую предпочитает Red Hat.

Microsoft поздно пришла к контейнерному подходу, но ее контейнеры Windows - это способ предоставления контейнерных служб на платформе Windows. Конечно, можно разместить контейнерную службу Linux в качестве виртуальной машины на серверных платформах Microsoft, таких как Hyper-V.Системы управления контейнерами, такие как Docker и Ansible, могут управлять серверами на базе Windows, обеспечивая поддержку контейнеров.

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

Контейнеры

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

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

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

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

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

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

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

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

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

Скачать эту статью в формате .PDF
Этот тип файла включает графику и схемы с высоким разрешением, если применимо.

В чем разница? - BMC Blogs

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

Совсем недавно произошла контейнерная революция с той же целью: усовершенствование технологий центров обработки данных и разработка приложений. Технология не нова. Контейнерные решения Linux, включая LXC и Solaris Zones, используются в отрасли уже более десяти лет. Такие предприятия, как Google, уже несколько лет используют собственные контейнерные технологии. (Сообщается, что Google запускает 2 миллиарда контейнеров в неделю!)

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

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

  • Понять концепции и различия виртуальных машин и контейнеров
  • Рассмотрим недостатки как
  • Узнайте об основных тенденциях
  • Советы по началу работы с контейнерами

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

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

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

  • Вычислительная техника
  • Хранилище
  • Память
  • Сеть
  • Аппаратные функции доступны в виде виртуализированной системы

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

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

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

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

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

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

  • Более быстрая разработка и выпуск
  • Высокая масштабируемость
  • Гибкость для развития разработки приложений в ответ на меняющиеся потребности бизнеса и рынка

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

Что такое контейнер?

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

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

  • На топ-серверах без покрытия
  • На верхних гипервизорах
  • В облачной инфраструктуре

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

Преимущества контейнеров

Контейнеры

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

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

Проблема безопасности

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

Но не так-то просто обеспечить безопасность всего стека, жизненного цикла и конвейера. Это объясняет, почему почти половина организаций в этом опросе признали развертывание контейнеров с известными уязвимостями и / или без тестирования уязвимостей.

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

Архитектура

: Контейнеры против виртуальных машин

Визуализация архитектурных различий между виртуальными машинами и контейнерами

Ключевые ценностные предложения

Архитектурное отличие предлагает следующие ключевые преимущества для ИТ-персонала и предприятий:

  • Непрерывная интеграция, развертывание и тестирование . В организациях, управляемых DevOps, организации могут использовать контейнеры для облегчения процессов в конвейере CI / CD.Контейнеры работают как согласованная инфраструктурная среда, поэтому разработчикам не нужно выполнять сложные задачи настройки для каждого спринта SDLC, поскольку рабочие нагрузки мигрируют через физические ресурсы.
  • Переносимость рабочей нагрузки . Рабочие нагрузки ИТ могут переключаться между различными экземплярами инфраструктуры и виртуальными средами без значительных изменений конфигурации или доработки кода приложения.
  • Качество и соответствие программного обеспечения . Прозрачное сотрудничество между разработчиками и тестировщиками при доставке рабочих частей приложения приводит к повышению качества программного обеспечения, сокращению циклов разработки и улучшению соответствия требованиям.
  • Оптимизация затрат . Контейнеры максимально используют ресурсы в своих собственных изолированных виртуализированных средах. Это позволяет организациям точно планировать емкость и потребление инфраструктуры.
  • Независимость от инфраструктуры . Контейнеры делают компоненты приложений независимыми от инфраструктуры, позволяя организациям перемещать рабочие нагрузки между голыми железными серверами, виртуализированными средами и облачной инфраструктурой в ответ на меняющиеся потребности бизнеса.

Тенденции развития контейнеров

Эти ценностные предложения оправдывают растущий интерес и расходы на технологии контейнеризации. И это происходит быстро! Настолько быстро, что к 2023 году, по оценкам Gartner, более двух третей глобальных организаций будут использовать более двух контейнерных приложений. Сравните это с прошлым годом: в 2019 году это число было менее 20%.

В недавнем отчете о состоянии контейнеров и безопасности Kubernetes с начала 2020 года компания Stackrox опросила более 500 технических специалистов о тенденциях в области контейнеров и внедрения.Вот несколько важных выводов:

  • Количество контейнерных приложений растет. Компании, у которых более половины приложений размещены в контейнерах, подскочили с 23% до 29% всего за шесть месяцев. Это рост на 29%.
  • Контейнеры приносят DevOps и безопасность. Серьезную проблему с контейнерами вызывает безопасность, поэтому зрелые пользователи контейнеров зацикливаются на DevOps и безопасности на более раннем этапе процесса - большая победа для DevSecOps
  • AWS по-прежнему король. Но кто займет второе место в облачном развертывании, идет непрекращающаяся битва: Azure остается сомнительным вторым местом, поскольку GCP подняла свое третье место на семь процентных пунктов.
  • Пользователи Azure имеют наименьшую зрелость контейнера. Только 20% пользователей Azure поместили в контейнеры половину или более своих приложений - по сравнению с 33% всех пользователей, не использующих Azure.

Как внедрить контейнеры в вашей организации

Компаниям не нужно уклоняться от добавления контейнеров к вашему оборудованию. Хотите воспользоваться? Вот несколько способов начать работу с контейнерами:

  • Посмотрите на свою текущую среду. Проанализируйте свои приложения, определите, какие среды лучше всего подходят для них.Будете ли вы проводить рефакторинг своих приложений или создавать их полностью новые? Если вам интересен рефакторинг, начните с автономного приложения, которое не требует взаимодействия с другими приложениями для работы.
  • Эксперимент в Kubernetes. Есть большая вероятность, что ваши разработчики уже используют K8s. Узнайте больше в нашем многостраничном Руководстве по Kubernetes.
  • Примите промоутеров. Кто-то (или несколько человек) в вашей компании наверняка задумывается о стратегии контейнеризации. Поговорите с ними, учитесь у них и подумайте о том, чтобы сделать их лицом этих усилий.
  • Обозначьте проект. Определите небольшой проект, с которого нужно начать, назовите команду и наметьте, чего вы надеетесь достичь. Измерьте изменения в будущем.
  • Поощрять образование. Чтобы научиться новым технологиям, нужно время. Подумайте об инвестировании в сертификаты Kubernetes или, по крайней мере, выделите своим разработчикам некоторое время для обучения.

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

Дополнительные ресурсы

Дополнительную информацию по этой теме можно найти на следующих ресурсах:

Исходное эталонное изображение:

Сравнение лучшего программного обеспечения для виртуализации - DNSstuff

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

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

Что такое виртуализация?
Что такое программное обеспечение виртуализации?
Сравнение лучшего программного обеспечения для виртуализации

Windows
Mac
Linux

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

Что такое виртуализация?

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

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

  • Виртуализация рабочего стола. Большинство людей уже знакомы с виртуализацией настольных компьютеров. Здесь вместо операционной системы, устанавливаемой на физическом оборудовании компьютера, существует программный уровень между оборудованием и виртуальным рабочим столом.Это программное обеспечение называется гипервизором и может быть установлено непосредственно на оборудование. Вы также можете сначала установить операционную систему (например, Windows), а затем установить гипервизор поверх ОС. Затем гипервизор мог бы, например, настроить виртуальную машину под управлением Linux. Таким образом, вы можете использовать Windows на своем компьютере и виртуальную машину Linux. Это особенно полезно для тестирования приложений в различных операционных системах или разрабатываемом программном обеспечении.
  • Виртуализация приложений. Следующий вид виртуализации, который использует большинство людей, называется виртуализацией приложений. Здесь приложение виртуализируется и хранится на серверах, внешних по отношению к физическому устройству, которое вы используете для доступа к приложению. Вы можете использовать это, например, для запуска приложения только для Mac на устройстве Windows.
  • Виртуализация сети. Сети можно виртуализировать, собирая сетевые ресурсы, такие как коммутаторы, маршрутизаторы и другую сетевую инфраструктуру. Затем коллективные возможности этих ресурсов могут быть агрегированы, и вся сеть может управляться как одно целое.Если использование сети варьируется, виртуализируя сеть, вы можете более эффективно выделять и распределять ресурсы и поддерживать стабильную и высокую производительность.
  • Виртуализация хранилища. Это когда хранилище с нескольких физических устройств хранения объединяется и обрабатывается как одно устройство хранения (например, сетевые ресурсы выше). Затем виртуальным хранилищем можно управлять как одним устройством хранения, и вы можете более гибко распределять, изменять, перемещать и настраивать ресурсы в своей инфраструктуре по мере необходимости.
  • Виртуализация серверов. Когда серверы виртуализированы, инструмент разделяет ресурсы одного сервера на меньшие серверы виртуальных машин. Это позволяет пользователям получить доступ к каждому виртуальному серверу, а физические ресурсы можно сделать более эффективными. Вместо того, чтобы выделять три физических сервера для трех частей бизнеса, вы можете разделить один физический сервер на три виртуальные машины. Это может сделать вашу серверную инфраструктуру более оптимизированной и сэкономить на затратах на оборудование.
  • Виртуализация данных. Данные агрегируются в системе и затем предоставляются в виртуальной форме устройствам в сети или системе. Эти устройства могут получать доступ к виртуальным данным, не зная точно, где они хранятся, и нет необходимости перемещать или копировать исходные данные для устройств по всей инфраструктуре для доступа к ним.

Вернуться к началу

Что такое программное обеспечение для виртуализации?

Программное обеспечение

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

Гипервизоры

работают, создавая дополнительный уровень между вашим физическим оборудованием (или операционной системой) и виртуальной машиной. Это могут быть гипервизоры «голого металла» или «размещенные» гипервизоры. Гипервизоры без операционной системы устанавливаются на физическое оборудование без какой-либо операционной системы (также называемого Типом 1).Затем вы можете напрямую создавать виртуальные машины. Размещенные гипервизоры (Тип 2) работают в существующей операционной системе и, как правило, с ними проще работать, поскольку они функционируют как любая другая программа, которую вы можете использовать на своем компьютере.

Сравнение лучшего программного обеспечения для виртуализации

Я рассмотрю различные варианты, доступные на рынке, включая лучшее на сегодняшний день программное обеспечение виртуализации для Windows, Mac и Linux.

Топ 3 программ виртуализации для Windows

  1. VirtualBox
    VirtualBox - это бесплатное программное обеспечение виртуализации для Windows в виде гипервизора с открытым исходным кодом.Пусть вас не обманывает то, что он бесплатный: этот продукт Oracle - один из лучших инструментов виртуализации Windows. VirtualBox может работать в операционных системах хоста, включая Windows, Linux 2.4 и новее, Server 2003, Solaris, OpenSolaris и OpenBSD, а также может устанавливать их в качестве гостевых операционных систем.
    VirtualBox - это размещенный гипервизор - это означает, что вы запускаете его в своей операционной системе как приложение и создаете виртуальные машины с помощью этого приложения. VirtualBox использует моментальные снимки для сохранения текущего состояния виртуальной машины, чтобы вы могли вернуться к нему позже, если это необходимо.Снимки в основном используются для тестирования. Наконец, он поддерживает миграцию виртуальных машин, инструменты оптимизации производительности и графический интерфейс удаленного доступа.
  2. Hyper-V
    Еще одним крупным игроком на рынке является программное обеспечение Hyper-V, программное обеспечение виртуализации Microsoft. Это один из основных конкурентов VirtualBox. В то время как VirtualBox - это размещенный гипервизор, Hyper-V - это гипервизор без оболочки. Когда ваш компьютер запускается, Hyper-V запускается непосредственно из BIOS и запускает систему управления виртуальными машинами, такую ​​как Windows, Windows Server или Hyper-V Server.Если компьютер работает, Hyper-V будет работать, а VirtualBox будет запущен только в том случае, если пользователь откроет приложение VirtualBox в своей операционной системе.
    Хотя VirtualBox может работать во всех операционных системах, описанных выше, Hyper-V совместим только с Windows. Это один из основных недостатков Hyper-V. Если ваше предприятие использует несколько разных платформ, VirtualBox будет вашим выбором. Однако, если у вас есть система только для Windows или в основном на базе Windows и вам нужен гипервизор без оболочки, Hyper-V является лидером.
    В отличие от VirtualBox, Hyper-V поддерживает только аппаратную виртуализацию, но все остальные его функции очень похожи (миграция, удаленное управление и т. Д.). Однако поддержка невелика, и программное обеспечение может быть немного неудобным в настройке и использовании. . С другой стороны, это бесплатное программное обеспечение для виртуализации с Windows 10 Pro и Windows Server.
  3. VMware Workstation
    VMware - еще один доминирующий игрок на рынке программного обеспечения виртуализации для Windows, предлагающий продукты с высокими рейтингами для различных операционных систем хоста.
    Как и VirtualBox, VMware Workstation представляет собой размещенный гипервизор, который устанавливается в операционной системе и используется как приложение. VMware Workstation можно установить только на компьютерах с Windows и Linux, но VMware предлагает VMware Fusion для Mac в качестве альтернативы. VMware Workstation может создавать гостевые операционные системы Linux, Windows, Solaris, FreeBSD и macOS. Он также поддерживает аппаратную виртуализацию, но не обеспечивает программную виртуализацию, как VirtualBox.
    VMware Workstation имеет высококачественный, интуитивно понятный и простой в использовании графический интерфейс.VMware также производит VMware vSphere, гипервизор без операционной системы для систем Windows. Вместо виртуальных рабочих столов он используется для создания виртуальных центров обработки данных. Тщательно подумайте о том, для чего именно вы хотите использовать свое программное обеспечение виртуализации, поскольку некоторые из этих производителей предлагают немного разные продукты для разных потребностей виртуализации. Продукты VMware могут быть дорогими.

Вернуться к началу

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

  1. VMware Fusion
    Что касается программного обеспечения виртуализации для Mac, VMware предлагает инструмент VMware Fusion.Он поддерживает практически тот же список размещенных машин, что и VMware Workstation и vSphere. Он также включает в себя «режим единства», который позволяет запускать приложения Windows из док-станции macOS. Таким образом вы можете интегрировать операционные системы. Программа приятна на вид, проста в использовании и отличается высокой стабильностью и низким уровнем ошибок.
    Однако есть и недостатки. По сравнению с загрузкой ОС Windows с помощью VMware и Parallels, и VirtualBox были намного быстрее. VirtualBox настраивает меньше функций, чем Parallels и VMware Fusion, поэтому имеет смысл загружаться быстрее.VMware Fusion обычно считается программным обеспечением корпоративного уровня, поскольку оно обеспечивает более сложные интеграции и имеет больше функций. С другой стороны, Parallels обычно больше используется для виртуализации домашнего офиса или малого бизнеса.
    Вы можете получить бесплатную пробную версию VMware Fusion, если хотите протестировать ее перед покупкой. Есть две разные версии: Basic и Pro.
  2. Boot Camp
    Это бесплатное программное обеспечение виртуализации от Apple для создания виртуальных машин для компьютеров Mac, созданное совместно Microsoft и Apple.Это позволяет эффективно запускать операционные системы Windows на оборудовании Mac. Когда вы загружаете Mac с помощью Boot Camp, вы можете выбирать между Windows или Mac OS, в зависимости от ваших предпочтений в данный момент. Он существует с 2007 года и позволяет загружать любую операционную систему, разбивая жесткий диск на разделы.
    Вы настраиваете Boot Camp с помощью инструмента под названием Boot Camp Assistant. По умолчанию для раздела Windows требуется около 20 ГБ жесткого диска, а остальное остается для работы Mac OS.Если вы знаете, что собираетесь устанавливать большие приложения в раздел Windows, выделите ему больше места на жестком диске.
  1. Parallels Desktop
    Многие пользователи Mac предпочитают использовать Parallels вместо Boot Camp, поскольку он может легче интегрироваться с Windows вместе с родной Mac OS. Он даже позволяет отображать предупреждения с виртуальной машины Windows в центре предупреждений Mac OS, что позволяет отслеживать, что происходит на виртуальных машинах, даже если вы не используете их активно.Parallels также может создавать виртуальные машины с использованием различных дистрибутивов Linux и может запускать Chrome OS или более старые версии Mac OS, если они вам нужны в целях тестирования.

Лучшее программное обеспечение для виртуализации для Linux

Виртуализация RedHat

Когда дело доходит до программного обеспечения виртуализации Linux, некоторые из вышеперечисленных инструментов также можно использовать в операционных системах Linux, даже если они были разработаны для Windows или Mac. Однако RedHat Virtualization создан специально для операционных систем Linux.Он прост в использовании и основан на гипервизоре KVM (виртуальная машина на основе ядра). Несмотря на то, что это размещенный гипервизор, огромное количество разработок было сделано для того, чтобы это программное обеспечение стало зрелым, что во многих случаях делает его таким же быстрым, как и система, работающая невиртуализированным способом.

Он может поддерживать гостевые операционные системы других дистрибутивов Linux, Windows 7, 8, 8.1 и 10, а также дистрибутивы Windows Server. Он обеспечивает высокий уровень масштабируемости и может создавать большие виртуальные машины для поддержки крупных предприятий.Вы можете получить бесплатную пробную версию RedHat Virtualization или приобрести ее по подписке.

Вернуться к началу

Что нужно знать о программном обеспечении виртуализации

VMware Workstation и другие продукты VMware обычно считаются отраслевым стандартом и известны как одни из лучших вариантов программного обеспечения виртуализации для операционных систем Windows и Mac. В целом, на мой взгляд, лучшим вариантом для Mac является Parallels или VMware Fusion, причем Boot Camp обеспечивает базовую функциональность, если вы просто хотите иметь возможность запускать ОС Windows вместе с Mac OS.Некоторое из вышеперечисленных программ также может работать в дистрибутивах Linux, но инструмент виртуализации RedHat работает намного быстрее, поскольку он специально разработан для использования в Red Hat Linux.

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

Преимущества мониторинга виртуальных машин

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

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

По сути, физические машины, работающие с физическим оборудованием, могут использовать только то, что доступно на физическом оборудовании. Виртуальным машинам может быть выделено столько физических ресурсов, сколько хочет администратор, то есть компьютер с 10 ГБ ОЗУ может размещать 10 гостевых операционных систем и выделять каждому гостю 2 ГБ ОЗУ, и просто надеюсь, что каждая ОС не всегда должна использовать полное выделение RAM.Такое «избыточное выделение ресурсов» является обычным явлением, но при неправильном управлении и мониторинге может вызвать проблемы.

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

Все вышеперечисленные задачи проще с правильным программным обеспечением. Мой лучший выбор в качестве инструмента управления виртуализацией - SolarWinds Virtualization Manager (VMAN). VMAN обеспечивает комплексный мониторинг виртуальных машин, включая планирование емкости, средства мониторинга и управления производительностью виртуальных машин, а также полную видимость программного обеспечения виртуализации Hyper-V и VMware. Он также может предоставить информацию обо всей вашей виртуальной инфраструктуре, такой как хост-машины, виртуальные машины, организация кластера, виртуальное хранилище, такое как vSAN, и показатели производительности.

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

Как выбрать лучшее программное обеспечение для виртуализации

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

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

Докер

против виртуальных машин: различия, которые вы должны знать

В чем разница между Docker и виртуальными машинами? В этой статье мы сравним различия и поделимся своим мнением, чтобы помочь вам выбрать между ними. Прежде чем мы начнем обсуждать сравнение Docker и виртуальных машин, давайте сначала объясним основы.

Что такое докер?

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

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

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

Контейнеры обеспечивают следующие преимущества:

  • Сокращение ресурсов управления ИТ
  • Уменьшен размер снимков
  • Приложения быстрее раскручиваются
  • Уменьшенные и упрощенные обновления безопасности
  • Меньше кода для передачи, миграции и загрузки рабочих нагрузок

Чтобы начать свое путешествие по Docker, ознакомьтесь с программой «Docker in Depth Learning Path» Cloud Academy.

|
|

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

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

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

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

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

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

Чтобы узнать больше о виртуальных машинах, посетите Обзорный курс виртуальных машин Cloud Academy. Если у вас еще нет учетной записи Cloud Academy, вы можете подписаться на бесплатную 7-дневную пробную версию.

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

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

Сравнение

Ниже приведены существенные различия между Docker и виртуальными машинами.

1. Докер против виртуальных машин: поддержка ОС и архитектура

Основное отличие заключается в их архитектуре, показанной ниже.

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

2. Докер против виртуальных машин: безопасность

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

С другой стороны, предоставление корневого доступа к приложениям и запуск их в административных помещениях не рекомендуется в случае контейнеров Docker, поскольку контейнеры совместно используют ядро ​​хоста. Контейнерная технология имеет доступ к подсистемам ядра; в результате одно зараженное приложение способно взломать всю хост-систему.

3. Докер против виртуальных машин: переносимость

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

Пакеты контейнеров Docker

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

4. Докер против виртуальных машин: производительность

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

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

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

Помимо основных отличий, ниже приведены некоторые другие отличия:

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

Какой выбор лучше?

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

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

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

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

Итак, Docker - это просто шумиха или просто революция - или он заменяет виртуальные машины? Прокомментируйте свои мысли ниже или дайте дальнейшие предложения.

.

Ваш комментарий будет первым

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *