Bei Proxmox Virtual Environment oder kurz Proxmox VE handelt es sich um eine auf Debian 9 (Stretch) basierende Virtualisierungsplattform mit einer eigenen Web-Oberfläche.
Als Hypervisor kommt KVM zum Einsatz. Neben klassischen VMs können auch LXC Container (Linux Containers) mit Proxmox VE verwaltet werden.
Proxmox VE steht als Open Source unter der AGPLv3 Lizenz zur Verfügung. Wer also aktuell auf der Suche nach so etwas ist, sollte sich Proxmox VE auf jedenfall anschauen.
Ich betreibe aktuelle mehrere Instanzen von Proxmox VE, zum Beispiel:
- Ein Proxmox VE Cluster mit vier Knoten
- Zuhause auf meinem Home-Server
Ich persönlich finde es die bisher beste Web-Oberfläche zur Verwaltung von virtuellen Maschinen. Besonders gut gefällt mir, dass man sowohl die Oberfläche nutzen kann, oder die CLI (also Kommandozeile). Auch das im Hintergrund einfach ein Debian läuft, wo man über apt-get install einfach alles installieren kann was man benötigt finde ich klasse!
Die Installation ist ein Kinderspiel, auch vor Updates habe ich bisher keine Angst, dass letzte große Update von Proxmox VE 4.x auf 5.x, wo auch Debian Jessie auf Debian Stretch angehoben wurde, hatte ohne Probleme funktioniert.
Proxmox Virtual Environment - Die Installation
Ich benutzte den Proxmox VE 5.1 ISO Installer von der offiziellen Website. Um die Screenshots machen zu können, habe ich hier im Beispiel die Installation einmal in VirtualBox durchgeführt.
In der Praxis habe ich die Installation immer von einem USB-Stick oder direkt über das IPMI des Servers durchgeführt. Beides hatte immer problemlos geklappt.
Schritt 1
Der Installer begrüßt uns gleich mit dem Bootmenü. Hier wählt man natürlich "Install Proxmox VE" aus.
Schritt 2
Wie schon erwähnt führe ich hier die Installation in einer VirtualBox VM auf Windows aus. Wenn bei euch die Meldung kommt, müsst ihr vermutlich im BIOS zuerst die Virtualisierung aktivieren. Bei Intel Proztesoren sucht nach VT-x und bei AMD nach AMD-V.
Danach müsst ihr einmal die AGPLv3 akzeptieren.
Schritt 3
Ich betreibe alle meine Proxmox VE Systeme mit ZFS. Was die genauen Vorteile davon sind und was man beachten muss, kann im offiziellen Wiki nachgelesen werden.
Ich habe in meinem System nur eine Festplatte (bzw. SSD) zur Verfügung. Deshalb wähle ich zfs (RAID0). Wenn ihr zwei Festplatten zur Verfügung habt, solltet ihr ein RAID 1 nutzen.
Unter "Advanced Options" deaktiviere ich noch die Komprimierung.
Schritt 4
Ab jetzt ist die Installation schon fast geschafft. Der Installer fragt euch nun nach eurem Land. Hier könnt ihr auch die Zeitzone und das Tastaturlayout festlegen.
Schritt 5
Jetzt vergebt ihr das Passwort für den Benutzer root
.
Mit dem Passwort was ihr hier setzt, könnt ihr euch auch später in der Web-Oberfläche oder über SSH anmelden.
Schritt 5
Im empfehle, für den Proxmox VE Server eine feste IP-Adresse zu setzen.
Schritt 6
Ab jetzt ist erst einmal Füße hochlegen angesagt. Nun wird nur noch die eigentliche Installation durchgeführt.
Schritt 7
Wenn die Installation abgeschlossen ist, müsst ihr einen Neustart vom System durchführen.
Nicht vergessen den USB Stick mit dem Installer abzuziehen oder die CD aus dem Laufwerk zu nehmen.
Nach dem Neustart zeigt euch das System direkt die URL für die Web-Oberfläche an.
In meinem Fall https://192.168.1.251:8006/
. Diese Adresse könnt ihr jetzt in
eurem Browser aufrufen.
Bevor ihr jetzt allerdings anfangt, solltet ihr den Artikel auf jedenfall noch zu ende lesen.
No-Subscription Repository
Wenn ihr möchtet, könnt ihr eine Subscription für Proxmox VE erwerben. Die Vorteile könnt ihr im verlinkten Artikel nachlesen.
Für die Nutzung ist keine Subscription erforderlich. Ihr unterstützt damit aber das Produkt.
Wer Proxmox VE ohne Subscription nutzen möchte, sollte das "Proxmox VE No-Subscription Repository" bei sich eintragen. Dafür gibt es im Wiki wieder eine Anleitung.
Im Anschluss noch:
rm /etc/apt/sources.list.d/pve-enterprise.list
apt-get update
Nginx Reverse Proxy für die Proxmox VE Web-Oberfläche
Wer sich nicht den Port 8006
für die Web-Oberfläche merken möchte,
kann noch einen Nginx als Revers Proxy instalieren. Dann ist die Proxmox VE
Oberfläche direkt über die IP-Adresse des Systems erreichbar.
Auch dafür gibt es eine Anleitung im Wiki.
In der Anleitung gibt es leider ein kleines Problem (oder ich hatte in meinem Test auf jedenfall dieses Problem).
Die SSL Zertifikate, welche von Nginx genutzt werden sollen, liegen unter /etc/pve/local/pve-ssl.{pem|key}
Bei /etc/pve/
wird das Proxmox Cluster File System (pmxcfs)
genutzt. Ich hatte bei mir das Problem, dass das Dateisystem (pmxcfs) noch nicht
bereit war, als Nginx beim Start des System gestartet werden sollte.
Deshalb habe ich die Standard systemd
Konfiguration von Nginx überschrieben,
dass bevor Nginx gestartet wird, erst der Dienst pve-manager.service
gestartet werden muss.
Dazu einfach den folgenden Inhalt in die Datei /etc/systemd/system/nginx.service kopieren.
[Unit]
Description=A high performance web server and a reverse proxy server
Documentation=man:nginx(8)
After=network.target pve-manager.service
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/sbin/nginx -g 'daemon on; master_process on;'
ExecReload=/usr/sbin/nginx -g 'daemon on; master_process on;' -s reload
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid
TimeoutStopSec=5
KillMode=mixed
[Install]
WantedBy=multi-user.target
Dann müsst ihr die Änderungen noch aktivieren:
systemctl daemon-reload
reboot
ZFS - Out of Memory
Wie jedes Dateisystem, nutzt auch ZFS den Arbeitsspeicher als Cache. Bei ZFS wird in der Regel allerdings etwas mehr im Cache gehalten, als bei anderen Dateisystemen.
Zusätzlich wird der Cache nicht als Cache angezeigt, zum Beispiel in htop
.
Wenn man nun ein System mit wenig RAM benutzt, sollte man eventuell die Größe des
Cache reduzieren.
Ich habe in meinem Home-Server zum Beispiel nur 8GB RAM zur Verfügung und deshalb den Cache auf 2GB begrenzt. Mehr Infos gibt es dazu auch noch hier.
Die Größe des Cache wird in der Datei /etc/modprobe.d/zfs.conf
in Byte gesetzt:
options zfs zfs_arc_max=2147483648
Hier einfach die gewünschte Größe eintragen. In meinem Fall 2GB * 1024 * 1024 * 1024 = 2147483648
.
Proxmox VE Wiki
Wie ihr beim lesen des Artikels schon gemerkt habt, steht für Proxmox VE ein tolles Wiki zur Verfügung. Sollte einmal etwas nicht auf Anhieb klappen, oder man weiß nicht wie etwas geht, ist dies eine super Anlaufstelle.
Weitere Blogbeiträge
Mein aktueller Plan ist, dass ich noch zu folgenden Themen einzelne Blogbeiträge schreibe: