Виртуальные машины для Linux — это доминирующая технология, обеспечивающая существование Интернета. Сейчас более 80% сайтов в сети работают на хостинге под управлением Linux! Но в целом виртуальные машины используют в IT почти везде: в корпоративном секторе, в разработке, тестировании и на домашних компьютерах.
Существует очень много решений виртуализации на Linux, но лишь некоторые из них широко используется в профессиональной виртуализации: хостинге, корпоративных инфраструктурах, рабочих процессах или безопасности. Многие популярные полупрофессиональные, любительские и домашние решения, такие, как Virtualbox Linux в среде Gnome Linux, мы в этой статье освещать не будем.
В обычных условиях на отдельно взятом физическом сервере функционирует одна серверная ОС, которая потребляет все его производительные ресурсы. С помощью виртуализации можно программным методом разделить один сервер на несколько отдельных виртуальных. На каждом виртуальном сервере может использоваться несколько операционных систем со своим набором специфических приложений, при этом каждая ОС будет использовать только ту часть аппаратных ресурсов, которая ей выделена. Виртуализация является основным компонентом гибридной IT-среды, то есть среды, которая включает в себя как физическую технику, так и технологии, базирующиеся на абстракции.
Виртуализация решает целый ряд задач для владельцев серверов и инфраструктур:
А конечными пользователями используется практически во всех сферах IT и на всех уровнях применения:
Виртуальные машины для Linux, естественно, тоже создаются с помощью технологии виртуализации. Это программы, создающие программные среды, имитирующие оборудование. Любое программное обеспечение и любая ОС может полноценно функционировать в такой среде. С достаточно мощным оборудованием можно сделать целую виртуальную инфраструктуру — но даже на отдельном компьютере можно завести себе дополнительную виртуальную машину.
Виртуальные машины создаются с помощью гипервизора — программного слоя, распределяющего ресурсы между виртуальными сущностями. Они бывают программными и аппаратными – в зависимости от используемого вида виртуализации:
В целом все описанные ниже решения являются вариациями именно такой схемы.
KVM Linux или Kernel-based Virtual Machine — это технология виртуализации в среде Linux: загружаемый модуль ядра, процессорно специфический загружаемый модуль и компоненты пользовательского режима. Это бесплатная программа, распространяющаяся с открытым исходным кодом, это одно из наиболее востребованных решений для предоставления услуги виртуального выделенного сервера.
KVM обеспечивает отличный уровень независимости ресурсов и приватности виртуальных машин, позволяет установку любой ОС поддержку всех протоколов и фаервола, эмуляцию сетевых карт. Однако это достаточно молодая технология, а для неопытных пользователей она может показаться непростой.
Из-за того, что KVM является частью ядра Linux, а не модулем, то она быстро развивается. На данный момент существует множество систем управления KVM-серверами. Однако каждая из них требует грамотности: чаще всего сбой системы наблюдается из-за неправильных действий системных администраторов.
Часто KVM используется вместе с Linux QEMU — бесплатной программой эмуляции аппаратного обеспечения. Она может обойтись и без KVM, но аппаратная виртуализация ускорит работу гостевых систем, поэтому, как правило, они идут в паре.
Xen — это ПО на основе одноименного аппаратного/гибридного гипервизора, адаптированного для платформ Linux и Windows. Он использует микроядро, благодаря чему несколько ОС могут одновременно работать на одном оборудовании. Это одна из наиболее эффективных программ виртуализации, она очень востребована как для виртуализации серверов и инфраструктур, так и для рабочих станций, устройств, обеспечения безопасности.
Часто используется для повышения эффективности инфраструктуры, снижения сложности управления и уменьшения затрат.
VMWare ESXi — это аппаратная виртуализация на платной основе: приобретается лицензия на каждое аппаратное ядро. Существует и бесплатная версия, но она подходит для любительского или полупрофессионального использования, слишком уж ограничен её функционал. Фундамент VMWare — упрощенное ядро Линукса VMkernel, а сами виртуальные машины заводятся с помощью VMWare Workstation Linux.
VMWare массово используется в корпоративном секторе, что позволяет этой технологии постоянно обновляться и бороться за пальму технологического первенства. Среди достоинств использования этого решения называют:
У этого решения есть несколько дополнительных бонусов. Во-первых, поддержка пользователей: установка, способы миграции, варианты проектов и прочие полезные материалы доступны на официальном сайте, форумах, блогах, в виде инструкций или видеоматериалов. А также крупная экосистема, поддерживающая партнеров технологически, приложениями и гостевыми ОС. И, в третьих, свои утилиты и драйвера, VMWare Tools Linux, которые повышают производительность гостевой ОС и управление виртуальными машинами.
Еще одно популярное решение по виртуализации — ProxMox. Это опенсорсная платформа для управления виртуализацией серверов, основанная на ОС Debian GNU/Linux и поддерживающая новейшие чипсеты Intel и AMD. Система ProxMox позволяет управлять KVM (Kernel-based Virtual Machine) для виртуальных машин и LXC (Linux Containers) для контейнеров, путем использования гипервизоров и разворачивания внутри себя виртуальных серверов Linux.
Одной из отличительных особенностей решения является простота установки, в процессе которого доступным становится веб-интерфейс на основе JavaScript-фреймворка ExtJS, в который можно зайти из любого браузера и осуществлять все необходимые настройки. Продвинутые пользователи помимо графического интерфейса также могут управлять с помощью командной строки. Файловая система Proxmox (Proxmox Cluster File System) управляется БД, синхронизирующей конфиги по всему кластеру.
В числе других полезных свойств, которыми обладает Proxmox, можно выделить следующие:
Linux Proxmox имеет бесплатную версию, однако платный подписочный вариант обладает рядом преимуществ. В частности подписка позволяет использовать корпоративный репозиторий и некоторые дополнительные решения от разрабов, а также пользоваться их поддержкой, например при настройке удаленного подключения по SSH.
Еще один опенсорсный инструмент виртуализации, о котором мы хотели бы поговорить в этой статье — коробочный вариант Gnome. GNOME Boxes — это программа, входящая в среду рабочего стола GNOME, которая обеспечивает доступ к удаленным или виртуальным системам. В основе GNOME Boxes лежат все те же технологии виртуализации, отвечающие за создание и управление VN; управление хранилищами и сетевыми интерфейсами: KVM, QEMU и libvirt.
Для тех, кто использует GNOME как свободную среду рабочего стола для UNIX-подобных операционных систем, GNOME Boxes может стать хорошей альтернативой описанным выше решениям ведь работа осуществляется через родное приложение GNOME со знакомым его пользователям интерфейсом.
На что еще есть смысл обратить внимание пользователям Linux: GNOME Boxes минималистичен и прост в настройке, в каком-то смысле являясь упрощенной версией Virt Manager, ориентированной не на сисадминов, а на рядовых юзеров. Буквально в пару кликов мыши можно загрузить «.iso» для дистрибутива, который вы хотите установить, и создать нужную вам VM. Также доступен монитор производительности и возможность создавать VM из файлов, удаленного URL.
Перечисленные выше виды виртуализации — лишь первые среди многих. Однако их влиятельность такова, что при выборе среди способов виртуализации вы скорее всего будете выбирать между ними. У каждой есть свои достоинства и недостатки
Например, VMWare инсталлируется на сам сервер, он более удобен для управления и мониторинга, чем KVM. Но, как мы уже писали, требует лицензионной платы за каждое используемое процессорное ядро, тогда как KVM вообще бесплатен. Им управлять труднее: доступ к файлам, процессам, консоли и сетевому интерфейсу непрозрачен, требует отдельной настройки, отдельные параметры в нем требуется перестраивать с перезагрузкой операционной системы.
В сравнении с ним XEN гораздо труднее устанавливать: потребуется модификация ядра Linux. Зато это кроссплатформенное решение, позволяющее включать сразу несколько ОС на одном компьютере. Он превосходит KVM в поддержании большего числа виртуальных машин, резервному копированию и хранению информации. А ещё он допускает режим паравиртуализации, повышающий производительность.
При работе с дистрибутивами Linux Proxmox является хорошей бесплатной альтернативой VMware для дома и небольшого офиса. Однако стоит иметь ввиду, что последний все еще является лидером на рынке виртуализации из-за более стабильной работы и большего количества функциональных возможностей.
GNOME Boxes – решение не слишком известно на рынке т.к. не работает с процессорами, в которых нет функции виртуализации с аппаратной поддержкой, например Intel VT-x («Vanderpool») и Intel VT-d, однако и оно обладает своими преимуществами. Хотя на первый взгляд это решение проигрывает VirtualBox и VMWare в силу небольшого функционала, многим GNOME Boxes подойдет по причине простоты использования, что бывает удобно, если вам нужна простая гостевая система или вы тестируете новый дистрибутив Linux.
В зависимости от ваших средств и штата вы можете выбрать любую из представленных систем. Если у вас нет ограничения по бюджету, это может быть VMWare, если у вас много подкованных именно в нём сисадминов — Xen. Но мы считаем золотой серединой именно KVM-виртуализацию, на которой предоставляем услуги VPS/VDS-серверов, IaaS, удалённых рабочих мест — и наша заботливая техподдержка не заставит себя ждать в случае нарушения работы вашей инфраструктуры.
Статья добавлена 1 год назад. Автор - Blog Admin