В основе любого современного облачного сервиса или VPS-провайдера лежит гипервизор — программный или программно-аппаратный слой, абстрагирующий физические ресурсы процессора, оперативной памяти и дисков от гостевых систем. Исторически сложилась большая тройка платформ корпоративного уровня: открытый стек KVM, проприетарный VMware vSphere (ESXi) и решение от Microsoft — Hyper-V.
1. KVM (Kernel-based Virtual Machine) — стандарт индустрии открытых облаков
KVM интегрирован непосредственно в основную ветку ядра Linux с версии 2.6.20. Архитектурно KVM загружается как модуль ядра (kvm.ko вместе с аппаратно-зависимыми kvm-intel.ko или kvm-amd.ko), превращая хостовое ядро Linux в полноценный bare-metal гипервизор (Type 1).
Каждая виртуальная машина под управлением KVM представляется для операционной системы обычным регулярным процессом Linux, управляемым стандартным планировщиком задач (CFS / EEVDF), а каждый виртуальный процессор (vCPU) — отдельным системным потоком (thread). В тандеме с эмулятором пользовательского пространства QEMU (часто в связке с библиотекой libvirt) KVM обеспечивает максимальную гибкость:
- Zero-Cost Licensing: отсутствие искусственных лицензионных ограничений на число сокетов, vRAM или кластерных функций, что сделало KVM фундаментом для OpenStack, Proxmox VE и подавляющего большинства мировых VPS-хостингов.
- Интеграция с подсистемами ядра: прямая поддержка сжатия и дедупликации памяти KSM (Kernel Samepage Merging), интеграция с eBPF для глубокого трейсинга и файерволинга, а также native поддержка cgroups v2 для жесткого квотирования ресурсов.
- Минусы: отсутствие строгой коробочной графической консоли из коробки (требует надстроек вроде Proxmox, oVirt или OpenNebula) и необходимость глубокого понимания тюнинга параметров Linux для выжимания предельных IOPS.
2. VMware ESXi / vSphere — корпоративный эталон
VMware ESXi — классический монолитный гипервизор Type 1, работающий на собственном микроядре VMkernel, полностью независимом от общих дистрибутивов ОС. Управление железом, прерываниями и потоками здесь целиком подчинено логике виртуализации.
- Продвинутый Memory Management: непревзойденные технологии распределения RAM — Memory Ballooning (вытеснение страниц гостя через драйвер), Transparent Page Sharing (TPS — дедупликация идентичных блоков памяти между ВМ) и компрессия страниц перед сбросом в своп.
- vMotion и DRS: зрелая распределенная координация ресурсов в кластере (Dynamic Resource Scheduling) и бесшовная живая миграция ВМ без прерывания сессий даже при серьезных различиях в поколениях процессоров благодаря EVC (Enhanced vMotion Compatibility).
- Текущие реалии: после изменений в лицензионной политике и ухода от бессрочных лицензий к дорогим подпискам, многие enterprise-пользователи и средние облачные провайдеры активно мигрируют инфраструктуру на стек KVM/Proxmox.
3. Microsoft Hyper-V — основа экосистемы Windows Server и Azure
Hyper-V представляет собой микроядерный гипервизор первого типа (Type 1). При включении роли Hyper-V сам корневой раздел (родительский раздел, Parent Partition под управлением Windows Server) смещается и начинает выполняться *поверх* тонкого слоя гипервизора, наряду с дочерними гостевыми виртуальными машинами.
- Архитектура Enlightened I/O: связь между родительским разделом и гостями происходит через высокоскоростную шину VMBus. Архитектура исключает медленную эмуляцию устройств: компоненты VSC (Virtualization Service Client) в госте общаются напрямую с VSP (Virtualization Service Provider) в родителе.
- Dynamic Memory: автоматическое расширение и сжатие объема ОЗУ гостевой машины на лету в зависимости от реальных нужд сервисов, что крайне эффективно для плотного стека сред разработки и Active Directory/Exchange/1C.
- Родная среда: глубокая интеграция с PowerShell, System Center Virtual Machine Manager (SCVMM) и идеальная совместимость с гостевыми ОС Windows. Для смешанных сред и чистого Linux Hyper-V также эффективен (LIS — Linux Integration Services вшиты в ядро), но уступает KVM по гибкости низкоуровневой модификации сетевого стека.
Сравнительная таблица архитектур
| Параметр | KVM (Linux) | VMware ESXi | Microsoft Hyper-V |
|---|---|---|---|
| Тип архитектуры | Модуль ядра Linux (Type 1) | Монолитное ядро VMkernel (Type 1) | Микроядерный гипервизор (Type 1) |
| Паравиртуализация I/O | virtio (virtio-blk, virtio-scsi, virtio-net) | VMXNET3, PVSCSI | VMBus (Synthetic Devices) |
| Лицензирование | Open Source (GPL v2) | Коммерческая подписка per-core | Включено в Windows Server Core |
| Основное применение | Публичные VPS, Cloud Native, Edge | Крупный Enterprise, Legacy инфраструктура | Корпоративные Windows-инфраструктуры, Azure |