Гипервизор Xen: особенности работы и функционал

2016-07-13T17:06:46+00:00Март 22nd, 2016|Блог|

Современный провайдер, предоставляющий в том числе услуги на базе VPS/VDS, не может обойтись без технологии виртуализации, то есть, запуска нескольких виртуальных рабочих станций под управлением физической машины. Чтобы упростить управление запущенными виртуальными машинами, используются гипервизоры – специальные программные комплексы, которые дают возможность администратору быстро создавать, управлять, запускать машины, останавливать, переносить между физическими серверами и т.д. В UNIX-среде используется несколько гипервизоров, одним из наиболее популярных является Xen.

 

Гипервизор Xen: основные характеристики и история создания

 

Гипервизор Xen

На сегодняшний день Xen – это кроссплатформенный гипервизор с огромным количеством функций и расширенными возможностями, что позволяет использовать его в том числе и в корпоративной среде. Одной из главных особенностей программного комплекса является поддержка паравиртуализации – специального режима ядра ОС, когда он настраивается на совместную работу вместе с Xen. В отличие от эмуляции отдельной изолированной среды и набора железа для каждой машины, такой режим позволяет достичь намного большей производительности, сравнимой с нативной. Конечно, некоторые ограничения при работе в режиме паравиртуализации все же есть: запрещены привилегированные операции (их заменяют т.н. гипервызовы), не поддерживается переключение «на лету» из 32-битного режима в 64-битный и обратно, аппаратная виртуализация процессора, однако это существенно не сказывается ни на производительности, ни на удобстве пользования системой.

 

Еще одна особенность Xen – в код самого гипервизора, начиная с третьей версии, включен только самый необходимый набор функций: управление виртуальной памятью и тактовой частотой процессора, работа с прерываниями, DMA, таймером реального времени. Все остальные функции, в том числе работа с дисковой подсистемой, периферическими устройствами, вводом и выводом вынесены в домены – запущенные в данный момент виртуальные машины. Благодаря такому подходу Xen остается самым легковесным гипервизором – в версиях 4.x, к примеру, бинарный код занимает всего около 600 Кб.

 

История Xen достаточно долгая. Изначально это был научно-исследовательский проект одного из студентов Кембриджа, который затем перерос в коммерческую версию. Первый релиз состоялся в 2003 году, а уже через четыре года исходный код был выкуплен компанией Citrix, что стало переломным моментом в развитии гипервизора. Финансирование позволило быстро развивать проект и впоследствии сделать полностью свободным и открытым с переходом на лицензию GPL. На сегодняшний день Xen развивается под контролем и управлением Linux Foundation, причем часть кода внедрена в ядро Linux и регулярно обновляется.

 

Основные преимущества Xen

 

Популярность гипервизор Xen получил не просто так, это следствие большого списка преимуществ. Среди прочего, стоит отметить:

  • скорость работы виртуальных машин под управлением Xen благодаря паравиртуализации сопоставима с производительностью без виртуализации, напрямую на железе;
  • миграция работающих машин между хостами возможна без остановки или приостановки их работы;
  • каждой гостевой ОС может быть доступно до 32 процессоров, причем изменение их количества, как и других ресурсов, возможно на лету;
  • широкая поддержка различных платформ: х86, х64, ARM, PPC и другие;
  • возможность запуска гостевых ОС в режиме аппаратной виртуализации (требуется для Windows и других немодифицируемых операционных систем);
  • отличная совместимость с широким парком устройств благодаря поддержке драйверов в ядре Linux;
  • полная бесплатность, в том числе для коммерческого использования, и открытый исходный код.

 

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

 

Среди недостатков Xen чаще всего упоминается высокая накладная стоимость развёртывания гостевых систем, что не дает оптимизировать плотность размещения виртуальных машин. Благодаря этому многие провайдеры предпочитают использовать другие решения, работающие на уровне ОС (например, OpenVZ, Virtuozzo, FreeBSD Jail).

 

Миграция между гипервизорами Xen и другими системами

 

Динамическая миграция

Благодаря сходной структуре файлов виртуальных машин Xen поддерживает миграцию на другие гипервизоры, например, KVM. Вначале для этого потребуется остановить машину и создать на ее основе образ диска в формате VPS. Все это возможно нативными средствами Xen. Когда образ создан, его необходимо перенести туда, где он должен быть запущен, и KVM сразу сможет подхватить его и запустить. Еще проще осуществляется миграция между двумя разными серверами с гипервизором Xen. Благодаря так называемой «живой» миграции нет необходимости даже останавливать машину – она может быть перенесена динамически, причем абсолютно прозрачно для клиента, без сбоев или нарушений в работе ПО.

 

Также читайте обзор гипервизора KVM, его функциональных особенностей и возможностей виртуализации. Именно на этом гипервизоре мы остановили свой выбор и с помощью него мы реализуем наши сервисы: TuchaHost, TuchaOffice и TuchaFlex+. С результатами нашей работы вы можете ознакомиться на странице отзывов.

 

Поделиться на Facebook Поделиться ВКонтакте Твитнуть Поделиться на Google+ Наша СлайдШара Наш канал YouTube

 

Метки: , , ,