Proxmox ISCSI Anbindung: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 89: Zeile 89:
  
 
== Proxmox: Speicher hinzufügen ==
 
== Proxmox: Speicher hinzufügen ==
 +
 
In der Proxmox-Oberfläche:   
 
In der Proxmox-Oberfläche:   
 
Datacenter → Storage → Add → ZFS over iSCSI
 
Datacenter → Storage → Add → ZFS over iSCSI
Zeile 97: Zeile 98:
 
* Pool: pool1
 
* Pool: pool1
 
* Target: iqn.2025-07.net.example:storage
 
* Target: iqn.2025-07.net.example:storage
* Target Portal Group: 1
+
* Target Portal Group: tpg1
 
* iSCSI Provider: LIO
 
* iSCSI Provider: LIO
* Blocksize: 4k
+
* Blocksize: 8k
 
* Write Cache: aktiviert
 
* Write Cache: aktiviert
 
* Thin Provisioning: optional
 
* Thin Provisioning: optional
 +
 +
Hinweise:
 +
* Der Eintrag bei "Target Portal Group" muss dem tatsächlichen LIO-Namen entsprechen, z. B. tpg1 – nicht nur eine Zahl
 +
* Eine Blocksize von mindestens 8k wird empfohlen, um Fragmentierung und Speicherverlust zu vermeiden
 +
* Thin Provisioning spart Platz, sollte aber nur aktiviert werden, wenn der Pool dafür ausgelegt ist
  
 
== Testen ==
 
== Testen ==

Version vom 8. Juli 2025, 16:41 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 contrib

Aktualisiere 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/vol1

iSCSI-Target erstellen:

cd /iscsi
create iqn.2025-07.net.example:storage

Backstore als LUN zuweisen:

cd /iscsi/iqn.2025-07.net.example:storage/tpg1/luns
create /backstores/block/zfsvol

ACL für Proxmox-Initiator erstellen:

cd /iscsi/iqn.2025-07.net.example:storage/tpg1/acls
create iqn.2025-07.net.proxmox:initiator

TargetCLI verlassen:

exit

SSH-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 einer Proxmox-Node einen eigenen Schlüssel erzeugen

mkdir -p /etc/pve/priv/zfs
ssh-keygen -f /etc/pve/priv/zfs/10.0.10.235_id_rsa
ssh-copy-id -i /etc/pve/priv/zfs/10.0.10.235_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_id_rsa

Proxmox: Speicher hinzufügen

In der Proxmox-Oberfläche: Datacenter → Storage → Add → ZFS over iSCSI

Einstellungen:

  • ID: zfs-iscsi
  • Portal: 10.0.10.235
  • Pool: pool1
  • Target: iqn.2025-07.net.example:storage
  • Target Portal Group: tpg1
  • iSCSI Provider: LIO
  • Blocksize: 8k
  • Write Cache: aktiviert
  • Thin Provisioning: optional

Hinweise:

  • Der Eintrag bei "Target Portal Group" muss dem tatsächlichen LIO-Namen entsprechen, z. B. tpg1 – nicht nur eine Zahl
  • Eine Blocksize von mindestens 8k wird empfohlen, um Fragmentierung und Speicherverlust zu vermeiden
  • Thin Provisioning spart Platz, sollte aber nur aktiviert werden, wenn der Pool dafür ausgelegt ist

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)