System Design Space
Граф знанийНастройки

Обновлено: 17 апреля 2026 г. в 23:17

Виртуализация: гипервизоры и VM

средний

Гипервизоры, типы виртуализации, сетевой путь внутри VM и цена изоляции в реальной инфраструктуре.

Тема виртуализации важна тем, что виртуальная машина - это не просто способ «запустить ещё одну ОС», а инструмент изоляции, многоарендности и управления эксплуатационным риском.

На практике глава помогает выбирать уровень изоляции и понимать цену гипервизора: как он влияет на плотность размещения, безопасность, соседние шумные нагрузки и чувствительные к задержке сервисы.

В интервью и архитектурных обсуждениях это даёт ясный каркас для сравнения VM, выделенных серверов и контейнеров через последствия, а не через лозунги.

Практическая польза главы

Изоляция контуров

Помогает выбирать уровень изоляции и понимать, как он влияет на безопасность и плотность размещения.

Накладные расходы

Учит учитывать стоимость виртуализации при проектировании сервисов, чувствительных к задержке.

Управляемость платформы

Показывает, где модель виртуальных машин остаётся предпочтительной для контроля среды и совместимости.

Сравнение подходов

Даёт ясные критерии сравнения VM и контейнеров в архитектурном ответе.

Источник

Virtualization

Определение виртуализации, типы и ключевые подходы.

Перейти на сайт

Виртуализация важна не только как способ плотнее использовать железо, но и как базовый слой изоляции, многоарендности и управляемости инфраструктуры. Именно здесь появляется цена гипервизора, накладных расходов и соседних нагрузок.

Для виртуальных машин ключевая фигура здесь — , который делит один физический хост на несколько изолированных сред, каждая со своей . Это важно и для изоляции, и для многоарендности, и для контроля над тем, как соседние нагрузки создают эффект .

Если смотреть именно на виртуальные машины, полезно различать , и . У них разная цена по изоляции, накладным расходам и тому, как они влияют на и соблюдение .

Даже в и рядом с этот слой не исчезает: контейнерные платформы часто живут поверх VM, а внутри каждой гостевой системы по-прежнему есть граница между и .

Какая виртуализация бывает

Аппаратная виртуализация

Виртуальные машины с отдельными гостевыми операционными системами поверх гипервизора.

Виртуализация на уровне ОС

Контейнеры разделяют одно ядро, но изолируют процессы, файловые системы и сетевое окружение.

Сетевая виртуализация

Виртуальные сети, коммутаторы и балансировщики поверх физической сети.

Виртуализация хранения

Логические тома, пулы хранения и абстракция физических дисков для разных нагрузок.

Как устроена виртуализация виртуальных машин

Полная виртуализация

Гостевая операционная система работает без модификаций, а гипервизор воспроизводит аппаратный интерфейс.

Паравиртуализация

Гостевая система или её драйверы знают о гипервизоре и используют более короткие пути обращения к ресурсам.

Аппаратно-ускоренная

Использует расширения процессора вроде VT-x или AMD-V, чтобы уменьшить накладные расходы виртуализации.

Гипервизор первого типа

Работает напрямую на физическом сервере и сам управляет виртуальными машинами.

Гипервизор второго типа

Работает поверх хостовой операционной системы и использует её драйверы и сервисы.

В облаках чаще встречаются гипервизоры первого типа, а на рабочих станциях — второго.

Сравнение подходов к виртуализации VM

Полная виртуализация

  • Гостевая ОС: Гостевая операционная система запускается без изменений.
  • Производительность: Выше накладные расходы на процессор и операции ввода-вывода.
  • Совместимость: Высокая совместимость, в том числе со старыми системами.
  • Где применяют: Лабораторные среды, сценарии совместимости и редкие гостевые ОС.

Паравиртуализация

  • Гостевая ОС: Гостевая система или драйверы знают о гипервизоре.
  • Производительность: Быстрее полной эмуляции за счёт специальных интерфейсов доступа.
  • Совместимость: Нужна поддержка паравиртуализированных интерфейсов или драйверов.
  • Где применяют: Ускорение сети и диска внутри виртуальных машин.

