Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
proxmox:proxmox_grundlagen [03.12.2024] – gelöscht kolja | proxmox:proxmox_grundlagen [10.12.2024] (aktuell) – kolja | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Grundlagen ====== | ||
+ | |||
+ | ====== Virtuelle Maschinen (VM), LXC Container (privilegiert und unprivilegiert) in Proxmox ====== | ||
+ | |||
+ | In diesem Dokument werden die grundlegenden Konzepte von virtuellen Maschinen (VM) sowie privilegierten und unprivilegierten LXC Containern im Kontext der Virtualisierungsplattform [Proxmox](https:// | ||
+ | |||
+ | ===== Was ist eine Virtuelle Maschine (VM)? ===== | ||
+ | Eine Virtuelle Maschine ist eine vollständig isolierte Umgebung, die ein komplettes Betriebssystem inklusive eigener Kernel-Instanz ausführt. Die Virtualisierung erfolgt in der Regel durch einen Hypervisor (bei Proxmox KVM-basiert). VMs erhalten dedizierte virtuelle Hardware (CPU, RAM, virtuelle Festplatten, | ||
+ | |||
+ | **Eigenschaften einer VM:** | ||
+ | * Volle Virtualisierung von Hardware-Ressourcen (CPU, Speicher, Netzwerk, Speichergeräte) | ||
+ | * Läuft in einem isolierten Software-Container, | ||
+ | * Betriebssystemunabhängig (kann verschiedenste OS-Typen nutzen) | ||
+ | * Höherer Overhead, da vollständige virtuelle Hardware emuliert wird | ||
+ | |||
+ | Beispiel: | ||
+ | Auf einem Proxmox-Host wird eine VM mit 4 vCPUs, 8 GB RAM und 100 GB virtuellem Speicherplatz erstellt, auf der ein vollständiges Ubuntu Server OS läuft. | ||
+ | |||
+ | ===== Was ist ein LXC Container? ===== | ||
+ | LXC (Linux Containers) ist eine leichtgewichtige Virtualisierungs- bzw. Containerisierungstechnologie, | ||
+ | |||
+ | **Eigenschaften von LXC Containern: | ||
+ | * Betriebssystem-Ebene-Isolation (kein eigener Kernel im Container) | ||
+ | * Niedriger Overhead, da keine volle Hardwarevirtualisierung stattfindet | ||
+ | * Sehr schnelle Start- und Stoppzeiten | ||
+ | * In Proxmox direkt unterstützt | ||
+ | |||
+ | LXC Container sind in zwei Varianten verfügbar: **privilegiert** und **unprivilegiert**. | ||
+ | |||
+ | ==== Privilegierte LXC Container ==== | ||
+ | Ein privilegierter Container läuft mit root-Rechten im Kontext des Host-Systems (UID 0 im Container entspricht UID 0 auf dem Host). Dies macht ihn konzeptionell einfacher, birgt aber gewisse Sicherheitsrisiken, | ||
+ | |||
+ | **Eigenschaften privilegierter Container: | ||
+ | * Einfachere Verwaltung von Berechtigungen und Ressourcen | ||
+ | * Höheres Sicherheitsrisiko bei Exploits oder Fehlkonfigurationen, | ||
+ | * Noch immer geringerer Overhead als eine VM | ||
+ | |||
+ | ==== Unprivilegierte LXC Container ==== | ||
+ | Unprivilegierte Container verwenden eine UID/GID-Map (Benutzer- und Gruppen-ID-Zuordnungen) im Host, um sicherzustellen, | ||
+ | |||
+ | **Eigenschaften unprivilegierter Container: | ||
+ | * Höhere Sicherheit, da Host-Root-Rechte nicht direkt auf den Container-Root abgebildet werden | ||
+ | * Etwas aufwändigere Einrichtung, | ||
+ | * Sicherheit steht hier klar im Vordergrund | ||
+ | |||
+ | ===== Vergleich zwischen VM und LXC ===== | ||
+ | |||
+ | ^ Technologie ^ Virtualisierungsebene ^ Kernel-Nutzung ^ Overhead ^ Startzeit ^ Anwendungsfälle ^ | ||
+ | | VM (KVM) | Hardware-Ebene | Eigener Kernel im Gast | Höher | Langsamer (Sekunden bis Minuten) | Vollständige OS-Isolation, | ||
+ | | LXC Container (priv./ | ||
+ | |||
+ | ===== Vor- und Nachteile ===== | ||
+ | |||
+ | === Virtuelle Maschinen === | ||
+ | **Vorteile: | ||
+ | * Volle Isolation, vollständige virtuelle Hardwareumgebung | ||
+ | * Beliebige Betriebssysteme können installiert werden | ||
+ | * Stabiler und etablierter Standard für viele Einsatzzwecke | ||
+ | |||
+ | **Nachteile: | ||
+ | * Höherer Ressourcenverbrauch | ||
+ | * Längere Boot-Zeiten | ||
+ | * Komplexere Verwaltung, da eigenes OS gepflegt werden muss | ||
+ | |||
+ | === Privilegierte LXC Container === | ||
+ | **Vorteile: | ||
+ | * Sehr geringe Ressourcenbelastung | ||
+ | * Schnelle Startzeiten | ||
+ | * Einfache Einrichtung im Vergleich zu unprivilegierten Containern | ||
+ | |||
+ | **Nachteile: | ||
+ | * Geringere Sicherheit als unprivilegierte Container | ||
+ | * Risiko von Privilege Escalation, falls Lücken ausgenutzt werden | ||
+ | |||
+ | === Unprivilegierte LXC Container === | ||
+ | **Vorteile: | ||
+ | * Höchste Sicherheit unter den Container-Varianten | ||
+ | * Geringe Ressourcenbelastung, | ||
+ | |||
+ | **Nachteile: | ||
+ | * Etwas komplexere Einrichtung durch UID/ | ||
+ | * Teilweise Einschränkungen bei Zugriffen und Berechtigungen, | ||
+ | |||
+ | ===== Wann was verwenden? ===== | ||
+ | |||
+ | **Virtuelle Maschinen: | ||
+ | Setze VMs ein, wenn | ||
+ | * Verschiedene Betriebssysteme (z. B. Windows und Linux) auf demselben Host laufen sollen | ||
+ | * Eine vollständige Hardwarevirtualisierung und maximale Isolation erforderlich ist | ||
+ | * Eine stabil etablierte und flexible Lösung benötigt wird, unabhängig vom Host-Kernel | ||
+ | |||
+ | **Privilegierte LXC Container: | ||
+ | Setze privilegierte Container ein, wenn | ||
+ | * Du schnell und ressourcensparend Linux-basierte Services bereitstellen willst | ||
+ | * Du weniger Aufwand bei der Verwaltung von UID/ | ||
+ | * Sicherheitsrisiko tolerierbar ist (z. B. interne Entwicklungsumgebung) | ||
+ | |||
+ | **Unprivilegierte LXC Container: | ||
+ | Setze unprivilegierte Container ein, wenn | ||
+ | * Sicherheit oberste Priorität hat | ||
+ | * Du nur Linux-Workloads betreibst, die im gleichen Kernelumfeld funktionieren | ||
+ | * Du die Vorteile der Containerisierung nutzen willst, ohne die Host-Sicherheit zu kompromittieren | ||
+ | |||
+ | ===== Zusammenfassung ===== | ||
+ | Proxmox bietet mit KVM-VMs und LXC-Containern zwei Hauptvirtualisierungsansätze. VMs sind ideal für heterogene, vollständig isolierte Umgebungen und bieten maximale Flexibilität, | ||
+ | |||
+ | Durch die gezielte Wahl der passenden Technologie kannst Du Deine Ressourcen effizient nutzen und Deine Sicherheits- und Performanzanforderungen optimal ausbalancieren. | ||
+ | |||