Good to Know Database

CentOS 5: iSCSI-Target konfigurieren


1. Einleitung

iSCSI (Internet Small Computer System Interface) ist ein standardisiertes Netzwerkprotokoll, welches es ermöglicht das SCSI-Protokoll über ein TCP/IP-Netzwerk zu nutzen. Dazu werden die SCSI-Anfragen vom so genannten iSCSI-Initiator in ein IP-Paket gepackt und über die Netzwerkverbindung an das iSCSI-Target geschickt welches die SCSI-Anfrage entpackt und an den SCSI Controller weiterleitet. Der iSCSI-Initiator erkennt das eingehängte iSCSI-Target als eine weitere logische Festplatte.

Im folgenden Tutorial möchte ich Ihnen zeigen wie Sie unter CentOS 5 mit dem Open Source Projekt iSCSI Enterprise Target (http://iscsitarget.sourceforge.net) ein iSCSI-Target einrichten.

2. iSCSI Enterprise Target installieren

Da die Quellen des IET-Projektes verwendet werden, benötigen Sie einige Pakete um die Quellen zu kompilieren.

[root@centos5 ~]# yum install kernel-devel openssl-devel gcc

Erstellen Sie jetzt  unter /usr/src ein Verzeichnis in welches Sie anschließend die Quellen ablegen.

[root@centos5 ~]# mkdir -p /usr/src/iscsitarget
[root@centos5 ~]# cd /usr/src/iscsitarget

Mit dem nächsten Befehl laden Sie sich den benötigten Quellcode herunter.

[root@centos5 iscsitarget]# wget http://switch.dl.sourceforge.net/sourceforge/iscsitarget/iscsitarget-0.4.17.tar.gz

Das heruntergeladene Archiv entpacken Sie wie folgt und wechseln in das dadurch erstellte Verzeichnis.

[root@centos5 iscsitarget]# tar xf iscsitarget-0.4.17.tar.gz
[root@centos5 iscsitarget]# cd iscsitarget-0.4.17

Mit dem Befehl make werden die Quellen kompiliert und anschließend mit make install installiert.

[root@centos5 iscsitarget-0.4.17]# make
[root@centos5 iscsitarget-0.4.17]# make install

Beachten Sie bitte, dass bei einem Kernelupdate dieser Vorgang wiederholt werden muss.

3. iSCSI-Datenträger vorbereiten

Als iSCSI-Datenträger können Sie entweder eine dedizierte Partition, einen RAID-Verbund, ein LVM-Volume oder eine Image-Datei verwenden. Wenn Sie eine Partition, einen RAID-Verbund oder ein LVM-Volume verwenden wollen, müssen Sie darauf kein Dateisystem erstellen da dies vom iSCSI-Client erstellt wird.

In diesem Beispiel wollen wir eine 4GB große Image-Datei verwenden, welche wie folgt angelegt wird.

[root@centos5 ~]# dd if=/dev/zero of=/iscsi/disk1 bs=1K count=4M

4. iSCSI-Target konfigurieren

Die soeben erstellte Image-Datei, die Partition, der RAID-Verbund oder das LVM-Volume, müssen Sie jetzt in der Konfigurationsdatei /etc/ietd.conf freigeben. Dazu öffnen Sie die Konfigurationsdatei mit einem Editor.

[root@centos5 ~]# vi /etc/ietd.conf

Wie Sie sehen, existiert bereits der folgende Beispieleintrag in der Konfigurationsdatei welchen Sie am Besten auskommentieren.

#Target iqn.2001-04.com.example:storage.disk2.sys1.xyz
        # Users, who can access this target. The same rules as for discovery
        # users apply here.
        # Leave them alone if you don't want to use authentication.
        #IncomingUser joe secret
        #OutgoingUser jim 12charpasswd
        # Logical Unit definition
        # You must define one logical unit at least.
        # Block devices, regular files, LVM, and RAID can be offered
        # to the initiators as a block device.
        #Lun 0 Path=/dev/sdc,Type=fileio
        # Alias name for this target
        # Alias Test
        # various iSCSI parameters
        # (not all are used right now, see also iSCSI spec for details)
        #MaxConnections         1
        #InitialR2T             Yes
        #ImmediateData          No
        #MaxRecvDataSegmentLength 8192
        #MaxXmitDataSegmentLength 8192
        #MaxBurstLength         262144
        #FirstBurstLength       65536
        #DefaultTime2Wait       2
        #DefaultTime2Retain     20
        #MaxOutstandingR2T      8
        #DataPDUInOrder         Yes
        #DataSequenceInOrder    Yes
        #ErrorRecoveryLevel     0
        #HeaderDigest           CRC32C,None
        #DataDigest             CRC32C,None
        # various target parameters
        #Wthreads               8

Für die hier verwendete Image-Datei könnte der Target-Eintrag wie folgt aussehen.

Target iqn.2009-05.lan.home:storage.disk1
        Lun 0 Path=/iscsi/disk1,Type=fileio

Jede Target-Definition muss mit dem Schlüsselwort Target beginnen. Der darauffolgende iSCSI Qualified Name (hier iqn.2009-05.lan.home:storage.disk1) muss eindeutig sein und darf nicht mehrfach verwendet werden. Im iSCSI-Standard wird der iSCSI Qualified Name (IQN) wie folgt festgelegt.

iqn.yyyy-mm.<reversed domain name>[:identifier]

Mit der Option Path geben Sie die Image-Datei oder die entsprechende Gerätedatei an. Der Typ fileio kann für Image-Dateien, Partitionen, RAID-Verbunde und LVM-Volumes verwendet werden.

Sollten Sie eine Firewall verwenden, müssen Sie noch den TCP-Port 3260 öffnen.

[root@centos5 ~]# system-config-securitylevel-tui

5. iSCSI-Target starten

Das iSCSI-Taget starten Sie mit dem folgenden Befehl.

[root@centos5 ~]# service iscsi-target start

Sollten Probleme auftreten überprüfen Sie die Logdatei /var/log/messages.

[root@centos5 ~]# tail -f /var/log/messages

6. Weiterführende Tutorials

CentOS 5: iSCSI-Initiator konfigurieren


Dieser Eintrag wurde am 12.05.2009 erstellt und zuletzt am 24.01.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_615.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer