iSCSI & LUNs

iSCSI ist ein blockbasiertes Speicherprotokoll, das SCSI-Befehle über IP-Netzwerke überträgt. In ONTAP werden hierfür LUNs (Logical Unit Numbers) innerhalb von Volumes erstellt und über eine SAN-Infrastruktur an Hosts (Initiatoren) gemappt.

Übersicht und Monitoring

Aktive iSCSI-Sessions prüfen

Um zu sehen, welche Hosts aktuell über iSCSI mit dem Vserver verbunden sind:

vserver iscsi connection show -vserver svm_iscsi-DR

LUN-Status abfragen

Gibt eine Übersicht über alle LUNs, deren Größe und den Online-Status:

lun show -vserver svm_iscsi-DR

Network Management (iSCSI LIFs)

Für iSCSI ist es Best Practice, dedizierte LIFs in isolierten Subnetzen (SAN-A / SAN-B) zu verwenden. iSCSI LIFs unterstützen im Gegensatz zu NFS/CIFS kein automatisches Failover (SPOF-Vermeidung erfolgt über MPIO auf Host-Seite).

Target IQN ermitteln

Der Host benötigt den IQN (iSCSI Qualified Name) des Vservers, um die Verbindung aufzubauen:

vserver iscsi show -vserver svm_iscsi-DR -fields target-name

Status der SAN-LIFs

network interface show -vserver svm_iscsi-DR -data-protocol iscsi

iSCSI Provisionierung (Schritt-für-Schritt)

Die Bereitstellung von Block-Speicher erfolgt in drei Kernschritten:

1. Initiator Group (igroup) erstellen

In einer igroup werden die IQNs der Hosts hinterlegt, die Zugriff erhalten sollen.

# igroup für einen Windows- oder ESXi-Host erstellen
lun igroup create -vserver svm_iscsi-DR -igroup ig_hv01 -protocol iscsi -ostype windows -initiator iqn.1991-05.com.microsoft:hv01.corp.local

2. LUN erstellen

LUNs liegen immer innerhalb eines Volumes. Es wird empfohlen, pro LUN ein eigenes Volume zu verwenden (1:1 Mapping).

# Volume erstellen
volume create -vserver svm_iscsi-DR -volume vol_lun_data01 -aggregate aggr1 -size 550GB -state online

# LUN innerhalb des Volumes erzeugen
lun create -vserver svm_iscsi-DR -path /vol/vol_lun_data01/lun_data01 -size 500GB -ostype windows

3. LUN Mapping

Hierbei wird die LUN für die zuvor erstellte igroup freigegeben.

lun mapping create -vserver svm_iscsi-DR -path /vol/vol_lun_data01/lun_data01 -igroup ig_hv01

Laufende Verwaltung

LUN vergrößern (Online)

LUNs können im laufenden Betrieb vergrößert werden. Danach muss der Host (Windows Disk Management oder ESXi Rescan) den neuen Platz erkennen.

# 1. Volume vergrößern (muss immer größer als die LUN sein)
volume size -vserver svm_iscsi-DR -volume vol_lun_data01 -new-size +100GB

# 2. LUN vergrößern
lun resize -vserver svm_iscsi-DR -path /vol/vol_lun_data01/lun_data01 -size 600GB

LUN Statistiken (Performance)

Um Latenzen und IOPS speziell für eine LUN zu prüfen:

statistics show -object lun -instance /vol/vol_lun_data01/lun_data01

Löschen einer iSCSI-Struktur

Um eine LUN sicher zu entfernen, muss die Kette in umgekehrter Reihenfolge gelöst werden:

# 1. Mapping aufheben
lun mapping delete -vserver svm_iscsi-DR -path /vol/vol_lun_data01/lun_data01 -igroup ig_hv01

# 2. LUN offline nehmen und löschen
lun offline -vserver svm_iscsi-DR -path /vol/vol_lun_data01/lun_data01
lun delete -vserver svm_iscsi-DR -path /vol/vol_lun_data01/lun_data01

# 3. Volume bereinigen
volume offline -vserver svm_iscsi-DR -volume vol_lun_data01
volume delete -vserver svm_iscsi-DR -volume vol_lun_data01

Stelle sicher, dass auf dem Host-System ein Multipath-Treiber (z. B. Windows MPIO oder ALUA unter Linux) konfiguriert ist, damit beim Ausfall eines Pfades der Zugriff auf die LUN nicht unterbrochen wird.