iSCSI ermöglicht es entfernte Festplatten über Ethernet an einen Rechner anzubinden. Hierbei kümmert sich nicht wie bei CIFS/NFS/… der Zielrechner um die Dateiverwaltung, sondern der Client behandelt die Festplatte wie eine lokal eingebaute – incl. Partitionierung, Dateisystem & Co. Ethernet ist hierbei zwar nicht die schnellste Lösung, jedoch erheblich günstiger und flexibler als professionelle Lösungen wie Fibre-Channel.
Ich nutze ein System auf Basis von Arch Linux, welches eine Partition an einen anderern Rechner bereitstellen soll. Im iSCSI-Jargon nennt sich dies „Target“, der Client „Initiator“. Zur Verwaltung unter Arch nutze ich die Free-Branch des LIO targetcli, dies ist im AUR zu finden.
Im ersten Schritt starten wir das iSCSI-System. Hierbei werden die nötigen Module geladen und ggf. zuvor definierte Geräte exportiert.
systemctl start target
Nun starten wir das Management-Tool. Es stellt eine eigene Konsole zur Verfügung. Erst wird die Festplatte mit einem internen Namen verknüpft. Ich nutze hier zur besseren Übersicht den Partitionsnamen
targetcli cd backstores/block create sda3 /dev/sda3
Im Anschluss erstellen wir eine „Target Portal Group“ (=Konfigurationsspeicher für das iSCSI-Target) samt passendem „IQN“ (=iSCSI-Adresse). Letztere wird im nächsten Schritt benötigt, mit ls kann man bei allen Schritten die aktuelle Konfiguration anzeigen lassen.
cd /iscsi create ls o- iscsi ........................................ [Targets: 1] o- iqn.[…] ....................................... [TPGs: 1]
nun registrieren wir die zuvor bekanntgemachte Festplatte als LUN (=logischer Speicher)
cd iqn.****/tpg1/luns create /backstores/block/sda3
Nun erstellen wir das Portal selbst (=legen einen Server an), erlauben die Adresse des Initiators, welche man am Client nachschlagen kann, und legen Benutzername und Kennwort fest
cd ../../portals create cd ../../acls create iqn.YOUR.INITI:ATOR cd iqn.YOUR.INITI:ATOR set auth userid=foo set auth password=bar
Zuletzt wird die Konfiguration gespeichert. Das iSCSI-Target ist nun nutzbar.
cd / saveconfige
Sinnvollerweise sollta man target noch mit einem „systemctl enable target“ beim Systemstart automatisch starten lassen.
Ein Gedanke zu „Linux als iSCSI-Target“