Das richtige Ziel finden

27. September 2007, 8:40 Uhr | Andreas Stolzenberger

iSCSI in der Praxis – Kleine SANs sollen auf teure und aufwändige FC-Komponenten verzichten und Massenspeicher per Ethernet ansprechen. Die Geiz-ist-Geil-Lösung muss jedoch durchdacht geplant und gebaut werden.

Die Praxis hat gezeigt, dass ein iSCSI-SAN einen eigenen Switch und vom LAN-Verkehr abgetrennte LAN-Adapter benötigt. Nur dann können LAN und SAN ohne Bandbreitenprobleme arbeiten. Der Administrator sollte zudem Jumbo-Frames im SAN verwenden, um die CPU-Belastung der Server gering zu halten. Auch neue Maschinen mit ToE-Adaptern helfen hierbei. Wer diese rudimentären Grundlagen befolgt, erhält ein SAN mit ausreichend Performance für zwei bis drei Massenspeichersubsysteme und bis zu zehn Server. Weitere Engpässe können entstehen, wenn die iSCSI-Targets und -Initiatoren nicht gut aufeinander abgestimmt sind.

iSCSI-Host-Bus-Adapter als Hardware-Lösung konnten sich nicht auf dem Markt durchsetzen und kommen nur noch vereinzelt zum Einsatz. An deren Stelle treten verschiedene frei verfügbare Software-Initiatoren. Windows-Computer nutzen Microsofts eigenen Client.

Alternativ steht für Windows-Systeme ein Programm der Firma Rocket-Division zur Verfügung. Der Starport-iSCSI-Initiator beherrscht zudem das abgespeckte ATA-over-Ethernet-Protokoll. Diese Open-Source-Entwicklung verzichtet auf den Overheap des IP-Stacks und packt ATA-Kommandos und -Daten direkt in Ethernet-Frames. AoE ist daher nicht routbar und zielt nur auf den Einsatz in lokalen Netzwerken. Bisher unterstützen noch keine kommerziellen Anbieter den kleinen Bruder des iSCSI. Um einen AoE-Server aufzubauen, bedarf es aktuell eines Linux-Servers mit dem freien AoE-Target-Treiber. Theoretisch existiert mit »HyperSCSI« auch ein Protokoll, um SCSI-Daten ohne IP über das LAN zu transportieren. Zu dieser SAN-Technologie gibt es jedoch weder Soft- noch Hardware.

Unter Linux stehen zwei Implementierungen – Linux-iSCSI und Open-iSCSI – zur Auswahl. Die Entwicklung am älteren, monolithischen Linux-iSCSI-Initiator wird aufgegeben. Linux-Server sollten daher mit dem modularen Open-iSCSI-Initiatior arbeiten. Der teilt sich in einen Kernel-Daemon und ein Administrationsprogramm für den Userspace, wodurch dieser Treiber sich sehr einfach verwalten lässt.

Komplizierter wird das Ganze bei den Targets. Viele große Speicherhersteller entwickeln eigene Lösungen. Diese basieren nicht selten auf Open-Source-Quellen – aber nur wenige Hersteller geben das zu. Zudem gibt es eine Reihe von Software-Targets, die im folgenden Artikel miteinander verglichen werden.

Ein iSCSI-Server erstellt zunächst ein Portal. Hier melden sich die Initiatoren an. Über das Portal erhalten sie eine Liste an verfügbaren Targets, die nicht zwingend auf derselben IP-Adresse wie das Portal liegen. Jedes Target erhält einen eindeutigen Namen IQN. Die Anmeldung der Initiatoren am Target kann anonym oder mit Benutzernamen und Passwort erfolgen. Einige Targets unterstützen zudem das IP-Masking.

Eine Tabelle von IP-Adressen gibt dabei vor, welche Initiatoren sich überhaupt anmelden dürfen. Jedes Target sollte in der Praxis ein Login verlangen oder IP-Masking einsetzen. Sonst kann es dazu kommen, dass Server auf nicht für sie vorgesehe Platten zugreifen und dabei Daten anderer Server korrumpieren.

Targets können mehrere IP-Adressen eines Servers und damit auf mehrere NICs nutzen. Das erlaubt dem Client das so genannte Multi-Pathing, kurz MPIO. Der Client – ebenfalls mit mereren NICs – kennt dann mehrere Routen zum Target und kann diese für Load-Balancing und Failover nutzen.

Bei der Performance bleibt iSCSI hinter FC zurück. Die nutzbare Bandbreite liegt bei rund 50 MByte/s pro Verbindung. Mit mehreren NICs im SAN-Server kann der Administrator zumindest vermeiden, dass sich mehrere Initiatoren auch noch diese Bandbreite teilen müssen.

Trotz der Einschränkungen in Sachen Geschwindigkeit lässt sich iSCSI in kleinen SAN-Installationen anstelle von FC einsetzen. SAN-Server sollten pro geplanten iSCSI-Client jeweils eine 1-GBit/s-Ethernet-Schnittstelle zur Verfügung stellen, zuzüglich eines bis zwei weiteren NICs für MPIO. Administratoren, die bislang noch keine Erfahrung mit iSCSI gemacht haben, sollten sich Zeit nehmen und einige der im Folgenden vorgestellten Targets erst einmal intensiv testen.
ast@networkcomputing.de


Jetzt kostenfreie Newsletter bestellen!

Matchmaker+