В традиционной физической вычислительной среде ПО, такое как операционные системы или корпоративные приложения, имеет прямой доступ к базовому компьютерному оборудованию и компонентам, включая процессор, память, хранилище, некоторые чипсеты драйверы ОС. Ранее это создавало серьезные проблемы в настройке программного обеспечения, а также существенно затрудняло перемещение или переустановку приложений на другое оборудование — например при восстановлении из резервных копий после аварии.
Об истоках виртуализации
Термин «виртуализация» был придуман в конце 1960-х - начале 1970-х годов в ходе исследовательских проектов IBM и MIT в области совместного использования вычислительных ресурсов группами пользователей. Подробнее об этом вы можете почитать в нашем блоге на Хабре: [ССЫЛКИ на IBM/360 и истоки виртуализации].
В настоящее время виртуализация широко распространена в ИТ. В сфере облачных сервисов лидируют продукты компаний VMware, Microsoft, Citrix и Oracle.
Как работает аппаратная виртуализация
Процесс аппаратной виртуализации включает в себя установку гипервизора или диспетчера виртуальных машин (VMM). Именно они создают уровень абстракции между программным обеспечением и непосредственным «железом». После установки гипервизора программное обеспечение полагается на виртуальные представления вычислительных компонентов — то есть, к примеру, на виртуальные CPU вместо физических. К наиболее популярным гипервизорам можно отнести решения VMware vSphere на основе ESXi и Microsoft Hyper-V.
Виртуализация позволяет бизнесу сократить издержки, связанные с приобретением серверного оборудования. К примеру, вместо покупки 10 разных серверов для размещения 10 приложений, каждому из которых для работы требуется отдельная ОС, достаточно построить виртуализированную систему, которая будет содержать требуемое количество ВМ, в рамках всего одного достаточно мощного сервера.
https://searchservervirtualization.techtarget.com/definition/hardware-virtualization
Поскольку гипервизор устанавливается непосредственно на сервер, а операционные системы и ПО добавляются позже, такой подход часто называют виртуализацией «на голом железе». В последние годы гипервизоры стали самостоятельными узко заточенными ОС. Есть и альтернативный подход, работающий в случае, если вы не можете/не желаете работать с «голым железом» — сперва устанавливается главная операционная система, а уже в ней разворачивается гипервизор и все ВМ. Этот метод часто называют виртуализацией с хост-системой. Сейчас он чаще всего используется для виртуализации контейнеров.
Типы аппаратной виртуализации
Существует несколько типов аппаратной виртуализации. Среди них — полная виртуализация, паравиртуализация и виртуализация с аппаратной поддержкой. Кратко поговорим о каждом из них.
Полная виртуализация полностью имитирует требуемое оборудование для гостевой операционной системы. В итоге получается среда, аналогичная ОС, работающей на отдельном сервере. Использование полной виртуализации позволяет администраторам запускать виртуальные среды любых конфигураций без каких-либо дополнительных аппаратных ухищрений.
Паравиртуализацией называется подход, при котором на ВМ запускается особым образом подготовленная (измененная и/или перекомпилированная) версия гостевой ОС. Иными словами, системные администраторы должны соблюдать исходные требования ОС к железу лишь частично.
Виртуализация с аппаратной поддержкой использует аппаратное обеспечение компьютера в качестве «архитектурной поддержки» для создания полностью виртуализированной ВМ и управления ею. Виртуализация с аппаратной поддержкой была впервые представлена IBM в 1972 году с IBM System / 370. Виртуализация с аппаратной поддержкой на сегодняшний день является наиболее распространенной формой виртуализации.
Технология виртуализации дала жизнь популярным сейчас облачным сервисам, таким как:
- виртуальные VDS/VPS-серверы;
- IaaS, инфраструктура как услуга;
- терминальные серверы в облаке;
- VDI, виртуальная инфраструктура рабочих столов;
- cloud gaming и многим другим.