Schluss mit LVM? TrueNAS-Blockstorage für Proxmox!

Wer einen Proxmox-Cluster mit mehreren Hypervisoren betreibt, kommt früher oder später an den Punkt, an dem zentraler Shared Storage benötigt wird. Insbesondere bei Live-Migrationen und Hochverfügbarkeit (HA) ist es sinnvoll, virtuelle Festplatten zentral bereitzustellen, sodass alle Cluster-Nodes auf dieselben Daten zugreifen können.

Neben klassischen dateibasierten Lösungen wie NFS oder CephFS bietet Proxmox VE auch die Möglichkeit, Blockstorage über iSCSI oder Fibre Channel (FC) einzubinden. In der Praxis kommt dabei häufig LVM zum Einsatz. Die Kombination funktioniert zuverlässig, bringt allerdings einige Einschränkungen mit sich.

Moderne Storage-Systeme bieten mittlerweile deutlich komfortablere Integrationsmöglichkeiten. Ein interessantes Beispiel ist TrueNAS: Über ein eigenes Proxmox-Plugin lassen sich ZFS-basierte Block-Volumes direkt aus Proxmox heraus bereitstellen und verwalten. Wie das funktioniert und welche Vorteile sich daraus ergeben, schauen wir uns in diesem Artikel genauer an.

Klassisches SAN-Storage mit LVM:

Blockstorage mit LVM in Proxmox

Der Standard, Blockstorage in einem Proxmox-Cluster bereitzustellen, ist die Kombination aus iSCSI oder Fibre Channel mit LVM. Dabei wird ein bereitgestelltes Block-Device zunächst als Physical Volume (PV) initialisiert. Darauf wird eine Volume Group (VG) erstellt, in der Proxmox anschließend für jede virtuelle Festplatte ein eigenes Logical Volume (LV) anlegt.

Auf diese Weise lässt sich ein zentral bereitgestelltes Block-Device von mehreren Proxmox-Nodes als Shared Storage verwenden. Die Koordination des Zugriffs übernimmt dabei das LVM-Storage-Backend von Proxmox. Der Ansatz funktioniert zuverlässig, bringt allerdings einige zusätzliche Konfigurationsschritte mit sich.

Auf dem Storage-System muss zunächst eine ausreichend dimensionierte Logical Unit Number (LUN) erstellt und bereitgestellt werden. Anschließend lässt sich der iSCSI- oder Fibre-Channel-Storage bequem über die Datacenter-Weboberfläche in Proxmox VE einbinden.

Damit ist die Konfiguration allerdings noch nicht abgeschlossen. Im nächsten Schritt muss auf Basis des eingebundenen Block-Device ein LVM-Storage eingerichtet werden. Die Verwaltung der Logical Volumes und die Koordination des Zugriffs übernimmt anschließend Proxmox VE.

Der Einrichtungsaufwand ist zwar etwas höher, stellt in der Praxis aber kein großes Hindernis dar. Die eigentlichen Einschränkungen liegen vielmehr beim klassischen LVM-Backend: Es unterstützt ausschließlich Thick Provisioning und Proxmox bietet damit keine native Snapshot-Funktionalität an.

LVM selbst beherrscht zwar Snapshots, diese sind allerdings mit einigen Einschränkungen verbunden. Bei klassischen LVM-Snapshots muss bereits bei der Erstellung eine maximale Größe für den Snapshot-Bereich reserviert werden. Wird dieser Bereich vollständig ausgeschöpft, wird der Snapshot ungültig und kann nicht mehr für ein Rollback verwendet werden.

Hinzu kommt, dass der Copy-on-Write-Mechanismus die I/O-Performance beeinträchtigen kann. Seit Proxmox VE 9 gibt es inzwischen einen neuen Ansatz: VM-Snapshots werden über sogenannte Volume Chains auf Basis von qcow2 ermöglicht. Dabei handelt es sich allerdings nicht um native LVM-Snapshots. Leider befindet sich die Funktion noch in der Tech-Preview.

💡 Gut zu wissen:

Multipathing lässt sich unter Proxmox VE nicht über die Weboberfläche konfigurieren. Die Einrichtung erfolgt vollständig über die Kommandozeile. Dazu müssen auf jedem Cluster-Node zunächst die entsprechenden Multipath-Tools installiert und anschließend die erforderlichen Konfigurationsdateien angepasst beziehungsweise neu erstellt werden.

ZFS-Blockstorage mit TrueNAS:

TrueNAS Proxmox Plugin

Mit dem TrueNAS Proxmox VE Storage Plugin gibt es mittlerweile eine deutlich komfortablere Möglichkeit, TrueNAS als zentrales Blockstorage-Backend für Proxmox-Cluster zu nutzen. Die Anbindung erfolgt wahlweise über iSCSI oder NVMe over TCP (NVMe/TCP).

Der entscheidende Unterschied zur klassischen iSCSI-LVM-Konfiguration liegt in der direkten Integration über die TrueNAS-API. Anstatt LUNs, ZVOLs und iSCSI-Zuordnungen manuell auf dem Storage-System anzulegen, übernimmt das Plugin diese Aufgaben automatisch. Die Bereitstellung und Verwaltung der virtuellen Festplatten erfolgt direkt über die Proxmox-Weboberfläche.