Аппаратно-ускоренная

  • Гостевая ОС: Гостевая операционная система обычно работает без модификаций.
  • Производительность: Лучший практический баланс между изоляцией и скоростью для боевых сред.
  • Совместимость: Широкая при наличии VT-x/AMD-V.
  • Где применяют: Облачные платформы и большинство кластеров с реальной нагрузкой.

На практике для боевых сред часто выбирают аппаратно-ускоренную VM вместе с ускоренными драйверами сети и диска.

Примеры реальных систем

Полная виртуализация

  • QEMU в режиме TCG (эмуляция без VT-x/AMD-V).
  • Сценарии совместимости в VMware Workstation и VirtualBox для старых гостевых систем.

Выбирают там, где важнее совместимость, чем максимальная производительность.

Паравиртуализация

  • Xen PV с паравиртуализированными гостевыми системами.
  • KVM/QEMU + virtio для ускоренных сетевых и дисковых устройств.
  • VMware VMXNET3 и PVSCSI как паравиртуализированные драйверы ввода-вывода.

На практике это часто гибридный слой ввода-вывода поверх аппаратно-ускоренных виртуальных машин.

Аппаратно-ускоренная

  • KVM (Linux), VMware ESXi, Microsoft Hyper-V, Xen HVM.
  • Google Compute Engine, AWS Nitro и Azure VM как примеры облачной реализации.

Путь по умолчанию для боевых сред благодаря хорошему соотношению производительности и изоляции.

Несколько VM на одном хосте

Эта схема помогает увидеть, как гипервизор делит процессор, память, сеть и диск между несколькими виртуальными машинами и где именно появляется цена изоляции.

Хостовая машина (физический сервер)
Физическое оборудование
CPURAMДискСетевая карта
Слой гипервизора

Гипервизор виртуализирует процессор, память, сеть и диск, создавая изолированные виртуальные машины.

Виртуальные машины внутри хоста

VM 1

  • Гостевая ОС
  • Nginx
  • Приложение A

VM 2

  • Гостевая ОС
  • API
  • Обработчик

VM 3

  • Гостевая ОС
  • База данных
  • Кэш
Общие ресурсы

Все виртуальные машины делят ресурсы одного хоста, но остаются изолированными на уровне гостевой ОС и гипервизора.

Как запрос доходит до Nginx внутри VM

Даже простой HTTP-запрос проходит здесь через несколько слоёв: сетевую карту хоста, виртуальный коммутатор гипервизора, сетевой стек гостевой системы и только потом доходит до Nginx внутри VM.

Путь запроса к Nginx внутри VM

Путь запроса: интернет → хост → гипервизор → VM → сервис

Внешняя сеть

Слой 1
КлиентИнтернет

Хост

Слой 2
Сетевая картаСеть хоста

Гипервизор

Слой 3
Виртуальный коммутаторПривязка vNIC

VM

Слой 4
Гостевая ОСTCP/IP

Сервис

Слой 5
NginxПриложение
Путь запроса

Текущий шаг

Нажмите «Старт», чтобы пройти путь запроса.

Почему это важно для системного дизайна

  • Виртуальные машины дают сильную изоляцию и удобный перенос нагрузок между хостами.
  • Итоговая производительность зависит не только от CPU, но и от пути сети, диска и решений гипервизора по распределению ресурсов.
  • Дополнительные сетевые и дисковые слои могут увеличить задержку и влиять на выполнение соглашения об уровне сервиса.
  • Во многих платформах именно виртуальная машина остаётся единицей развёртывания, даже если сверху уже живут контейнеры.
  • Понимание виртуализации помогает оценивать стоимость, плотность размещения и влияние соседних нагрузок на сервис.

Связанные главы

Чтобы отмечать прохождение, включи трекинг в Настройки