ВИРТУАЛИЗАЦИЯ
Хоть данная технология и зародилась в начале 1960-х годов, будучи ответом на проблему, связанную с экономией вычислительных ресурсов ЭВМ того времени, она всё ещё не потеряла в актуальности. Важность виртуализации заключается в том, что данная технология позволяет улучшить эффективность, отказоустойчивость, гибкость и масштабируемость вычислительных мощностей, при этом сократив затраты, что будет актуально в IT сфере всегда. Область применения виртуализации довольно обширна, начиная от простого использования для запуска различных операционных систем и программных продуктов, предназначенных для них, без необходимости смены аппаратуры или операционной системы, заканчивая разделением больших систем на более мелкие части, что позволяет более эффективно использовать те же возможности сервера. Дата-центры и облака могут активно использовать виртуализацию для достижения актуальности, прописанной выше. Контейнеры также основаны на подходе виртуализации, они позволяют запускать приложения в изолированной среде, но в отличие от виртуальных машин контейнеры – это всего лишь отдельные процессы, а не полностью независимые машины.
Гипервизоры
Гипервизор – это программное обеспечение, позволяющее создавать и запускать виртуальные машины. Существуют три типа архитектуры гипервизоров:
Гипервизоры первого типа (native). Запускается напрямую на аппаратной части компьютера. Данный гипервизор контролирует все виртуальные машины и распределение вычислительных ресурсов. Примеры: VMWare ESXi, KVM, XEN, Hyper-V.
Гипервизоры второго типа (hosted). Работает как программное обеспечение поверх операционной системы. Примеры: Oracle VM VirtualBox, VMWare Workstation, KVM.
Гипервизоры гибридного типа (hybrid). Сочетает в себе характеристики первого и второго типа. Выполняется поверх базовой операционной системы компьютера. Примеры: Xen, Hyper-V.
Microsoft Hyper-V
- Производитель – Microsoft.
- Бесплатный продукт.
- Можно использовать API для создания и администрирования виртуальных машин. В Windows встроены API-интерфейсы HCS и WMI. WMI в свою очередь предназначен для управления локальными серверами, когда же HCS является более низкоуровневым и предназначен для управления отдельным процессом виртуальной машины.
Плюсы:
Простота в использовании.
Возможность переносить работающий сервер с одного узла на другой.
Удалённое подключение через консоль.
Установка виртуальных рабочих столов.
Минусы:
Нет поддержки ПО от других разработчиков.
Утилиты для управления:
Hyper-V Manager. Устанавливается через Windows Features, соответственно официальная утилита от Microsoft.
Утилиты для соединения с виртуальными машинами
VMConnect
Использование данной технологии можно встретить в различных облачных продуктах. Например: ArubaCloud, DataLine и др.
VMWare ESXi
- Производитель – VMWare.
- Бесплатный продукт. Есть платные версии с улучшенным функционалом.
- Можно использовать REST API для создания и управления виртуальными машинами. API доступно только для платных продуктов.
Плюсы:
Простота в использовании.
Высокая плотность вычислительных машин.
Довольно широкий функционал (в платных версиях).
Минусы:
Ограниченность бесплатной версии.
Плата за каждый сервер, где используется данный гипервизор отдельно.
Утилиты для управления:
vSphere Client and vSphere Web Client.
Утилиты для соединения с виртуальными машинами:
Встроены в vSphere клиенты.
Данная технология активно используется в сфере облачных сервисов и является одним из самых распространенных решений.
KVM
- Производитель – Red Hat.
- Бесплатный продукт.
- API представляет из себя набор системных вызовов для работы с виртуальными машинами. Среди них глобальные системные вызовы, вызовы виртуальных машин, вызовы CPU, вызовы отдельных устройств.
Плюсы:
Простота в администрировании при помощи различного ПО.
Довольно быстр.
Широкая поддержка гостевых ОС.
Ресурсы распределяются между машинами независимо.
Минусы:
Сложность в настройке данного гипервизора.
Утилиты для управления:
VMmanager KVM (платный).
Virt-Manager и др.
Утилиты для соединения с виртуальными машинами
VNC
Хоть KVM и относительно молодая технология, чем тот же XEN, но она уже активно поддерживается такими гигантами как HP и IBM.
QEMU
- Разработчик – Фабрис Беллар.
- Бесплатный продукт.
- Работа с QEMU через командную строку. Как такового отдельного API нет.
Плюсы:
Открытый исходный код.
Стабильный и простой в настройке.
Минусы:
Сложен в освоении (не очень подходит для новичков).
Работает в паре с KVM (при виртуализации).
Довольно медленный при программной эмуляции.
Утилиты для управления:
Qtemu
Утилиты для соединения с виртуальными машинами
VNC
Virtual Box использует QEMU в небольшой части своего функционала
oVirt
- Разработчик – Red Hat.
- Бесплатный продукт, основанный на библиотеке KVM.
- Присутствует REST API, используется библиотека libvirt.
Плюсы:
Возможность управлять виртуальными машинами через веб-интерфейс.
Легкость в добавлении и удалении виртуальных машин.
Автономное управление виртуальными машинами и хостами.
Минусы:
Сложен в освоении.
Хранение основано на сети.
Утилиты для управления:
oVirt VM Portal
Утилиты для соединения с виртуальными машинами
oVirt Remote Viewer
Недавно о поддержке проекта сообщили такие компании как CISCO, IBM, INTEL и др.
OpenVZ
- Разработчик – Parallels.
- Бесплатный продукт.
- Виртуализация на уровне операционной системы, с поддержкой только linux гостевых систем.
- Для интеграции возможно использовать LibVirt, либо OpenStack API который поддерживает работу с OpenVZ.
Плюсы:
Относительно малое использование памяти в сравнении с другими технологиями.
Легко отслеживать.
Контейнеры имеют лучшую производительность по CPU.
Минусы:
Есть ограничения по использованию ОС.
Утилиты для управления:
OpenVZ Web Panel.
Утилиты для соединения с виртуальными машинами:
OpenVZ guest tools.
Больше всего OpenVZ используют для создания контейнеров, используя инструмент Virtuozzo.
XEN
- Разработчик – The Xen Project.
- Бесплатный продукт.
- Присутствует API в виде системных библиотек, Libvirt, XAPI, командной строки.
Плюсы:
Полная виртуализация.
Использует Citrix Storage Link как уникальный способ хранения данных.
Поддержка многоядерных процессоров.
Минусы:
Относительно медленный, особенно при высокой частоте запросов.
Интеграция XEN может быть довольно проблематичной.
Утилиты для управления:
Citrix XEN Center.
Утилиты для соединения с виртуальными машинами:
Citrix VM tools.
Citrix и Oracle использует виртуализацию от XEN в своих продуктах.