Proxmox ISCSI Anbindung: Unterschied zwischen den Versionen
| Zeile 72: | Zeile 72: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | == SSH-Schlüssel für Proxmox | + | == SSH-Schlüssel pro Proxmox-Node für ZFS-Zugriff == |
| − | Auf | + | |
| + | Jeder Proxmox-Knoten benötigt einen eigenen SSH-Schlüssel, um unabhängig mit dem ZFS-Server (10.0.10.235) kommunizieren zu können. Diese Methode ist sicher, Proxmox-kompatibel und erlaubt eine saubere Trennung der Zugriffe. | ||
| + | |||
| + | === Auf jedem Proxmox-Node einen eigenen Schlüssel erzeugen === | ||
| + | Die folgenden Befehle müssen auf jedem Cluster-Node einzeln ausgeführt werden. | ||
| + | |||
| + | Beispiel: pve1, pve2, pve3 | ||
| + | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
| − | ssh-keygen -f /etc/pve/priv/zfs/10.0.10. | + | ssh-keygen -f /etc/pve/priv/zfs/10.0.10.235:3260_id_rsa |
| − | ssh-copy-id -i /etc/pve/priv/zfs/10.0.10. | + | ssh-copy-id -i /etc/pve/priv/zfs/10.0.10.235:3260_id_rsa.pub root@10.0.10.235 |
</syntaxhighlight> | </syntaxhighlight> | ||
| + | |||
| + | === Hinweise === | ||
| + | * Die Datei muss exakt auf jedem Node liegen unter: | ||
| + | /etc/pve/priv/zfs/10.0.10.235:3260_id_rsa | ||
| + | * Der öffentliche Schlüssel muss jeweils auf dem ZFS-Server eingetragen sein. | ||
| + | * Der Zugriff funktioniert dann unabhängig von anderen Nodes. | ||
| + | * Diese Methode ist empfohlen für produktive Cluster mit mehr als einem Node. | ||
== Proxmox: Speicher hinzufügen == | == Proxmox: Speicher hinzufügen == | ||
Version vom 8. Juli 2025, 15:48 Uhr
Einrichtung von ZFS over iSCSI in Proxmox mit LIO auf Debian
Einleitung
Diese Anleitung beschreibt die vollständige Einrichtung eines iSCSI-Servers mit ZFS-Backend unter Debian 12 mithilfe von LIO (Linux-IO Target) sowie die Integration in Proxmox VE als "ZFS over iSCSI"-Speicher.
Repository vorbereiten (contrib aktivieren)
Bearbeite die Paketquellen:
nano /etc/apt/sources.list
Füge contrib zu den Hauptzeilen hinzu:
deb http://deb.debian.org/debian bookworm main contribAktualisiere die Paketliste:
apt update
ZFS und LIO installieren
apt install zfsutils-linux targetcli-fb
reboot
ZFS-Pool und zvol erstellen
Erstelle einen ZFS-Pool auf einer freien Partition oder Disk:
zpool create pool1 /dev/vdb
Erzeuge ein zvol (blockbasiertes Volume):
zfs create -V 10G pool1/vol1
iSCSI-Target mit LIO einrichten
Starte die Konfiguration:
targetcli
Backstore aus dem zvol erstellen:
cd /backstores/block
create zfsvol /dev/zvol/pool1/vol1iSCSI-Target erstellen:
cd /iscsi
create iqn.2025-07.net.example:storageBackstore als LUN zuweisen:
cd /iscsi/iqn.2025-07.net.example:storage/tpg1/luns
create /backstores/block/zfsvolACL für Proxmox-Initiator erstellen:
cd /iscsi/iqn.2025-07.net.example:storage/tpg1/acls
create iqn.2025-07.net.proxmox:initiatorTargetCLI verlassen:
exitSSH-Schlüssel pro Proxmox-Node für ZFS-Zugriff
Jeder Proxmox-Knoten benötigt einen eigenen SSH-Schlüssel, um unabhängig mit dem ZFS-Server (10.0.10.235) kommunizieren zu können. Diese Methode ist sicher, Proxmox-kompatibel und erlaubt eine saubere Trennung der Zugriffe.
Auf jedem Proxmox-Node einen eigenen Schlüssel erzeugen
Die folgenden Befehle müssen auf jedem Cluster-Node einzeln ausgeführt werden.
Beispiel: pve1, pve2, pve3
ssh-keygen -f /etc/pve/priv/zfs/10.0.10.235:3260_id_rsa
ssh-copy-id -i /etc/pve/priv/zfs/10.0.10.235:3260_id_rsa.pub root@10.0.10.235
Hinweise
- Die Datei muss exakt auf jedem Node liegen unter:
/etc/pve/priv/zfs/10.0.10.235:3260_id_rsa
- Der öffentliche Schlüssel muss jeweils auf dem ZFS-Server eingetragen sein.
- Der Zugriff funktioniert dann unabhängig von anderen Nodes.
- Diese Methode ist empfohlen für produktive Cluster mit mehr als einem Node.
Proxmox: Speicher hinzufügen
In der Proxmox-Oberfläche: Datacenter → Storage → Add → ZFS over iSCSI
Einstellungen:
- ID: zfs-iscsi
- Portal: 10.0.10.210
- Pool: pool1
- Target: iqn.2025-07.net.example:storage
- Target Portal Group: 1
- iSCSI Provider: LIO
- Blocksize: 4k
- Write Cache: aktiviert
- Thin Provisioning: optional
Testen
Erstelle eine neue VM oder Container auf dem ZFS-iSCSI-Speicher. Verifiziere Snapshots, Clones und Performance.
Fehlerbehebung
- systemctl status rtslib-fb-targetctl
- targetcli ls
- Port 3260 erreichbar? (Firewall)