Większość administratorów, którzy stawiają pierwsze kroki z Proxmox, zaczyna od tworzenia VM — pełnych maszyn wirtualnych z własnym jądrem, BIOS-em i pełną izolacją sprzętową. To słuszny wybór dla systemów Windows i w wielu przypadkach Linuxa. Ale Proxmox oferuje też drugą opcję: kontenery LXC — i warto wiedzieć, kiedy są lepszym wyborem.
VM vs LXC — kluczowa różnica
Maszyna wirtualna (KVM) emuluje kompletny sprzęt. Każda VM ma własne jądro, własny bootloader, własny BIOS. Izolacja jest kompletna — VM nie „wie”, że jest VM. To kosztuje zasoby: nawet minimalny system Windows Server na VM zajmuje 2 GB RAM i kilkanaście GB dysku zanim w ogóle zainstaluje się aplikacja.
Kontener LXC współdzieli jądro z hostem (Proxmox). Nie ma własnego bootloadera, nie emuluje sprzętu. Kontener uruchamia się w sekundy (nie minuty), zużywa kilkadziesiąt–kilkaset MB RAM zamiast gigabajtów i zajmuje ułamek miejsca na dysku.
Do czego używać LXC?
LXC sprawdza się świetnie wszędzie tam, gdzie potrzebujesz usługi Linux bez narzutu pełnej wirtualizacji:
- serwer WWW (Nginx, Apache) lub reverse proxy
- bazy danych (MariaDB, PostgreSQL, Redis)
- serwer DNS (Pi-hole, Unbound, BIND)
- Uptime Kuma, Grafana, Prometheus, Zabbix — narzędzia monitoringu świetnie działają w LXC
- serwer plików Samba
- mail relay, filtry antyspamowe
- środowiska deweloperskie i testowe
Czego nie uruchamiać w LXC: systemy Windows, aplikacje wymagające specyficznych modułów jądra, systemy z wymogami pełnej izolacji sprzętowej.
Jak stworzyć kontener LXC w Proxmox
Proxmox ma wbudowany system szablonów kontenerów. W panelu webowym: local storage → CT Templates → Templates — pobierasz gotowy szablon (Debian, Ubuntu, Alpine, CentOS, Fedora i inne). Następnie Create CT: wybierasz szablon, przydzielasz CPU, RAM i dysk, konfigurujesz sieć.
Cały kontener z Ubuntu 22.04 i Nginxem gotowy do pracy to mniej niż 5 minut od kliknięcia „Create CT”.
Bezpieczeństwo kontenerów
LXC ma nieco słabszą izolację niż pełna VM — współdzielone jądro oznacza, że exploit na poziomie jądra może wpłynąć na wszystkie kontenery. W praktyce dla typowych usług wewnętrznych w MŚP nie jest to istotny problem. Dla usług wystawionych publicznie lub obsługujących wrażliwe dane warto rozważyć pełną VM.
Proxmox obsługuje też kontenery unprivileged (domyślne) — mapowanie UID/GID poza kontenerem, co znacząco ogranicza potencjalny zasięg ataku.
Ile kontenerów zmieści się na serwerze?
Na serwerze z 32 GB RAM, gdzie działają 3–4 VM (każda po 4–8 GB RAM), spokojnie można dodatkowo uruchomić 10–20 kontenerów LXC dla różnych usług. Margines zasobów, który „zmarnowałby się” na VM, wystarcza na kompletny stos usług pomocniczych w kontenerach.
Jeśli projektujesz środowisko Proxmox i chcesz wiedzieć, co uruchomić jako VM, a co jako LXC — napisz do nas. Projektujemy środowiska wirtualizacyjne z myślą o efektywności zasobów i łatwości administracji.
