Ein inoffizieller Port der beliebten Open-Source-Virtualisierungslösung Proxmox erlaubt jetzt den Betrieb auf ARM-basierten Rechnern wie dem Raspberry Pi.
Virtualisierungslösungen unterscheiden sich vor allem in der Art der Abschottung und Unabhängigkeit der Systeme voneinander. Auf der einen Seite steht die vollständige Virtualisierung der Hardware, bei der man die Gastsysteme beliebig wählen kann und sie völlig autark arbeiten. Auf der anderen stehen Containerlösungen, die auf Ressourcen des Hosts zugreifen. Die Hardware wird nur bedingt virtualisiert, insbesondere die CPU-Architektur des Hosts legt auch den Gast fest.
Dieser Artikel stellt Proxmox VE (Virtual Environment) der österreichischen Firma Proxmox Server Solutions GmbH [1] vor. Die Software liegt komplett quelloffen vor, es gibt keinerlei Nutzungseinschränkungen. Die Firma lebt von Support-Verträgen, die vor allem professionelle Kunden abschließen. Proxmox gewann in letzter Zeit an Momentum, nicht zuletzt deswegen, weil der Platzhirsch VMware seine Kunden zunehmend vergrault.
Der Funktionsumfang von Proxmox VE umfasst sowohl Vollvirtualisierung als auch die schlanke Variante auf Basis von Linux-Containern (Abbildung 1). Allerdings gibt es keinen offiziellen Port für ARM64 respektive den RasPi. Aber da Proxmox VE Debian als Basis verwendet und die Quellen offenliegen, gibt es mittlerweile einen inoffiziellen Port mit dem wenig fantasievollen Namen Proxmox-Port [2]. Wir titulieren ihn der Einfachheit halber mit dem Kürzel Pveport.
Installation
Als Basis installieren Sie ein aktuelles Pi OS Lite in der 64-Bit-Version. Wie immer beim Ausprobieren von neuer Software eignet sich ein dediziertes Testsystem am besten, oder zumindest eine leere SD-Karte. Ein Produktivsystem profitiert von einer schnellen NVMe-SSD, für erste Tests benötigen Sie sie aber nicht. Es fallen ein paar Anpassungen am frisch installierten System an, damit die Proxmox-Installation später funktioniert. Details dazu nennt der Kasten “Pi OS für Pveport anpassen”.
Pi OS für Pveport anpassen
Für die Installation und den Betrieb von Proxmox-Port gilt es, Pi OS ein wenig anzupassen. Zuallererst setzen Sie mit sudo passwd ein Root-Passwort, das Sie später für das Login in die Weboberfläche benötigen. Außerdem muss es dem Nutzer Root erlaubt sein, sich per SSH einzuloggen. Das erledigt die Zeile PermitRootLogin yes in der Datei /etc/ssh/sshd_config. Den SSH-Server starten Sie anschließend per sudo systemctl restart sshd neu.
Des Weiteren benötigt der RasPi eine feste IP-Adresse und eine virtuelle Netzwerkbrücke, an der später alle VMs und Container hängen. Dazu ändern Sie die Datei /etc/network/interfaces wie in Listing 1 zu sehen. Die IP-Adressen in den Zeilen 10 und 11 passen Sie an Ihre Umgebung an und tragen sie anschließend noch in die Datei /etc/hosts ein. Dort steht dann als letzte Zeile zum Beispiel 192.168.2.10 pi5.
Listing 1
/etc/network/interfaces
auto lo iface lo inet loopback iface eth0 inet manual auto wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp auto vmbr0 iface vmbr0 inet static address 192.168.2.10/24 gateway 192.168.2.1 bridge-ports eth0 bridge-stp off bridge-fd 0
Danach gilt es, Pi OS das Repository mit den Pveport-Paketen hinzuzufügen. Dazu benötigen Sie zum einen den Schlüssel, mit dem die Pakete signiert sind, und zum anderen das neue Paket-Repository. Beides richten Sie über das Skript aus Listing 2 ein, dass Sie mit administrativen Rechten ausführen müssen.
Listing 2
Paketquellen erweitern
#!/bin/bash # Repo-Schlüssel importieren curl -L https://mirrors.apqa.cn/proxmox/debian/pveport.gpg -o /etc/apt/trusted.gpg.d/pveport.gpg # Repo-Eintrag erstellen cat <<EOF > /etc/apt/sources.list.d/pveport.list deb https://mirrors.apqa.cn/proxmox/debian/pve bookworm port EOF
Nach diesen Vorarbeiten installieren Sie ebenfalls mit Root-Rechten mit dem Skript aus Listing 3 die nötigen Pakete. Einzelne Pakete stellen Rückfragen, so etwa Postfix nach der Art der Installation. Betreiben Sie keinen eigenen Mailserver in Ihrem Netzwerk, wählen Sie nur lokal.
Listing 3
Pakete installieren
#!/bin/bash # System aktualisieren apt update && apt full-upgrade # Pakete installieren apt install ifupdown2 apt install proxmox-ve postfix open-iscsi
Hat alles geklappt, dann erreichen Sie nach einem Neustart die Administrationsoberfläche des Pveport-Systems über https://<I>Server-IP<I>:8006. Dort begrüßt Sie ein Login-Fenster, in dem Sie sich als root mit dem von Ihnen gewählten Passwort anmelden. Die Sprache stellen Sie gegebenenfalls auf Deutsch um. Alles in allem schaufelt die Installation rund 2,1 GByte an Dateien auf die Platte, dauert aber nur wenige Minuten.
TIPP
Bei der produktiven Nutzung von Containern und VMs profitieren Sie von einem LVM-verwalteten Storage Pool, dessen Verwendung die Proxmox-Doku im Detail beschreibt. Die physikalische Partition des Pools liegt sinnvollerweise auf einer SSD. Ebenfalls dort sollte ein weiterer, verzeichnisbasierter Storage Pool liegen, der ISO-Images und andere Dateien aufnimmt. Verwenden Sie eine SSD, sollten Sie also die Partitionierung selbst in die Hand nehmen und das nicht Pi OS überlassen, das stupide eine einzige übergroße Partition anlegt.
Erste Schritte
Die Weboberfläche umfasst mehrere Spalten. Links sehen Sie die Übersicht des Proxmox-Clusters (Rechenzentrum mit Knoten) und der installierten Systeme. Die mittlere Spalte zeigt kontextbezogene Menüpunkte, bei der Auswahl eines Hosts beispielsweise die spezifischen Einträge. Die dritte Spalte führt Details zum ausgewählten Menüpunkt auf. In Abbildung 2 ist links pi5 ausgewählt, der einzige Rechner im Rechenzentrums-Cluster. Nach Auswahl des Menüpunkts Übersicht in der mittleren Spalte zeigt das Hauptfenster diverse Kennzahlen des Knotens.

