10170238-qsan-p200c-iscsi-gbex4-to-sassata-ii-raid-controller.jpg

© qsantechnology.com

Die Tücken von Systemd

iSCSI-Targets unter Fedora 15 einrichten

06.06.2011
Dieser Text gibt eine kurze Anleitung und Erklärung zum Thema iSCSI unter Linux. Er geht von einer aktuellen Fedora-Version aus, ist aber hoffentlich umfangreich genug, um auch für andere Systeme zu funktionieren.

Folgende Anleitung soll dem Benutzer helfen /home-Shares als iSCSI unter Fedora 15 nachträglich einzubinden. Bisher lief das unter NFS (welches durchaus auch Vorteile hat) aber iSCSI ist schneller und bietet bei kurzfristigen "Flaps" der Netzverbindung ein besseres Systemverhalten. NFSv4 wurde nicht berücksichtigt, da es von meinem NAS (noch) nicht unterstützt wird. Vor- und Nachteile von NFSv3 gegenüber iSCSI für diesen Anwendungsfall:

  • iSCSI bietet deutlich besseres Verhalten bei kurzfristigen Netzausfällen, die Reads wurden deutlich besser gecached als mit NFSv3 (caching auf 8 MByte erhöht).
  • NFSv3 bietet die Möglichkeit von Parallelzugriffen. Dies sollte mit iSCSI nicht versucht werden, da es blockbasiert arbeitet und man daher das Risiko von Datenverlust hat. Dies könnte natürlich durch den Einsatz von Clusterdateisystemen verhindert werden, soll hier aber aus Gründen der Übersichtlichkeit nicht weiter verfolgt werden.
  • iSCSI arbeitet blockbasiert, auch wenn das einfache Abziehen und Anstecken des Netzwerks im vorliegenden Fall keine Probleme verursacht ist doch aufgrund der Natur des iSCSI-Protokoll eine Datenkorruption (Dateisystemfehler) bei iSCSI in Verbindung mit Netzproblemen möglich. Eine Anbindung über WAN- oder WLAN-Verbindungen ist daher nicht unbedingt empfehlenswert.
  • iSCSI bietet vernünftige Authentifizierung für die System per CHAP an, damit wird verhindert das sich unbefugt Laptops auf das System Zugriff verschaffen. NFSv3 kann zwar bestimmten Ips und IP.-Ranges den Zugriff erlauben / verbieten, dies lässt sich jedoch nur allzuleicht umgehen wenn man Zugriff auf das LAN hat.
  • Mit iSCSI lassen sich bequem dedizierte Adapter zuweisen und Multipathing (wird allerdings nicht näher erklärt) einrichten ohne am Routing fummeln zu müssen

Warum Fedora 15?

In erster Linie weil ich seit Jahren bereits Fedora nutze. Besonders interessant wird es hier allerdings durch den Einsatz von Systemd in der neuesten Version.

Voraussetzungen

Das RPM-Paket iscsi-initiator-utils muss installiert sein (erhältlich von DVD oder Fedora-15-Repositories). Der iSCSI-Dienst muss gestartet werden, die bisherigen SYSV-Init-Befehle

chkconfig iscsi status
chkconfig iscsi start
chkconfig iscsi start

sehen unter systemd wie folgt aus:

systemctl status iscsi.service
systemctl enable iscsi.service
systemctl start iscsi.service

Außerdem sollte sicherheitshalber der Dienst für das Sandboxing deaktiviert werden (dieser mountet separat noch mal die /home-Verzeichnisse) bei Einsatz von NFS klappt dies garantiert nicht, bei iSCSI hab ich ihn dann gleich ausgelassen.

Grundlegende Konfiguration

Als allererstes wird ein Discovery durchgeführt, diesem übergibt man als Argument die IP-Adresse von der man sich erhofft dass dort das iSCSI-Target zu erreichen ist

iscsiadm -m discovery -t st -p 192.168.0.99

als Antwort bekommt man die IQN (diese sollte man auch auf dem Target irgendwie sehen), und die LUN-Bezeichnung

192.168.0.99:3260,1 iqn.2001-04.com.example:storage.lun1

Um zu verhindern, dass die iSCSI-Verbindung bei Netzproblemen über das WLAN oder andere Adapater läuft empfiehlt es sich ein iSCSI-Interface anzulegen, dazu legt man die Datei /var/lib/iscsi/ifaces/iface0 an mit folgendem Inhalt

# BEGIN RECORD 2.0-872
iface.iscsi_ifacename = iface0
iface.hwaddress = XX:XX:XX:XX:XX:XX
iface.transport_name = tcp # END RECORD

Wobei anstelle des XX:XX:XX:XX:XX:XX die MAC-adresse des Interfaces steht, diese erhält man mit den Befehlen ifconfig |grep HWaddr. Alternativ kann man hierzu auch die entsprechenden iscsiadm-Befehle verwenden

iscsiadm -m iface -I iface0 --op=new
iscsiadm -m iface -I iface0 --op=update -n iface.hwaddress -v XX:XX:XX:XX:XX:XX

Damit sich das System beim Hochfahren automatische anmeldet sollte man sicherheitshalber nochmal

iscsiadm -m node --op update -n node.conn[0].startup -v automatic

ausführen. Um das Ganze detaillierter zu regeln gibt es in den Dateien /etc/iscsi/iscsid.conf und /var/lib/iscsi/nodes/[IQN,LUN-Bezeichnung]/[Portal]/[Interface] die Direktive node.startup = automatic. Diese beide Dateien ermögliche auch weitergehende Einstellungen zu modifizieren und sind im wesentlich mit erläuternden Kommentaren versehen und sollten daher bei Problem immer erstmal die erste Anlaufstelle sein.

Ähnliche Artikel

Kommentare

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

WLAN-Signalqualität vom Treiber abhängig
GoaSkin , 29.10.2014 14:16, 0 Antworten
Hallo, für einen WLAN-Stick mit Ralink 2870 Chipsatz gibt es einen Treiber von Ralink sowie (m...
Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...