Xen или OpenVZ?

logo-openvz.jpg VS logo-xen.jpg

OpenVZ – это реализация технологии виртуализации на уровне операционной системы, которая базируется на ядре Linux. Уже давнее время является лидером на рынке VPS хостинга. До появления Xen, существовало всего два варианта виртуализации: полностью виртуальный сервер (например, VMWare или VirtualBox) и разделение ресурсов в рамках одного сервера, что и делает OpenVZ.
Честная виртуализация работала неприемлемо медленно для VPS хостинга, поэтому для массовой услуги не годилась. Именно поэтому решения на базе OpenVZ полностью и заняли этот рынок.

Рассмотрим, как это работает:

openvz.jpg

На хост-машине работает специально модифицированное ядро Linux, отвечающее за распределение ресурсов между выполняющимися на ней VPS. Ядро отвечает за изоляцию файловой системы, оперативной памяти и процессов между виртуальными окружениями (так называются VPS в терминах OpenVZ), предоставляя администраторам VPS полный административный доступ к их серверу.
Как же разделяются ресурсы в системе OpenVZ? Хост-сервер ведет множество всевозможных счетчиков (помимо используемой мощности процессора, объема памяти и жесткого диска) и не дает их превышать.

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

Ядро OpenVZ, которое управляет всеми ресурсами, одно на всех. Поэтому ограничивать все-таки приходится.
Также, одно ядро означает, что его нельзя заменить. Отсюда вытекает вторая проблема — невозможно на арендованную VPS поставить другую операционную систему (например, FreeBSD или тем более Windows).

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

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

Самая же большая проблема, постоянно напоминающая о себе — это память. Ее ограничение работает не так, как в реальном сервере: нужный объем оперативной памяти имитируется через счетчики, и имитируется неполноценно. Поэтому любая программа, абсолютно непредсказуемо, может не запуститься — хотя она будет использовать не больше отведенного виртуальному окруженю предела, из-за неточной имитации ограничений, OpenVZ может ошибиться в подсчетах. Тогда придется увеличить тариф в два, а то и в три раза. Соответственно, хостеры решают эту проблему предоставлением (негарантированной) памяти больше, чем должно приходиться по тарифу (и суммарный ее объем – конечно же будет превышать количество оперативной памяти, установленной на хост-машине).
В большинстве случаев это работает. До момента, когда некоторые VPS не начнут использовать отведенную им, пусть и негарантированную, память полностью. В этот момент остальным серверам ее уже может не хватить. Также немаловажно, что все виртуальные серверы используют один и тот же раздел подкачки. Поэтому решить описываемую проблему через дополнительный раздел подкачки тоже не получится.

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

Согласно сайту OpenVZ, накладные расходы на виртуализацию также очень малы, и падение производительности составляет всего 1-3% по сравнению с обычными Linux-системами. Так как данная технология позволяет продавать ресурсов больше, чем реально есть, хостеры могут ощутимо снизить цену - отсюда понятно, почему цены на виртуальные серверы могут сильно отличаться. Не сложно догадаться, что зачастую это влечет и снижение качества услуги.

logo-xen.jpg

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

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

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

Список поддерживаемых операционных систем очень широк. Можно производить установку ОС, начиная с загрузки BIOS. Это может быть Linux, FreeBSD, OpenSolaris, Windows или даже MS DOS.

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

Та часть Xen, которая исполняет все работающие ядра ОС имеет весьма небольшой размер. А чем проще — тем надежней.

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

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

Мы рекомендуем пользоваться мощными VPS серверами на быстрых SSD дисках от хостинговой компании 1ssd.pro

field_vote: 

Your rating: Нет Average: 4.3 (7 votes)

Еще интересные статьи: