Недавно случайно заметил любопытную информацию на тему Proxmox VE и новой функциональности, которая меня сразу же заинтересовала. Уже даже не помню где это увидел. Сразу скажу, что это экспериментальная тема не для прода. Актуально в текущей версии может быть только где-то на тестовых серверах.
Речь пойдёт про проект pve-microvm. Основная его идея - получить новую сущность в виде MicroVM, но такую же легковесную, как LXC. Это всё сделано на базе виртуализации KVM и отдельного ядра, а не общего с хостом, как в LXC, но при этом у MicroVM скорость запуска намного быстрее, чем у обычной VM, лишь немного уступает LXC.
Работает это через патчинг qemu-server с помощью установки deb пакета. После этого в веб интерфейсе Proxmox появляется возможность создавать новый тип машины - µVM. Стандартные виртуалки полностью эмулируют BIOS и PCI шины. В MicroVM всё это отсутствует. Вместо этого используется устройство virtio-mmio, которое напрямую загружает ядро виртуальной машины, которое полностью изолировано от хоста.
Технология MicroVM относительно нова. В данном случае относительно появления самих виртуальных машин. Так то эта технология уже довольно развита. Наибольшую популярность она приобрела в AWS. У них есть отдельный проект Firecracker. Похожий принцип реализуется в Kata Containers. По мотивам этих реализаций сделан pve-microvm, который в том числе поддерживает образы Firecracker.
На практике это всё может быть актуально там, где надо часто создавать новые VM, запускать их и удалять. В основном это стало актуально в связи с развитием агентов, которых можно поместить в тестовую среду и заставить там что-то делать. Изоляция контейнеров не полная, плюс, там есть разные нюансы с сетью, общим ядром и т.д. VM для этих целей более практичные, но дольше создаются, запускаются, потребляют больше ресурсов. Временные MicroVM выглядят удобнее.
Второе применение - использование в тестовых лабах, в связке с GNS3, EVE-NG, PNETLab и им подобным. Там по-моему есть интеграция с внешними гипервизорами. Есть отдельный проект из этой области на базе контейнеров - Containerlab. Они как раз выбраны из-за быстрого деплоя и низкого потребления ресурсов. MicroVM для такого продукта будут уместны.
Идея продукта очень классная. Будет здорово, если команда Proxmox заметит этот проект, возьмёт на вооружение, протестирует и интегрирует в PVE. Я сейчас повсеместно использую LXC наравне с VM. У LXC есть ряд неудобств, которые бы полностью закрыли MicroVM. Традиционные VM станут практически не нужны под типовые задачи.
———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩
#proxmox
Post #5854
2.72K


- 👍 48
- 👎 1