В настоящее время разработка почти ни одного сложного и современного программного продукта не обходится без виртуализации. Какие виртуальные машины для этого используются?
Сразу отметим, что речь идёт именно о виртуальных машинах, которые устанавливаются на рабочих компьютерах программистов для полноценного параллельно запуска других операционных систем или используются для создания рабочих терминалов переноса процесса разработки с локальных компьютеров.
Контейнеризация приложений и серверные среды виртуализации это тем для отдельной статьи и даже не одной.
В основном применяются три разновидности виртуальных машин. Это Microsoft Hyper-V, Oracle Virtual Box и VMware. Постараемся дать их краткое описание.
Microsoft Hyper-V
Сайт: https://www.microsoft.com/
Виртуальная машина от Microsoft.
Основное достоинство состоит в том, что она доступна из коробки пользователям Windows 10, но только в версии Professional.
Главным образом её используют для запуска Docker Desktop (версия Docker специально предназначенная для ПК с Windows) или штатного эмулятора Android SDK (на компьютерах на базе процессоров AMD).
Для других задач в качестве инструмента разработчика или терминала применяется сравнительно редко. В том числе потому, что данная виртуальная машина работает исключительно в Windows и то не во всех редакциях, а также (возможно, как следствие вышесказанного) довольно скудно документирована IT сообществом.
Oracle VirtualBox
Сайт: https://www.virtualbox.org/
Бесплатная виртуальная машина от Oracle, давно ставшая, по сути, лидером виртуальных машин для программистов.
Благодаря своей кроссплатформенности, бесплатности, а также функциональности, универсальности и, что тоже не маловажно, низкой требовательности к ресурсам, эта виртуальная машина стала надёжным помощником IT специалистов в решении широкого круга самых различных задач. Начиная с банального тестирования программ и построения тестовых виртуальных сетей и заканчивая эмуляцией мобильных устройств (популярнейший из альтернативных эмуляторов Android Genymotion использует в своей основе VirtualBox) и даже собственной версией Docker (DockerBox).
Правда и здесь есть некоторые недостатки.
Во-первых, VirtualBox конфликтует с Hyper-V. Поэтому после включения Hyper-V ни одна из созданных в VirtualBox гостевых систем работать не будет.
Второй существенный минус. Вследствие технических ограничений VirtualBox не всегда удобно использовать в качестве рабочих терминалов. Поэтому VirtualBox больше подойдёт индивидуальным разработчикам или небольших командам. Также VirtualBox часто пользуются в образовательных целях по причине той же бесплатности и простоты использования.
VMware
Сайт: https://www.vmware.com/
Виртуальная машина профессионального уровня, которая разрабатывается одноимённой компанией. Выпускается как в виде десктоп версии, так и в виде версии для установки на сервер (в том числе для создания рабочих терминалов).
Для создания виртуальных машин и их последующего использования на ПК может использоваться один из двух продуктов: WMware Workstation Player (упрощённый вариант, бесплатен для личного использования) и WMware Workstation Pro (полнофункциональная десктоп версия).
В серверном варианте чаще всего встречается VMware ESXi (есть бесплатная версия) или VMware vSphere.
WMvare сочетает универсальность, удобство и функциональность VirtualBox с высокими требованиями профессиональной Enterprise разработки. Но, так как бесплатные версии обладают рядом существенных ограничений VMware в популярности всё же уступает VirtualBox. Также по сравнению с VirtualBox виртуальные машины VMware требуют несколько больших ресурсов для работы.
Стоит отметить, что VMware (во всяком случае Workstation Player) не конфликтует с Hyper-V, что позволяет использовать их совместно на одном ПК.
В основном виртуальные машины VMware можно встретить в профессиональной среде, которая позволяет раскрыть их возможности.