Обзор систем виртуализации
12.05.2011В данной статье мы хотим рассказать о наиболее популярных системах виртуализации, используемых хостинг-провайдерами для предоставления услуг аренды виртуальных выделенных серверов (VPS/VDS), об особенностях этих систем, основных их свойствах и отличиях. Во время поиска подходящего предложения виртуального выделенного сервера у многих пользователей возникает вопрос о том, какую именно систему виртуализации выбрать, что же оптимально подойдет непосредственно для его целей и задач. Эта статья должна помочь Вам внести ясность в суть различных систем виртуализации, и выбрать то, что Вам действительно нужно.
Проясним, что же из себя представляем система виртуализации и для чего она предназначена. Виртуализация, по своей сути, это средство для создания виртуальных серверов (контейнеров) внутри физического сервера. В общем смысле данного термина, ресурсы могут быть распределены географически, иметь различные аппаратные модули, работать на различных платформах, но объединяться для решения общей задачи в рамках одной виртуальной среды. Но, мы поговорим несколько об ином способе выделения виртуальных ресурсах. Речь пойдет о виртуальных выделенных серверах (Virtual Private (Dedicated) Servers, VPS/VDS).
В рамках данной услуги клиенту выделяется часть физических ресурсов сервера (вычислительные мощности и модуль хранения данных), которые используются только одним клиентом и не зависят от работы остальных виртуальных контейнеров (VPS) на одном физическом сервере. Тоесть, создается виртуальный сервер внутри физического сервера, который имеет органиченный объем физических ресурсов, но, при этом, работает как полноценный сервер. Основное различие систем виртуализации заключается в том, как виртуальные серверы получают ресурсы и работают с аппаратной частью сервера. Существует три основных способа виртуализации:
1. Аппаратная виртуализация — разделение ресурсов сервера на аппаратном уровне (KVM, Xen).
2. Паравиртуализация — способ, при котором операционная система клиента несколько модифицируется для работы в виртуальной среде. Вместо прямого обращения к аппаратной части, операционная система обращается к программному обеспечению гипервизора. Основным недостатком такого способа является необходимость модификации ядра операционной системы, что возможно только в Open Source проектах или в том случае, если система виртуализации разработана с учетом возможностей отдельно взятой операционной системы (Xen).
3. Виртуализация на уровне операционной системы — возможность создавать независимые виртуальные среды внутри операционной системы. Каждый виртуальный сервер может иметь свою операционную систему, но должно использоваться такое же ядро, как и у основной ОС. Другими словами, если на гипервизоре используется операционная система семейства Linux, то операционные системы Windows иди FreeBSD установить на виртуальный сервер уже не получится. При таком подходе распределением ресурсов между виртуальными серверами занимается основная операционная система, без участия программной прослойки в виде гипервизора (OpenVZ, Virtuozzo).
Теперь рассмотрим основные системы виртуализации, которые на сегодняшний момент используются подавляющим большинством хостинг-провайдеров.
Виртуализация на базе технологии Xen
Xen — кросс-платформенная разработка компьютерной лаборатории Кембриджского университета, которая распространяется по лицензии GPL (бесплатно). Поддерживается как аппаратная, так и паравиртуализация. При использовании паравиртуализации (далее PV) модифицируется ядро основной операционной системы для работы с Xen. Клиентская операционная система не может выполнять привилегированные операции, вместо этого отправляется запрос гипервизору на выполнение того или иного действия. Основные изменения в клиентской операционной системе затрагивают только ядро, но могут изменяться и некоторые библиотеки.
В режиме аппаратной виртуализации «домен» (виртуальная машина) не знает о существовании гипервизора. Эмулируется реальное программное обеспечение, после загрузки операционной системы подгружаются дополнительные PV-драйверы, предназначенные для ускорения выполнения операций с виртуальными устройствами.
Виртуализация на базе проекта OpenVZ
OpneVZ — система виртуализации, основанная на ядре Linux и использующая виртуализацию на уровне операционной системы. Поскольку сама система OpenVZ базируется на Linux, то и клиент сможет использовать только дистрибутивы Linux (Fedora, RHEL, Centos, Debian, SuSE). Windows и *BSD дистрибутивы не могут быть использованы из-за значительных отличий ядра.
OpenVZ состоит непосредственно из модифицированного ядра Linux и комплекта пользовательских утилит. Каждая виртуальная машина на гипервизоре выглядит как полноценный сервер, имея свои независимые файлы, пользователей, сеть, дерево процессов, файрвол и т.д. Поддерживается создание копий файловой системы контейнера и миграция контейнера на другую ноду. По информации разработчиков, падение в производительности, в сравнении непосредственно с физическим сервером, составляет не более 1-3%, которые используются для работы самой виртуализации.
Проект OpenVZ разрабатывается сообществом, при поддержке компании Parallels, Inc. и распространяется по лицензии GPL 2 (бесплатно), за счет чего является одной из наиболее распространенных систем виртуализации на рынке хостинг-услуг.
Виртуализация на базе Parallels Virtuozzo Containers
Parallels Virtuozzo Containers — весьма популярное и распространенное решение от компании Parallels, Inc. Распределение ресурсов производится на уровне операционной системы. Существуют версии Parallels Virtuozzo Containers для работы в средах Linux (на основе OpenVZ) и Windows.
Parallels Virtuozzo Containers базируется на разработке OpenVZ, однако имеет ряд значительных улучшений, исправлений и доработок. Так, Parallels Virtuozzo Containers имеет несколько GUI-панелей, удобную систему контроля за контейнерами и нодами, множество локализаций интерфейсов, в том числе и русскую. Для клиента наиболее важной панелью является Virtuozzo Power Panel, которая предоставляет клиенту расширенные функциональные возможности, такие как:
- удаленная перезагрузка контейнера даже при отсутствии доступа к самому серверу любыми другими способами;
- переустановка операционной системы с возможностью сохранения прежних данных в отдельный каталог /old;
- резервное копирование контейнера (создание слепка);
- встроенный файловый менеджер;
- доступ к файрволу сервера;
- java-клиенты ssh и rdp;
- статистика использования ресурсов сервера и трафика;
- управление процессами операционной системы;
Система виртуализации поддерживает установку большинства известных Linux-дистрибутивов и миграцию контейнеров на соседнюю ноду без простоя в работе сервера (без downtime). Поддерживаются важные модули ядра операционной системы, такие как iptables, tun/tap, quotas. Скорость работы виртуальной машины практически не отличается от скорости работы основного (физического) сервера. Легкость масштабирования и добавления к основной системе виртуализации новых нод предоставляет практически неограниченные возможности для роста и дальнейшего развития ресурса.
Эпилог
Непосредственно для нашей компании важно предоставить клиенту действительно качественный, стабильный и высокопроизводительный сервер, отвечающий самым высоким требованиям. Именно поэтому свой выбор мы остановили на дорогостоящем коммерческом продукте от компании Parallels, Inc., Parallels Virtuozzo Containers, т.к. ни один бесплатный программный комплекс не может предложить того уровня сервиса, набора дополнительных утилит, а главное качества, скорости и стабильности работы, как система Parallels Virtuozzo Containers.
При работе с услугой VPS/VDS выбор технологии виртуализации является строительством фундамента для дальнейшего успешного развития проекта, не больше и не меньше. Мы надеемся, что данная статья поможет сделать Вам правильный выбор.
Желаем успешной работы с услугами HOSTLIFE!
Опубликовано в Статьи | Нет комментариев »