Proxmox ISCSI Anbindung: Unterschied zwischen den Versionen
| Zeile 2: | Zeile 2: | ||
== Einleitung == | == Einleitung == | ||
| − | Diese Anleitung beschreibt die | + | Diese Anleitung beschreibt die Einrichtung eines iSCSI-Servers mit ZFS unter Debian 12 sowie die Anbindung in Proxmox VE per "ZFS over iSCSI" mit dem LIO-Target-System. |
== Repository vorbereiten (contrib aktivieren) == | == Repository vorbereiten (contrib aktivieren) == | ||
| Zeile 10: | Zeile 10: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | Füge contrib zu den | + | Füge contrib zu den relevanten Zeilen hinzu: |
<syntaxhighlight> | <syntaxhighlight> | ||
deb http://deb.debian.org/debian bookworm main contrib | deb http://deb.debian.org/debian bookworm main contrib | ||
| Zeile 26: | Zeile 26: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | == ZFS-Pool | + | == ZFS-Pool erstellen == |
| − | Erstelle einen ZFS-Pool auf einer freien Partition | + | Erstelle einen ZFS-Pool auf einer freien Disk oder Partition: |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
zpool create pool1 /dev/vdb | zpool create pool1 /dev/vdb | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | + | == iSCSI-Target in LIO anlegen == | |
| − | + | Starte die LIO-Konfiguration: | |
| − | |||
| − | |||
| − | |||
| − | == iSCSI-Target | ||
| − | Starte die Konfiguration: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
targetcli | targetcli | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | + | Lege das iSCSI-Target an: | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | iSCSI-Target | ||
<syntaxhighlight> | <syntaxhighlight> | ||
cd /iscsi | cd /iscsi | ||
create iqn.2025-07.net.example:storage | create iqn.2025-07.net.example:storage | ||
| + | exit | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | + | == ACL für Proxmox-Initiatoren anlegen == | |
| − | <syntaxhighlight> | + | Proxmox verwendet iSCSI-Initiatornamen, die freigegeben werden müssen. Ermittle den Initiatornamen auf jedem Node: |
| − | + | ||
| − | + | <syntaxhighlight lang="bash"> | |
| + | cat /etc/iscsi/initiatorname.iscsi | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | ACL | + | Erstelle für jeden Node einen passenden ACL-Eintrag: |
| − | <syntaxhighlight> | + | |
| + | <syntaxhighlight lang="bash"> | ||
| + | targetcli | ||
cd /iscsi/iqn.2025-07.net.example:storage/tpg1/acls | cd /iscsi/iqn.2025-07.net.example:storage/tpg1/acls | ||
| − | create iqn. | + | create iqn.1993-08.org.debian:01:pmx1 |
| − | + | create iqn.1993-08.org.debian:01:pmx2 | |
| − | + | create iqn.1993-08.org.debian:01:pmx3 | |
| − | |||
| − | |||
exit | exit | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== SSH-Schlüssel pro Proxmox-Node für ZFS-Zugriff == | == SSH-Schlüssel pro Proxmox-Node für ZFS-Zugriff == | ||
| + | Jeder Proxmox-Knoten benötigt einen eigenen SSH-Schlüssel, um mit dem ZFS-Server (10.0.10.235) kommunizieren zu können. | ||
| − | + | Auf jedem Node: | |
| − | |||
| − | |||
| − | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
mkdir -p /etc/pve/priv/zfs | mkdir -p /etc/pve/priv/zfs | ||
| Zeile 83: | Zeile 72: | ||
ssh-copy-id -i /etc/pve/priv/zfs/10.0.10.235_id_rsa.pub root@10.0.10.235 | ssh-copy-id -i /etc/pve/priv/zfs/10.0.10.235_id_rsa.pub root@10.0.10.235 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | |||
| − | |||
| − | |||
| − | |||
== 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 105: | Zeile 89: | ||
Hinweise: | Hinweise: | ||
| − | * | + | * Target Portal Group muss exakt tpgX heißen – z. B. tpg1 |
| − | * | + | * Proxmox erstellt zvols und LUNs automatisch – keine manuelle Konfiguration nötig |
| − | + | * Blocksize 8k wird empfohlen zur Vermeidung von Overhead | |
== Testen == | == Testen == | ||
| − | Erstelle eine neue VM | + | Erstelle eine neue VM in Proxmox und wähle den ZFS-iSCSI-Speicher aus. |
| − | + | Proxmox legt dabei automatisch ein zvol an und bindet es per LIO ein. | |
== Fehlerbehebung == | == Fehlerbehebung == | ||
* systemctl status rtslib-fb-targetctl | * systemctl status rtslib-fb-targetctl | ||
* targetcli ls | * targetcli ls | ||
| − | * Port 3260 erreichbar | + | * Firewall prüfen: Port 3260 TCP muss erreichbar sein |
| + | * Bei „Authorization failure(514)“ sicherstellen, dass der Initiator als ACL in LIO eingetragen ist | ||
Version vom 8. Juli 2025, 16:46 Uhr
Einrichtung von ZFS over iSCSI in Proxmox mit LIO auf Debian
Einleitung
Diese Anleitung beschreibt die Einrichtung eines iSCSI-Servers mit ZFS unter Debian 12 sowie die Anbindung in Proxmox VE per "ZFS over iSCSI" mit dem LIO-Target-System.
Repository vorbereiten (contrib aktivieren)
Bearbeite die Paketquellen:
nano /etc/apt/sources.list
Füge contrib zu den relevanten Zeilen 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 erstellen
Erstelle einen ZFS-Pool auf einer freien Disk oder Partition:
zpool create pool1 /dev/vdb
iSCSI-Target in LIO anlegen
Starte die LIO-Konfiguration:
targetcli
Lege das iSCSI-Target an:
cd /iscsi
create iqn.2025-07.net.example:storage
exitACL für Proxmox-Initiatoren anlegen
Proxmox verwendet iSCSI-Initiatornamen, die freigegeben werden müssen. Ermittle den Initiatornamen auf jedem Node:
cat /etc/iscsi/initiatorname.iscsi
Erstelle für jeden Node einen passenden ACL-Eintrag:
targetcli
cd /iscsi/iqn.2025-07.net.example:storage/tpg1/acls
create iqn.1993-08.org.debian:01:pmx1
create iqn.1993-08.org.debian:01:pmx2
create iqn.1993-08.org.debian:01:pmx3
exit
SSH-Schlüssel pro Proxmox-Node für ZFS-Zugriff
Jeder Proxmox-Knoten benötigt einen eigenen SSH-Schlüssel, um mit dem ZFS-Server (10.0.10.235) kommunizieren zu können.
Auf jedem Node:
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
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:
- Target Portal Group muss exakt tpgX heißen – z. B. tpg1
- Proxmox erstellt zvols und LUNs automatisch – keine manuelle Konfiguration nötig
- Blocksize 8k wird empfohlen zur Vermeidung von Overhead
Testen
Erstelle eine neue VM in Proxmox und wähle den ZFS-iSCSI-Speicher aus. Proxmox legt dabei automatisch ein zvol an und bindet es per LIO ein.
Fehlerbehebung
- systemctl status rtslib-fb-targetctl
- targetcli ls
- Firewall prüfen: Port 3260 TCP muss erreichbar sein
- Bei „Authorization failure(514)“ sicherstellen, dass der Initiator als ACL in LIO eingetragen ist