{{{#!vorlage Wissen [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte] }}} [[Inhaltsverzeichnis()]] Das standardisierte iSCSI (internet SCSI) Protokoll ermöglicht die Nutzung von Netzwerkspeicher wie lokaler Speicher. Im Gegensatz zu den anderen Netzwerkfreigaben wie z.B. SMB oder [:NFS:] überträgt iSCSI rohe Datenblöcke zum Netzwerkspeicher, somit ist das Dateisystem des Speichermediums egal. Das Protokoll hat einen kleinen Overhead, was einen guten Durchsatz im Netzwerk verspricht. Mit GNU/Linux lässt sich sowohl die Freigabe wie auch das Einhängen von iSCSI-Speicher bewerkstelligen. Auch einige NAS-Geräte beherrschen die Freigabe ihrer Festplatten mit iSCSI. Der Netzwerkspeicher kann eigentlich jedes Medium sein, das vom System erkannt wird. Dies können ganze Festplatten sein, Partitionen von diesen, Bandlaufwerke, optische Laufwerke oder eine Image-Datei, aber niemals Ordner! Hat man ein Cluster-Dateisystem, so können mehrere Nutzer auf die Freigaben zugreifen, ansonsten kann immer nur ein Knoten als Client gleichzeitig agieren. = Target = Die Serverkomponente wird bei iSCSI auch Target genannt. In einem Target können mehrere [wikipedia:LUN: LUNs] bereit gestellt werden. iSCSI kommuniziert normalerweise über den TCP Port `3260`. == Targets bereit stellen == Es gibt - je nach Ubuntu-Version - verschiedene Pakete und Dienste, um iSCSI-Targets bereit zu stellen. Die einzelnen Dienste unterscheiden sich in der Anwendung - stellen aber immer die standardisierten Targets bzw. LUNs bereit. * [wikipedia:LIO_Unified_Target: LIO], Standard im Linux-Kernel seit Version 2.6.38 * Verwaltung via `targetcli` im Paket '''targetcli-fb''' (Bionic, ''universe'') bzw. (Focal, ''universe'') * '''tgt''', ''main'', Details im Wikiartikel [:tgtd:] * '''istgt''', ''universe'' * '''iscsitarget''' mit '''ietd''' als Dienst, bis einschließlich Ubuntu 16.04 in ''universe'', Details im Wikiartikel [:Archiv/iscsitarget:] == LUN-Files erzeugen == Ein [wikipedia:LUN:]-File kann in einem iSCSI-Target benutzt werden, um Daten darin zu speichern. Auf diese Weise ist es möglich, im Dateisystem eines Servers mehrere LUNs zur Verfügung zu stellen, auf welche von verschiedenen Hosts via iSCSI zugegriffen werden kann. Um bei Verwendung mehrerer LUNs die Übersicht zu behalten, empfiehlt es sich, für diese ein eigenes Verzeichnis zu erstellen. {{{#!vorlage Befehl sudo mkdir luns cd luns }}} Dort wird eine LUN-Datei beispielsweise mit folgendem Befehl erstellt: {{{#!vorlage Befehl sudo dd if=/dev/zero of=storagelun0 count=0 obs=1 seek=100G }}} Diese Image-Datei kann zukünftig 100 GByte an Daten aufnehmen. {{{#!vorlage Hinweis Bei der Verwendung von LIO können die Dateien auch mit dem Verwaltungsprogramm `targetcli` erstellt werden. }}} = Initiator = Die Client-Komponente wird Initiator genannt. Der wohl bekannteste Initiator ist open-iscsi. Details zur Installation und Konfiguration finden sich im Artikel [:open-iscsi:]. = Links = * [https://www.thomas-krenn.com/de/wiki/ISCSI_Grundlagen iSCSI Grundlagen] {de} - im Thomas-Krenn-Wiki * [http://linux-iscsi.org/wiki/Targetcli Targetcli im Linux SCSI Target Wiki] {en} - offizielle Dokumentation von targetcli * [https://www.thomas-krenn.com/de/wiki/Linux-IO_Target_(LIO)_unter_Ubuntu_14.04 Linux-IO Target (LIO) unter Ubuntu 14.04] {de} * [https://www.howtoforge.com/using-iscsi-on-ubuntu-9.04-initiator-and-target howtoforge] {en} - Using iSCSI On Ubuntu 9.04 * [wikipedia_en:iSCSI:] * [https://www.pug.org/mediawiki/index.php/ISCSI_unter_Debian iSCSI unter Debian] {de} * [sourceforge2:iscsitarget:iSCSI Enterprise Target] {en} * [https://blog.is-a-geek.org/iscsi-target-auf-ubuntu-server-erstellen-und-in-windowslinux-einbinden chalblog] {de} * [packages:bionic/sg3-utils:Tools für iSCSI] {en} - Tools für iSCSI, u.a. Stress-Tests # tag: Netzwerk, System, Server, iSCSI, Übersicht