Сравнение технологий виртуализации

Сегодня при выборе хостинга для размещения веб-проекта или создания сервера любимой игры возникает закономерный вопрос: почему у разных компаний так различаются цены? Если в одной компании можно арендовать VPS-сервер за 5 долларов в месяц, то у другой самый дешевый тариф находится в пределах 15$. В чем же кроется разница и стоит ли переплачивать? В чем особенности разных технологий виртуализации?

by Veesp, 22 June 2016

Организация VPS (Virtual Private Server) по своей сути это «разделение» (sharing) ресурсов физического сервера на несколько частей. В результате получается насколько обособленных друг от друга виртуальных серверов. Они расположены на одном компьютере, но фактически пользователь работает с VPS-сервером, как с отдельной машиной с отдельным IP-адресом и операционной системой.

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

Программная виртуализация на базе ядра ОС

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

С точки зрения администратора сервера, существует несколько ограничений, например, при выборе операционной системы. Поскольку все виртуальные машины собраны на одном ядре, пользователь может использовать операционную систему, совместимую с ним. На VPS на базе Linux можно устанавливать только дистрибутивы Linux (CentOS, Debian, Ubuntu), что касается Windows, можно использовать только версию, как и у ядра.

Среди достоинств программной виртуализации:

Недостатки:

Виртуализация на базе гипервизора

При данном типе виртуализации гостевая операционная система получает доступ напрямую к аппаратным ресурсам сервера через гипервизор. В качестве гипервизора может использоваться электронная схема (аппаратная виртуализация – технологии Intel VT и AMD SVM) или программное обеспечение (паравиртуализация и полная виртуализация). Гипервизор условно можно сравнить с прокси-сервером только в масштабах одной компьютерной системы.

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

Достоинства виртуализации на базе гипервизора:

Недостатки:

Самые надежные решения для разделения VPS-серверов

OpenVZ

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

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

Недостатки:

Virtuozzo

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

Главный недостаток – существенная стоимость технологии.

Xen

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

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

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

Основной недостаток – высокая стоимость.

KVM

Еще одна технология виртуализации на базе гипервизора. Работает только с процессорами, поддерживающими технологии аппаратной виртуализации Intel VT и AMD SVM. Обладает всеми достоинствами технологии Xen.

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

Недостаток – работает не со всеми процессорами.

VMWare

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

Среди достоинств:

Недостатки: высокая стоимость аренды виртуального сервера.

Итоги

Технология KVM OpenVZ/ Virtuozzo XEN VMWare
Собственная файловая система любого типа + - + +
Выделенная область в оперативной памяти с полным доступом и возможностями отладки + - + +
Полное изолирование от соседей + - + +
VNC-соединение на ранних стадиях загрузки + - ограничено
PPTP VPN + ограничено + +
OpenVPN + ограничено + +
IPSec VPN + ограничено +
Межсетевые экраны (Firewall) + ограничено + +
Kernel mode NFS server + - - +
Независимое ядро + - ограничено +
Независимые модули ядра + - ограничено +
Полный контроль над сокетами и процессами + - - +
Полная поддержка гостевых ОС + - ограничено +
Эмуляция PCI / PCIe карт с полным доступом к ним + - ограничено +

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

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