Als Grundlage dient das ZFS-Dateisystem von TrueNAS. Dadurch stehen Funktionen wie Thin Provisioning, transparente Kompression und platzsparende Snapshots zur Verfügung. Auch die Sicherung des laufenden VM-Zustands inklusive Arbeitsspeicher wird unterstützt. Ergänzt wird der Funktionsumfang durch CHAP-Authentifizierung und Multipathing.

Damit verbindet das Plugin die zentrale Bereitstellung von Blockstorage mit den Komfortfunktionen von ZFS und ermöglicht eine wesentlich engere Integration zwischen Proxmox VE und TrueNAS. Der Bereitstellungsprozess gestaltet sich damit deutlich komfortabler und bietet gleichzeitig Funktionen, die insbesondere für Enterprise-Umgebungen interessant sind:

  1. Storage einbinden: Das TrueNAS-System wird einmalig als Storage in Proxmox VE integriert.
  2. Volume anfordern: Proxmox fordert die Bereitstellung einer neuen virtuellen Festplatte an.
  3. ZVOL erstellen: Das Plugin legt automatisch ein entsprechendes ZVOL auf TrueNAS an.
  4. iSCSI konfigurieren: Das ZVOL wird als iSCSI-Extent eingebunden und dem konfigurierten Target zugeordnet.
  5. Volume verwenden: Proxmox kann die virtuelle Festplatte anschließend wie gewohnt nutzen.

Die Verwaltung der virtuellen Festplatten erfolgt direkt über Proxmox, während TrueNAS die darunterliegende ZFS-Verwaltung übernimmt. So konzentriert sich jedes System auf seine Kernkompetenzen: Proxmox auf die Virtualisierung und TrueNAS auf das Storage-Management.

💡 Warum ZFS statt LVM?

ZFS bietet gegenüber klassischem LVM einige entscheidende Vorteile:

  • Native Snapshots: Nahezu verzögerungsfrei und platzsparend.
  • Thin Provisioning: Speicherplatz nur bei tatsächlicher Belegung.
  • Kompression: Transparente Reduzierung des Speicherbedarfs.
  • Datenintegrität: Prüfsummen erkennen stille Datenkorruption.
  • Copy-on-Write: Konsistente Datenstände ohne Überschreiben bestehender Blöcke.

TrueNAS und PVE – ein starkes Duo:

TrueNAS Plugin und Proxmox

Das TrueNAS Proxmox VE Storage Plugin ist eine interessante Erweiterung für alle, die TrueNAS als zentralen Blockstorage für ihren Proxmox-Cluster einsetzen möchten. Es beseitigt einige der umständlichen manuellen Konfigurationsschritte der klassischen iSCSI-LVM-Integration und ermöglicht eine deutlich komfortablere Verwaltung direkt über die Proxmox-Weboberfläche.

Besonders interessant ist die Kombination aus automatisierter ZVOL-Bereitstellung und den nativen ZFS-Funktionen. Thin Provisioning, Kompression und platzsparende Snapshots machen das Setup deutlich flexibler als klassisches LVM. Auch die Unterstützung von NVMe/TCP und Multipathing bietet interessante Möglichkeiten für anspruchsvollere Storage-Umgebungen.

Natürlich bleibt TrueNAS dabei eine zentrale Komponente, deren Verfügbarkeit und Performance maßgeblich von der zugrunde liegenden Hardware und Netzwerkinfrastruktur abhängen. Wer das System produktiv einsetzen möchte, sollte deshalb insbesondere auf redundante Netzwerkpfade und eine entsprechend ausgelegte Storage-Hardware achten.

Für mich ist das Plugin eine sinnvolle Weiterentwicklung. Es verbindet die Stärken von Proxmox VE und ZFS, ohne dass man sich mit unnötig vielen manuellen Konfigurationsschritten beschäftigen muss. Erwähnenswert ist außerdem, dass TrueNAS eine eigene High-Availability-Funktion (HA) mit automatischem Failover bietet. Diese ist allerdings der Enterprise Edition vorbehalten.

🔧 Plugin noch in der Entwicklung:

Nicht vergessen sollte man, dass das Plugin noch relativ neu ist. An der einen oder anderen Stelle kann es daher durchaus noch etwas hakeln oder kleinere Kinderkrankheiten geben. Für produktive Umgebungen empfiehlt es sich deshalb, die Entwicklung des Plugins im Auge zu behalten und das Setup zunächst ausgiebig zu testen.

Von Fabian Wüst

Er ist leidenschaftlicher Open-Source-Benutzer und ein begeisterter Technologie-Enthusiast. Als kreativer Kopf hinter Homelabtopia bringt Fabian hier seine umfangreiche Erfahrung als Linux-Admin ein. Um sicherzustellen, dass du aus seinen Beiträgen den größtmöglichen Nutzen ziehen kannst, führt er ausgiebige Tests durch und errichtet dafür immense Setups.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert