Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F148790793
D5170.id12982.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
15 KB
Referenced Files
None
Subscribers
None
D5170.id12982.diff
View Options
Index: head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml
===================================================================
--- head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml
+++ head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml
@@ -5,7 +5,7 @@
$FreeBSD$
$FreeBSDde: de-docproj/books/handbook/network-servers/chapter.xml,v 1.103 2011/12/24 15:51:18 bcr Exp $
- basiert auf: r42610
+ basiert auf: r42910
-->
<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="network-servers">
<info><title>Netzwerkserver</title>
@@ -95,6 +95,11 @@
<command>syslogd</command>, konfiguriert, um Protokolle von
anderen Hosts zu akzeptieren.</para>
</listitem>
+
+ <listitem>
+ <para>Wissen, wie <acronym>iSCSI</acronym> eingerichtet
+ wird.</para>
+ </listitem>
</itemizedlist>
<para>Dieses Kapitel setzt folgende Grundkenntnisse voraus:</para>
@@ -6432,4 +6437,360 @@
verhindern, dass lokale Benutzer darin herumschnüffeln.</para>
</sect2>
</sect1>
+
+ <sect1 xml:id="network-iscsi">
+ <!--
+ <info>
+ <authorgroup>
+ <author>
+ <firstname>Edward Tomasz</firstname>
+ <surname>Napierala</surname>
+ </author>
+ </authorgroup>
+ </info>
+ -->
+
+ <title>iSCSI Initiator und Target Konfiguration</title>
+
+ <para><acronym>iSCSI</acronym> bietet die Möglichkeit,
+ Speicherkapazitäten über ein Netzwerk zu teilen. Im Gegensatz
+ zu <acronym>NFS</acronym>, das auf Dateisystemebene arbeitet,
+ funktioniert <acronym>iSCSI</acronym> auf
+ Blockgerätebene.</para>
+
+ <para>In der <acronym>iSCSI</acronym>-Terminologie wird das
+ System, das den Speicherplatz zur Verfügung stellt, als
+ <emphasis>Target</emphasis> bezeichnet. Der Speicherplatz
+ selbst kann aus einer physischen Festplatte bestehen, oder auch
+ aus einem Bereich, der mehrere Festplatten, oder nur Teile einer
+ Festplatte, repräsentiert. Wenn beispielsweise die
+ Festplatte(n) mit <acronym>ZFS</acronym> formatiert ist, kann
+ ein <acronym>zvol</acronym> erstellt werden, welches dann als
+ <acronym>iSCSI</acronym>-Speicher verwendet werden kann.</para>
+
+ <para>Die Clients, die auf den <acronym>iSCSI</acronym>-Speicher
+ zugreifen, werden <emphasis>Initiator</emphasis> genannt. Ihnen
+ steht der verfügbare Speicher als rohe, nicht formatierte
+ Festplatte, die auch als <acronym>LUN</acronym> bezeichnet wird,
+ zur Verfügung. Die Gerätedateien für die Festplatten erscheinen
+ in <filename>/dev/</filename> und müssen separat formatiert und
+ eingehangen werden.</para>
+
+ <para>Seit 10.0-RELEASE enthält &os; einen nativen,
+ kernelbasierten <acronym>iSCSI</acronym>
+ <emphasis>Target</emphasis> und <emphasis>Initiator</emphasis>.
+ Dieser Abschnitt beschreibt, wie ein &os;-System als Target oder
+ Initiator konfiguriert wird.</para>
+
+ <sect2 xml:id="network-iscsi-target">
+ <title>Ein <acronym>iSCSI</acronym>-Target konfigurieren</title>
+
+ <note>
+ <para>Ein natives <acronym>iSCSI</acronym>-Target wird seit
+ &os; 10.0-RELEASE unterstützt. Um <acronym>iSCSI</acronym>
+ mit älteren Versionen zu benutzen, installieren Sie ein
+ Target aus der Ports-Sammlung, beispielsweise
+ <package>net/istgt</package>. Dieses Kapitel beschreibt
+ nur das native Target.</para>
+ </note>
+
+ <para>Um ein <acronym>iSCSI</acronym>-Target zu konfigurieren,
+ erstellen Sie die Konfigurationsdatei
+ <filename>/etc/ctl.conf</filename> und fügen Sie eine Zeile
+ in <filename>/etc/rc.conf</filename> hinzu, um
+ sicherzustellen, dass &man.ctld.8; automatisch beim Booten
+ gestartet wird. Starten Sie dann den Daemon.</para>
+
+ <para>Das folgende Beispiel zeigt eine einfache
+ <filename>/etc/ctl.conf</filename>. Eine vollständige
+ Beschreibung dieser Datei und der verfügbaren Optionen finden
+ Sie in &man.ctl.conf.5;.</para>
+
+ <programlisting>portal-group pg0 {
+ discovery-auth-group no-authentication
+ listen 0.0.0.0
+ listen [::]
+}
+
+target iqn.2012-06.com.example:target0 {
+ auth-group no-authentication
+ portal-group pg0
+
+ lun 0 {
+ path /data/target0-0
+ size 4G
+ }
+}</programlisting>
+
+ <para>Der erste Eintrag definiert die Portalgruppe
+ <literal>pg0</literal>. Portalgruppen legen fest, auf welchen
+ Netzwerk-Adressen der &man.ctld.8;-Daemon Verbindungen
+ entgegennehmen wird. Der Eintrag
+ <literal>discovery-auth-group no-authentication</literal>
+ zeigt an, dass jeder Initiator
+ <acronym>iSCSI</acronym>-Targets suchen darf, ohne sich
+ authentifizieren zu müssen. Die dritte und vierte Zeilen
+ konfigurieren &man.ctld.8; so, dass er auf allen
+ <acronym>IPv4</acronym>- (<literal>listen 0.0.0.0</literal>)
+ und <acronym>IPv6</acronym>-Adressen
+ (<literal>listen [::]</literal>) auf dem Standard-Port 3260
+ lauscht.</para>
+
+
+ <para>Es ist nicht zwingend notwendig eine Portalgruppe zu
+ definieren, da es bereits eine integrierte Portalgruppe namens
+ <literal>default</literal> gibt. In diesem Fall ist der
+ Unterschied zwischen <literal>default</literal> und
+ <literal>pg0</literal> der, dass bei
+ <literal>default</literal> eine Authentifizierung nötig ist,
+ während bei <literal>pg0</literal> die Suche nach Targets
+ immer erlaubt ist.</para>
+
+ <para>Der zweite Eintrag definiert ein einzelnes Target. Ein
+ Target hat zwei mögliche Bedeutungen: eine Maschine die
+ <acronym>iSCSI</acronym> bereitstellt, oder eine Gruppe von
+ <acronym>LUN</acronym>s. Dieses Beispiel verwendet die
+ letztere Bedeutung, wobei
+ <literal>iqn.2012-06.com.example:target0</literal> der Name
+ des Targets ist. Dieser Name ist nur für Testzwecke geeignet.
+ Für den tatsächlichen Gebrauch ändern Sie
+ <literal>com.example</literal> auf einen echten, rückwärts
+ geschriebenen Domainnamen. <literal>2012-06</literal> steht
+ für das Jahr und den Monat, an dem die Domain erworben
+ wurde. <literal>target0</literal> darf einen beliebigen
+ Wert haben und in der Konfigurationsdatei darf eine beliebige
+ Anzahl von Targets definiert werden.</para>
+
+ <para>Der Eintrag
+ <literal>auth-group no-authentication</literal> erlaubt es
+ allen Initiatoren sich mit dem angegebenen Target zu verbinden
+ und <literal>portal-group pg0</literal> macht das Target über
+ die Portalgruppe <literal>pg0</literal> erreichbar.</para>
+
+ <para>Die nächste Sektion definiert die <acronym>LUN</acronym>.
+ Jede <acronym>LUN</acronym> wird dem Initiator als separate
+ Platte präsentiert. Für jedes Target können mehrere
+ <acronym>LUN</acronym>s definiert werden. Jede
+ <acronym>LUN</acronym> wird über eine Nummer identifiziert,
+ wobei <acronym>LUN</acronym> 0 verpflichtend ist. Die Zeile
+ mit dem Pfad <literal>path /data/target0-0</literal> definiert
+ den absoluten Pfad zu der Datei oder des zvols für die
+ <acronym>LUN</acronym>. Der Pfad muss vorhanden sein, bevor
+ &man.ctld.8; gestartet wird. Die zweite Zeile ist optional
+ und gibt die Größe der <acronym>LUN</acronym> an. Als
+ nächstes fügen Sie folgende Zeile in
+ <filename>/etc/rc.conf</filename> ein, um &man.ctld.8;
+ automatisch beim Booten zu starten:</para>
+
+ <programlisting>ctld_enable="YES"</programlisting>
+
+ <para>Um &man.ctld.8; jetzt zu starten, geben Sie dieses
+ Kommando ein:</para>
+
+ <screen>&prompt.root; <userinput>service ctld start</userinput></screen>
+
+ <para>Der &man.ctld.8;-Daemon liest beim Start
+ <filename>/etc/ctl.conf</filename>. Wenn diese Datei nach dem
+ Starten des Daemons bearbeitet wird, verwenden Sie folgenden
+ Befehl, damit die Änderungen sofort wirksam werden:</para>
+
+ <screen>&prompt.root; <userinput>service ctld reload</userinput></screen>
+
+ <sect3>
+ <title>Authentifizierung</title>
+
+ <para>Die vorherigen Beispiele sind grundsätzlich unsicher, da
+ keine Authentifizierung verwendet wird und jedermann vollen
+ Zugriff auf alle Targets hat. Um für den Zugriff auf die
+ Targets einen Benutzernamen und ein Passwort vorauszusetzen,
+ ändern Sie die Konfigurationsdatei wie folgt:</para>
+
+ <programlisting>auth-group ag0 {
+ chap username1 secretsecret
+ chap username2 anothersecret
+}
+
+portal-group pg0 {
+ discovery-auth-group no-authentication
+ listen 0.0.0.0
+ listen [::]
+}
+
+target iqn.2012-06.com.example:target0 {
+ auth-group ag0
+ portal-group pg0
+ lun 0 {
+ path /data/target0-0
+ size 4G
+ }
+}</programlisting>
+
+ <para>Die Sektion <literal>auth-group</literal> definiert die
+ Benutzernamen und Passwörter. Um sich mit
+ <literal>iqn.2012-06.com.example:target0</literal> zu
+ verbinden, muss ein Initiator zuerst einen Benutzernamen
+ und ein Passwort angeben. Eine Suche nach Targets wird
+ jedoch immer noch ohne Authentifizierung gestattet. Um
+ eine Authentifizierung zu erfordern, setzen Sie
+ <literal>discovery-auth-group</literal> auf eine definierte
+ <literal>auth-group</literal> anstelle von
+ <literal>no-autentication</literal>.</para>
+
+ <para>In der Regel wird für jeden Initiator ein einzelnes
+ Target exportiert. In diesem Beispiel wird der Benutzername
+ und das Passwort direkt im Target-Eintrag festgelegt:</para>
+
+ <programlisting>target iqn.2012-06.com.example:target0 {
+ portal-group pg0
+ chap username1 secretsecret
+
+ lun 0 {
+ path /data/target0-0
+ size 4G
+ }
+}</programlisting>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="network-iscsi-initiator">
+ <title>Einen <acronym>iSCSI</acronym>-Initiator
+ konfigurieren</title>
+
+ <note>
+ <para>Der in dieser Sektion beschriebene
+ <acronym>iSCSI</acronym>-Initiator wird seit &os;
+ 10.0-RELEASE unterstützt. Lesen Sie &man.iscontrol.8;, wenn
+ Sie den <acronym>iSCSI</acronym>-Initiator mit älteren
+ Versionen benutzen möchten.</para>
+ </note>
+
+ <para>Um den Initiator zu verwenden, muss zunächst ein
+ <acronym>iSCSI</acronym>-Daemon gestartet sein. Der
+ Daemon des Initiators benötigt keine Konfigurationsdatei. Um
+ den Daemon automatisch beim Booten zu starten, fügen Sie
+ folgende Zeile in <filename>/etc/rc.conf</filename>
+ ein:</para>
+
+ <programlisting>iscsid_enable="YES"</programlisting>
+
+ <para>Um &man.iscsid.8; jetzt zu starten, geben Sie dieses
+ Kommando ein:</para>
+
+ <screen>&prompt.root; <userinput>service iscsid start</userinput></screen>
+
+ <para>Die Verbindung mit einem Target kann mit, oder ohne eine
+ Konfigurationsdatei <filename>/etc/iscsi.conf</filename>
+ durchgeführt werden. Dieser Abschnitt beschreibt beide
+ Möglichkeiten.</para>
+
+ <sect3>
+ <title>Verbindung zu einem Target herstellen - ohne
+ Konfigurationsdatei</title>
+
+ <para>Um einen Initiator mit einem Target zu verbinden, geben
+ Sie die <acronym>IP</acronym>-Adresse des Portals und den
+ Namen des Ziels an:</para>
+
+ <screen>&prompt.root; <userinput>iscsictl -A -p <replaceable>10.10.10.10</replaceable> -t <replaceable>iqn.2012-06.com.example:target0</replaceable></userinput></screen>
+
+ <para>Um zu überprüfen, ob die Verbindung gelungen ist, rufen
+ Sie <command>iscsictl</command> ohne Argumente auf. Die
+ Ausgabe sollte in etwa wie folgt aussehen:</para>
+
+ <programlisting>Target name Target portal State
+iqn.2012-06.com.example:target0 10.10.10.10 Connected: da0</programlisting>
+
+ <para>In diesem Beispiel wurde die
+ <acronym>iSCSI</acronym>-Sitzung mit der
+ <acronym>LUN</acronym> <filename>/dev/da0</filename>
+ erfolgreich hergestellt. Wenn das Target
+ <literal>iqn.2012-06.com.example:target0</literal> mehr als
+ nur eine <acronym>LUN</acronym> exportiert, werden mehrere
+ Gerätedateien in der Ausgabe angezeigt:</para>
+
+ <screen>Connected: da0 da1 da2.</screen>
+
+ <para>Alle Fehler werden auf die Ausgabe und in die
+ Systemprotokolle geschrieben. Diese Meldung deutet
+ beispielsweise darauf hin, dass der &man.iscsid.8;-Daemon
+ nicht ausgeführt wird:</para>
+
+ <programlisting>Target name Target portal State
+iqn.2012-06.com.example:target0 10.10.10.10 Waiting for iscsid(8)</programlisting>
+
+ <para>Die folgende Meldung deutet auf ein Netzwerkproblem hin,
+ zum Beispiel eine falsche <acronym>IP</acronym>-Adresse oder
+ einen falschen Port:</para>
+
+ <programlisting>Target name Target portal State
+iqn.2012-06.com.example:target0 10.10.10.11 Connection refused</programlisting>
+
+ <para>Diese Meldung bedeutet, dass der Name des Targets falsch
+ angegeben wurde:</para>
+
+ <programlisting>Target name Target portal State
+iqn.2012-06.com.example:target0 10.10.10.10 Not found</programlisting>
+
+ <para>Diese Meldung bedeutet, dass das Target eine
+ Authentifizierung erfordert:</para>
+
+ <programlisting>Target name Target portal State
+iqn.2012-06.com.example:target0 10.10.10.10 Authentication failed</programlisting>
+
+ <para>Verwenden Sie diese Syntax, um einen
+ <acronym>CHAP</acronym>-Benutzernamen und ein Passwort
+ anzugeben:</para>
+
+ <screen>&prompt.root; <userinput>iscsictl -A -p <replaceable>10.10.10.10</replaceable> -t <replaceable>iqn.2012-06.com.example:target0</replaceable> -u <replaceable>user</replaceable> -s <replaceable>secretsecret</replaceable></userinput></screen>
+ </sect3>
+
+ <sect3>
+ <title>Verbindung mit einem Target herstellen - mit
+ Konfigurationsdatei</title>
+
+ <para>Wenn Sie für die Verbindung eine Konfigurationsdatei
+ verwenden möchten, erstellen Sie
+ <filename>/etc/iscsi.conf</filename> mit etwa folgendem
+ Inhalt:</para>
+
+ <programlisting>t0 {
+ TargetAddress = 10.10.10.10
+ TargetName = iqn.2012-06.com.example:target0
+ AuthMethod = CHAP
+ chapIName = user
+ chapSecret = secretsecret
+}</programlisting>
+
+ <para><literal>t0</literal> gibt den Namen der Sektion in der
+ Konfigurationsdatei an. Diser Name wird vom Initiator
+ benutzt, um zu bestimmen, welche Konfiguration verwendet
+ werden soll. Die anderen Einträge legen die Parameter fest,
+ die während der Verbindung verwendet werden.
+ <literal>TargetAddress</literal> und
+ <literal>TargetName</literal> müssen angegeben werden,
+ die restlichen sind optional. In diesen Beispiel wird
+ der <acronym>CHAP</acronym>-Benuztername und das Passwort
+ angegeben.</para>
+
+ <para>Um sich mit einem bestimmten Target zu verbinden, geben
+ Sie dessen Namen an:</para>
+
+ <screen>&prompt.root; <userinput>iscsictl -An <replaceable>t0</replaceable></userinput></screen>
+
+ <para>Um sich stattdessen mit allen definierten Targets aus
+ der Konfigurationsdatei zu verbinden, verwenden Sie:</para>
+
+ <screen>&prompt.root; <userinput>iscsictl -Aa</userinput></screen>
+
+ <para>Damit sich der Initiator automatisch mit allen Targets
+ aus <filename>/etc/iscsi.conf</filename> verbindet, fügen
+ Sie folgendes in <filename>/etc/rc.conf</filename>
+ hinzu:</para>
+
+ <programlisting>iscsictl_enable="YES"
+iscsictl_flags="-Aa"</programlisting>
+
+ </sect3>
+ </sect2>
+ </sect1>
</chapter>
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Mar 21, 6:00 AM (5 h, 27 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30042411
Default Alt Text
D5170.id12982.diff (15 KB)
Attached To
Mode
D5170: Update de_DE/books/handbook/network-servers/chapter.xml to r42910
Attached
Detach File
Event Timeline
Log In to Comment