Виртуализация
Виртуализация создаёт изолированные виртуальные машины (ВМ) с собственной "виртуальной" железкой: CPU, RAM, диски, сеть. Гипервизор распределяет физические ресурсы и перехватывает привилегированные инструкции гостя. От контейнеров ВМ отличаются полной ОС и большим overhead — зато сильнее изоляция.
Гипервизоры типа 2 (настольные)
Запускаются поверх хостовой ОС — удобны для разработки и обучения.
| Продукт | Платформы | Установка |
|---|---|---|
| VirtualBox | Win, Linux, macOS | virtualbox.org · apt install virtualbox |
| VMware Workstation Player | Win, Linux | vmware.com |
| Parallels Desktop | macOS | parallels.com |
| UTM | macOS, iOS (QEMU) | App Store / utmapp |
Гипервизоры типа 1 (bare-metal)
Ставятся на железо — дата-центры и серверные фермы.
| Продукт | Основа | Ссылка |
|---|---|---|
| VMware ESXi | Проприетарный | vmware.com/go/download-esxi |
| Proxmox VE | Debian + KVM/LXC | proxmox.com |
| XCP-ng | Xen | xcp-ng.org |
| Microsoft Hyper-V | Windows Server / Pro | dism /Online /Enable-Feature:Microsoft-Hyper-V /All |
QEMU и KVM (Linux)
| Компонент | Роль |
|---|---|
| QEMU | Эмуляция и виртуализация; с KVM — аппаратное ускорение |
| KVM | Модуль ядра (нужны VT-x / AMD-V) |
| virt-manager | GUI для libvirt |
grep -E 'vmx|svm' /proc/cpuinfo
sudo apt install qemu-kvm virt-manager
Контейнеры и ВМ
| Виртуальная машина | Контейнер (Docker) | |
|---|---|---|
| Изоляция | Сильная, своя ОС | Общее ядро, namespaces |
| Старт | Минуты | Секунды |
| Плотность | Ниже | Выше |
Подробнее: Контейнеризация.
Инфраструктура как код
| Инструмент | Задача |
|---|---|
| Vagrant | Описание ВМ в Vagrantfile |
| Terraform | Провайдеры vSphere, Proxmox, AWS EC2 |
| libvirt | API для KVM через virsh |
brew install vagrant
vagrant init ubuntu/jammy64 && vagrant up
Специализированные решения
| Продукт | Сценарий |
|---|---|
| Firecracker | МикроВМ для serverless (AWS Lambda) |
| Windows Sandbox | Одноразовая изолированная среда Win |
| WSL 2 | Легковесная Linux-ВМ в Windows |