Pull to refresh
0
Rating

Xen PV vs HVM: что выбрать?

NQhost corporate blog
imageЗдравствуйте, уважаемые Хабрапользователи. Меня зовут Павел, я являюсь сотрудником хостинговой компании NQhost. Мы специализируемся на услугах VPS/VDS (виртуальные серверы), построенных на базе технологии Xen.
В этой статье мы ответим на один из самых часто задаваемых вопросов, поступающих в нашу службу поддержки: чем отличаются паравиртуализация (Xen PV) и полная аппаратная виртуализация (Xen HVM) и что, собственно, лучше выбрать.


Xen


Xen – это распространяемый на условиях лицензии GPL гипервизор или, иными словами, монитор виртуальных машин, изначально разработанный в Кембриджском университете. Поддерживает два режима виртуализации: паравиртуализация (PV) и аппаратная виртуализация (HVM).
Xen позволяет организовать совместное выполнение нескольких виртуальных машин на одной физической с сохранением производительности, сравнимой с реальной.

Xen PV

Паравиртуализация – это технология виртуализации, при которой гостевые операционные системы специальным образом подготавливаются для работы внутри виртуальной среды, для чего обычно происходит изменение ядра ОС. Таким образом, гостевая система «знает», что она работает в виртуальной среде.
В настоящее время почти все дистрибутивы Linux, а именно CentOS, Debian, Ubuntu, Gentoo, Fedora, ArchLinux и др., способны работать в режиме Xen PV. Паравиртуализация позволяет достичь производительности, сравнимой с производительностью физического сервера.

В режиме PV имеется два варианта загрузки Linux: использование ядра с Xen Dom0 (ноды) или же запуск собственного ядра, которое находится непосредственно внутри файловой системы VPS контейнера. Второй вариант загрузки реализуется при помощи технологии PyGrub и позволяет запускать актуальные версии ядра (причем как 32-, так и 64-битные в зависимости от версии ОС) для конкретного дистрибутива Linux. Как правило, все модули ядра корректно работают с xen-версией.

Например, вот как выглядит вывод команды uname –a внутри Xen PV контейнера на базе Ubuntu 10.10 32bit:
Linux example.com 2.6.32-305-ec2 #9-Ubuntu SMP Thu Apr 15 04:14:01 UTC 2010 i686 GNU/Linux

При этом физический сервер, на котором расположен этот контейнер, работает под управлением CentOS x64 со стандартным ядром ветки 2.6.18

Помимо стандартного ssh доступ к ОС, находящейся внутри Xen PV контейнера, можно получить через эмуляцию консоли средствами гипервизора. Это бывает полезно, если по каким-то причинам не удается использовать ssh. Также имеется возможность отслеживать процесс загрузки гостевой ОС.
image

Xen HVM

В режиме аппаратной виртуализации гостевая система не «знает», что она работает в виртуальной среде — Xen с помощью модулей QEMU эмулирует аппаратную часть виртуальной машины.
Для обеспечения работы Xen HVM необходимо, чтобы на ноде использовались процессоры с поддержкой технологии Intel-VT или AMD-V. Загрузка такого контейнера выглядит аналогично загрузке обычного физического компьютера. Удаленный доступ на данном этапе организуется средствами VNC. Вот пример загрузки Xen HVM контейнера и запуска FreeBSD 8.2 из смонтированного образа:
image

В режиме Xen HVM возможно установить практически любую операционную систему: Linux, FreeBSD, NetBSD или всевозможные версии Windows.

PV vs HVM – что же выбрать?

Ответ на данный вопрос достаточно простой: если вам нужна ОС Linux и у вас нет требований к самостоятельной установке ОС «с нуля», то смело выбирайте Xen PV. Производительность такого VPS контейнера будет выше, а установка ОС может производиться из готовых шаблонов.
В тех случаях, когда вам нужна не Linux-based ОС, или же если имеется необходимость по каким-либо причинам использовать немодифицированное ядро, то правильным выбором будет Xen HVM.

В одной из следующих статей мы приведем сравнение производительности Xen PV и HVM контейнеров.
Tags:
Hubs:
Total votes 14: ↑10 and ↓4 +6
Views 28K
Comments Comments 19

Information

Founded
2009
Location
Чехия
Website
nqhost.com
Employees
2–10 employees
Registered