Abbildung 2: Die Weboberfläche von Pveport verwirrt zunächst durch ihren Funktionsumfang, erschließt sich aber durch den logischen Aufbau recht schnell.
Über die Menüpunkte passen Sie die Infrastruktur gemäß Ihren Anforderungen an. Sinnvoll ist es zum Beispiel, über Storage Speicherplatz auf einer SSD oder zumindest in einem anderen Verzeichnis für virtuelle Maschinen oder Container bereitzustellen. Die Installation konfiguriert lediglich einen einzelnen Speicherbereich im Verzeichnis /var/lib/vz/, was eine saubere Trennung von System und Anwendungsdaten verhindert.
Für Pveport steht eine umfangreiche Onlinehilfe bereit, die Sie über die Schaltfläche Dokumentation oben rechts in der Web-GUI erreichen. Darüber hinaus finden Sie im Netz viele Anleitungen und Tutorials zu Proxmox VE. Die beziehen sich zwar auf die x86_64-Version, aber soweit es sich um die Pflege der Proxmox-VE-Infrastruktur handelt, fallen die Unterschiede zur RasPi-Version gering aus.
Container
Bei Pveport wählen Sie zwischen virtuellen Maschinen (VMs) und Containern (CTs), wobei sich letztere einfacher und schneller einrichten lassen. Dazu brauchen Sie eine Vorlage, ein sogenanntes Template, das aus einem gepackten Wurzeldateisystem besteht. Da Container in aller Regel nur eine einzelne Aufgabe haben, bleiben die verfügbaren Vorlagen minimal und sind deshalb nicht groß.
Passende Templates für diverse Distributionen erhalten Sie auf der Jenkins-Website [3]. Für jede Distro-Version gibt es dort in der Regel Templates für verschiedene Zielarchitekturen. Über die Webseite navigieren Sie zum ARM64-Template Ihrer Wahl und kopieren den Link für eine Datei, die immer rootfs.tar.xz heißt. Üblicherweise klappt das per Rechtsklick auf den Link und die Auswahl von Link-Adresse kopieren.
Danach navigieren Sie in der Pveport-Oberfläche über Rechenzentrum | [Server] | Storage zum Storage-Bereich, der das Speichern von Templates erlaubt. Dann wählen Sie Container-Templates (mittlere Spalte) und klicken auf Von URL herunterladen. Im folgenden Dialog (Abbildung 3) tragen Sie in der ersten Zeile den kopierten Link ein und in der zweiten einen sinnvollen Namen, der auf .tar.xz enden muss. Dann starten Sie das Herunterladen. Das Fenster bleibt nach Abschluss des Downloads offen, in der letzten Zeile des Logs sollten Sie die Erfolgsmeldung sehen.
Aus dieser Vorlage erstellen Sie jetzt mit einem Klick auf Erstelle CT beliebig viele Container. Der Konfigurationsassistent fragt diverse Eckdaten ab, die meisten davon fallen selbsterklärend aus. Das vergebene Passwort fungiert später als Root-Passwort im Container. Beim Netzwerk wählen Sie eine freie Adresse, passend zum Beispiel aus Listing 1 etwa 192.168.2.100/24. Für schnelle Tests bietet sich DHCP als Alternative an, aber für Server ist das normalerweise eine schlechte Wahl.
Der erstellte Container startet nicht automatisch, das erledigen Sie über die Weboberfläche. Dazu wählen Sie in der linken Spalte den Container an und klicken danach auf Start. Rechts davon befindet sich eine Schaltfläche für eine Konsolensitzung. Am Anfang werden Sie die einzelnen Schaltflächen sicher suchen müssen, aber unterm Strich präsentiert sich die Oberfläche klar und sinnvoll strukturiert. Nach dem Start des Containers aktivieren Sie eine Konsole, melden sich mit dem Root-Passwort des Containers an und legen los (Abbildung 4).
Virtuelle Maschinen
Auch für virtuelle Maschinen gibt es fertige Images im Netz, zum Beispiel von Debian. Das Herunterladen, Importieren und Anpassen bringt aber nicht wirklich Vorteile gegenüber einer Grundinstallation. Greifen Sie also lieber zu einem ISO-Abbild für eine Netzinstallation. Dabei handelt es sich um meist schlanke Images, den Rest erledigen Sie über die Installationsroutine. Sie müssen nur aufpassen, die Variante für ARM64 oder AArch64 zu wählen. Das Einrichten einer VM klappt analog zum oben beschriebenen Einrichten eines Containers: Link kopieren und dann über die Pveport-Oberfläche herunterladen.
Die VM muss zudem passend ausgestattet sein (Abbildung 5). Für das CD/DVD-Laufwerk wählen Sie die ISO-Datei und stellen außerdem sicher, dass es an der Spitze der Bootreihenfolge liegt. Das erledigen Sie nach dem Anlegen der VM über den Menüpunkt Optionen. Die Hardwareausstattung und weitere Einstellungen können Sie auch nachträglich anpassen, allerdings greifen die Änderungen erst nach einem Neustart der VM.

Abbildung 5: Ähnlich wie VMware oder Virtualbox erlaubt Proxmox das genaue Einstellen der Hardwarekonfiguration der VM.
Die Installation eines Debian 12 “Bookworm”, das zu 95 Prozent identisch mit einem Pi OS ist, funktionierte im Test problemlos. Abbildung 6 zeigt Firefox mit einer Seite von RPG innerhalb des virtuellen Fensters, das wiederum innerhalb einer Firefox-Instanz auf einem PC läuft. Zwischen den beiden Zeilen mit den URLs sehen Sie die Taskleiste des virtuellen Systems und die Reiterleiste des virtualisierten Firefox.
Neben Debian packten wir im Test auch noch Ubuntu und OpenSuse auf den Cluster. Ersteres machte zwar keine Probleme, hat aber einen erheblichen Umfang, und die Installation lädt noch einmal genauso viele Daten herunter. Der OpenSuse-Installer verweigerte zunächst seinen Dienst, öffnete aber zum Glück eine Reihe von Konsolen. Ein manueller Abbruch des Installers mit kill und ein anschließender Neustart von YaST führten dann aber zu einem vollständig installierten System.
Fazit
Proxmox-Port funktionierte während des gesamten Tests ohne Probleme – wir ziehen den Hut sowohl vor Proxmox als auch dem Entwickler, der das System portiert hat. Es verwundert nicht, dass Proxmox in der PC-Welt immer mehr Freunde und auch zahlende Kunden gewinnt. Der eingesetzte RasPi 5 kam trotz diverser Container und VMs nie an seine Grenzen, was aber auch von der Art der Nutzung abhängt. Unbenutzte Container beziehungsweise VMs belasten den Host kaum.
Wer eher in einer GUI-Umgebung unterwegs ist und hin und wieder ein Spielsystem braucht, der fährt mit einem echten Testrechner besser. Proxmox VE orientiert sich eindeutig am Betrieb in Rechenzentren und eignet sich nicht für jeden Heimanwender. Nutzen Sie im heimischen Netz aber viele Dienste, sollten Sie auf alle Fälle einen Blick auf die Virtualisierungslösung werfen, statt ein Sammelsurium physikalischer Systeme zu verwenden. Proxmox VE beziehungsweise Pveport machen das Erstellen und Verwalten vieler Systeme deutlich einfacher.
Die dritte Zielgruppe sind Admins, die beruflich mit virtualisierten Systemen arbeiten. Die angepeilten Targets werden zwar selten auf einem RasPi 5 laufen, aber so günstig wie mit ein paar SBCs kommt man an keine Test- und Entwicklungsumgebung, die alle Funktionen einer großen Lösung abdeckt. (tle/jlu)
Der Autor
Bernhard Bablok genießt seinen Ruhestand mit Musikhören, Spaziergängen und Radtouren. Daneben beschäftigt er sich mit Themen rund um Linux, Programmierung und Kleinrechnern. Sie erreichen ihn unter mailto:mail@bablokb.de.
Infos
-
Proxmox: https://www.proxmox.com/de/
-
Proxmox-Port für den RasPi: https://github.com/jiangcuo/Proxmox-Port
-
Container-Templates: https://jenkins.linuxcontainers.org/view/Images/









