Zum Inhalt springenZur Seitennavigation springen: vorherige Seite [Zugriffstaste p]/nächste Seite [Zugriffstaste n]
documentation.suse.com / Dokumentation zu SUSE Enterprise Storage 7 / Betriebs- und Verwaltungshandbuch / Zugreifen auf Cluster-Daten / Ceph iSCSI Gateway
Gilt für SUSE Enterprise Storage 7

22 Ceph iSCSI Gateway

In diesem Kapitel befassen wir uns hauptsächlich mit Verwaltungsaufgaben, die für das iSCSI Gateway relevant sind. Das Verfahren zur Bereitstellung wird im Abschnitt 5.4.3.5, „Bereitstellen von iSCSI-Gateways“ erläutert.

22.1 Mit ceph-iscsi verwaltete Ziele

In diesem Kapitel wird erläutert, wie Sie eine Verbindung zu ceph-iscsi-verwalteten Zielen von Clients aus herstellen, auf denen Linux, Microsoft Windows oder VMware ausgeführt wird.

22.1.1 Herstellen einer Verbindung zu open-iscsi

Die Herstellung einer Verbindung zu ceph-iscsi-gestützten iSCSI-Zielen mit open-iscsi erfolgt in zwei Schritten. Zunächst muss der Initiator die iSCSI-Ziele ermitteln, die am Gateway-Host verfügbar sind. Dann muss er sich anmelden und die verfügbaren logischen Einheiten (Logical Unit, LU) zuordnen.

Für beide Schritte muss der open-iscsi-Daemon aktiv sein. Die Art und Weise, wie Sie den open-iscsi-Daemon starten, hängt von Ihrer Linux-Distribution ab:

  • Führen Sie auf SUSE Linux Enterprise Server (SLES)- und Red Hat Enterprise Linux (RHEL)-Hosts systemctl start iscsid aus (oder service iscsid start, falls systemctl nicht verfügbar ist).

  • Führen Sie auf Debian- und Ubuntu-Hosts systemctl start open-iscsi aus (oder service open-iscsi start).

Wenn Ihr Initiator-Host SUSE Linux Enterprise Server ausführt, sehen Sie sich die detaillierten Informationen unter https://documentation.suse.com/sles/15-SP2/html/SLES-all/cha-iscsi.html#sec-iscsi-initiator an, um zu erfahren, wie Sie eine Verbindung zu einem iSCSI-Ziel herstellen.

Fahren Sie bei allen anderen Linux-Distributionen, die open-iscsi unterstützen, damit fort, Ziele in Ihrem ceph-iscsi-Gateway zu ermitteln (in diesem Beispiel verwenden wir „iscsi1.example.com“ als Portaladresse. Wiederholen Sie für einen Multipfadzugriff diese Schritte mit „iscsi2.example.com“):

root # iscsiadm -m discovery -t sendtargets -p iscsi1.example.com
192.168.124.104:3260,1 iqn.2003-01.org.linux-iscsi.iscsi.SYSTEM-ARCH:testvol

Melden Sie sich dann beim Portal an. Nach erfolgreicher Anmeldung stehen sofort alle RBD-unterstützten logischen Einheiten auf dem Portal im System SCSI-Bus zur Verfügung:

root # iscsiadm -m node -p iscsi1.example.com --login
Logging in to [iface: default, target: iqn.2003-01.org.linux-iscsi.iscsi.SYSTEM-ARCH:testvol, portal: 192.168.124.104,3260] (multiple)
Login to [iface: default, target: iqn.2003-01.org.linux-iscsi.iscsi.SYSTEM-ARCH:testvol, portal: 192.168.124.104,3260] successful.

Wiederholen Sie diesen Vorgang für andere Portal-IP-Adressen oder Hosts.

Wenn auf Ihrem System das Dienstprogramm lsscsi installiert ist, zählen Sie damit die verfügbaren SCSI-Geräte auf Ihrem System auf:

lsscsi
[8:0:0:0]    disk    SUSE     RBD              4.0   /dev/sde
[9:0:0:0]    disk    SUSE     RBD              4.0   /dev/sdf

In einer Multipfadkonfiguration (bei der zwei verbundene iSCSI-Geräte ein und dieselbe logische Einheit darstellen) können Sie auch den Zustand des Multipfadgeräts mit dem Dienstprogramm multipath untersuchen:

root # multipath -ll
360014050cf9dcfcb2603933ac3298dca dm-9 SUSE,RBD
size=49G features='0' hwhandler='0' wp=rw
|-+- policy='service-time 0' prio=1 status=active
| `- 8:0:0:0 sde 8:64 active ready running
`-+- policy='service-time 0' prio=1 status=enabled
`- 9:0:0:0 sdf 8:80 active ready running

Daraufhin kann dieses Multipfadgerät wie jedes andere Blockgerät verwendet werden. Sie können dieses Gerät beispielsweise als physisches Volume für Linux Logical Volume Management (LVM) verwenden oder einfach darauf ein Dateisystem erstellen. Im folgenden Beispiel sehen Sie, wie ein XFS-Dateisystem auf dem neu verbundenen Multipfad-iSCSI-Volume erstellt wird:

root # mkfs -t xfs /dev/mapper/360014050cf9dcfcb2603933ac3298dca
log stripe unit (4194304 bytes) is too large (maximum is 256KiB)
log stripe unit adjusted to 32KiB
meta-data=/dev/mapper/360014050cf9dcfcb2603933ac3298dca isize=256    agcount=17, agsize=799744 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=12800000, imaxpct=25
         =                       sunit=1024   swidth=1024 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal log           bsize=4096   blocks=6256, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Beachten Sie, dass XFS ein nicht geclustertes Dateisystem ist und daher zu einem gegebenen Zeitpunkt nur auf einem einzelnen iSCSI-Initiator eingehängt werden darf.

Führen Sie folgendes Kommando aus, wenn Sie die mit einem bestimmten Ziel verknüpften iSCSI-LUs irgendwann nicht mehr weiter verwenden möchten:

root # iscsiadm -m node -p iscsi1.example.com --logout
Logging out of session [sid: 18, iqn.2003-01.org.linux-iscsi.iscsi.SYSTEM-ARCH:testvol, portal: 192.168.124.104,3260]
Logout of [sid: 18, target: iqn.2003-01.org.linux-iscsi.iscsi.SYSTEM-ARCH:testvol, portal: 192.168.124.104,3260] successful.

Bei der Ermittlung und Anmeldung müssen Sie die Abmeldeschritte für alle Portal-IP-Adressen oder Hostnamen wiederholen.

22.1.1.1 Multipfadkonfiguration

Die Multipfadkonfiguration wird auf den Clients oder Initiatoren beibehalten und ist unabhängig von anderen ceph-iscsi-Konfigurationen. Wählen Sie vor Verwendung der Blockspeicherung eine Strategie aus. Starten Sie nach dem Bearbeiten der Datei /etc/multipath.conf die Option multipathd neu mit

root # systemctl restart multipathd

Fügen Sie für eine Aktiv/Passiv-Konfiguration mit Anzeigenamen

defaults {
  user_friendly_names yes
}

zu Ihrer Datei /etc/multipath.conf hinzu. Führen Sie nach erfolgreicher Herstellung einer Verbindung zu den Zielen folgendes Kommando aus:

root # multipath -ll
mpathd (36001405dbb561b2b5e439f0aed2f8e1e) dm-0 SUSE,RBD
size=2.0G features='0' hwhandler='0' wp=rw
|-+- policy='service-time 0' prio=1 status=active
| `- 2:0:0:3 sdl 8:176 active ready running
|-+- policy='service-time 0' prio=1 status=enabled
| `- 3:0:0:3 sdj 8:144 active ready running
`-+- policy='service-time 0' prio=1 status=enabled
  `- 4:0:0:3 sdk 8:160 active ready running

Beachten Sie den Status der einzelnen Links. Fügen Sie für eine Aktiv/Aktiv-Konfiguration

defaults {
  user_friendly_names yes
}

devices {
  device {
    vendor "(LIO-ORG|SUSE)"
    product "RBD"
    path_grouping_policy "multibus"
    path_checker "tur"
    features "0"
    hardware_handler "1 alua"
    prio "alua"
    failback "immediate"
    rr_weight "uniform"
    no_path_retry 12
    rr_min_io 100
  }
}

zu Ihrer Datei /etc/multipath.conf hinzu. Starten Sie multipathd neu und führen Sie folgendes Kommando aus:

root # multipath -ll
mpathd (36001405dbb561b2b5e439f0aed2f8e1e) dm-3 SUSE,RBD
size=2.0G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
  |- 4:0:0:3 sdj 8:144 active ready running
  |- 3:0:0:3 sdk 8:160 active ready running
  `- 2:0:0:3 sdl 8:176 active ready running

22.1.2 Herstellen einer Verbindung zu Microsoft Windows (Microsoft iSCSI-Initiator)

Führen Sie zum Herstellen einer Verbindung zum SUSE Enterprise Storage iSCSI-Ziel auf einem Windows 2012 Server folgende Schritte aus:

  1. Öffnen Sie Windows Server Manager. Wählen Sie am Desktop Tools › iSCSI-Initiator aus. Das Dialogfeld iSCSI Initiator Properties (iSCSI-Initiator-Eigenschaften) wird angezeigt. Wählen Sie die Registerkarte Ermittlung aus:

    Eigenschaften des iSCSI-Initiators
    Abbildung 22.1: Eigenschaften des iSCSI-Initiators
  2. Geben Sie im Dialogfeld Discover Target Portal (Zielportal ermitteln) den Hostnamen oder die IP-Adresse im Feld Ziel ein und klicken Sie auf OK:

    Zielportal ermitteln
    Abbildung 22.2: Zielportal ermitteln
  3. Wiederholen Sie diesen Vorgang für alle Gateway-Hostnamen oder IP-Adressen. Überprüfen Sie nach Fertigstellung die Liste Target Portals (Zielportale):

    Zielportale
    Abbildung 22.3: Zielportale
  4. Wechseln Sie anschließend zur Registerkarte Ziele und prüfen Sie die ermittelten Ziele.

    Zielgruppen
    Abbildung 22.4: Zielgruppen
  5. Klicken Sie auf Connect (Verbinden) auf der Registerkarte Ziele. Das Dialogfeld Connect To Target (Mit Ziel verbinden) wird angezeigt. Aktivieren Sie das Kontrollkästchen für Enable Multi-path (Multipfad aktivieren), um die Multipfad-E/A (MPIO) zu aktivieren und klicken Sie anschließend auf OK:

  6. Wenn das Dialogfeld Connect to Target (Mit Ziel verbinden) geschlossen wird, wählen Sie Eigenschaften aus, um die Eigenschaften des Ziels zu prüfen:

    Eigenschaften des iSCSI-Ziels
    Abbildung 22.5: Eigenschaften des iSCSI-Ziels
  7. Wählen Sie Geräte aus und klicken Sie auf MPIO, um die Multipath-Konfiguration zu überprüfen:

    Gerätedetails
    Abbildung 22.6: Gerätedetails

    Die standardmäßige Load Balance policy (Lastausgleichrichtlinie) ist Round Robin With Subset (Round-Robin mit Teilmenge). Wenn Sie eine reine Failover-Konfiguration bevorzugen, ändern Sie die Einstellung zu Fail Over Only (Nur Failover).

Damit ist die iSCSI-Initiator-Konfiguration abgeschlossen. Die iSCSI-Volumes sind nun verfügbar wie alle anderen SCSI-Geräte und können zur Verwendung als Volumes und Laufwerke initialisiert werden. Klicken Sie auf OK, um das Dialogfeld iSCSI Initiator Properties (Eigenschaften des iSCSI-Initiators) zu schließen und fahren Sie mit der Rolle File and Storage Services (Datei- und Speicherdienste) am Server Manager-Dashboard fort.

Beobachten Sie das neu verbundene Volume. Es ist am iSCSI-Bus als SUSE RBD SCSI Multi-Path Drive (SUSE RBD SCSI-Multipfadlaufwerk) gekennzeichnet. Es ist zu Beginn mit einem Offline-Status markiert und einem Partitionstabellentyp Unbekannt. Wenn das neue Volume nicht sofort angezeigt wird, wählen Sie Rescan Storage (Speicher neu absuchen) aus dem Dropdown-Feld Tasks (Aufgaben) aus, um den iSCSI-Bus neu abzusuchen.

  1. Klicken Sie mit der rechten Maustaste auf das iSCSI-Volume und wählen Sie im Kontextmenü New Volume (Neues Volume) aus. Der New Volume Wizard (Assistent für neue Volumes) wird angezeigt. Klicken Sie auf Weiter, heben Sie das neu verbundene iSCSI-Volume hervor und klicken Sie auf Weiter, um zu beginnen.

    Assistent für neue Volumes
    Abbildung 22.7: Assistent für neue Volumes
  2. Zu Beginn ist das Gerät leer und enthält keine Partitionstabelle. Wenn Sie dazu aufgefordert werden, bestätigen Sie den Dialog und geben Sie an, dass das Volume mit einer GPT-Partitionstabelle initialisiert wird:

    Eingabeaufforderung für Offline-Datenträger
    Abbildung 22.8: Eingabeaufforderung für Offline-Datenträger
  3. Wählen Sie die Volume-Größe aus. Normalerweise würden Sie die volle Kapazität des Geräts nutzen. Weisen Sie in diesem Fall einen Laufwerkbuchstaben oder Verzeichnisnamen zu, in dem das neu erstellte Volumen verfügbar sein soll. Wählen Sie dann ein Dateisystem aus, das am neuen Volume erstellt werden soll. Bestätigen Sie schließlich Ihre Auswahl mit Erstellen, um die Erstellung des Volumes abzuschließen:

    Volume-Auswahl bestätigen
    Abbildung 22.9: Volume-Auswahl bestätigen

    Überprüfen Sie die Ergebnisse nach Abschluss des Vorgangs, klicken Sie dann auf Schließen, um die Laufwerkinitialisierung abzuschließen. Nach Abschluss der Initialisierung steht das Volume (und dessen NTFS-Dateisystem) wie ein neu initialisiertes lokales Laufwerk zur Verfügung.

22.1.3 Herstellen einer Verbindung zu VMware

  1. Sie benötigen zur Herstellung einer Verbindung zu ceph-iscsi-verwalteten iSCSI-Volumen einen konfigurierten iSCSI-Softwareadapter. Wenn in Ihrer vSphere-Konfiguration kein derartiger Adapter verfügbar ist, erstellen Sie einen Adapter, indem Sie die Optionsfolge Configuration (Konfiguration) › Storage Adapters (Speicheradapter) › Add (Hinzufügen) › iSCSI Software initiator (iSCSI-Software-Initiator) auswählen.

  2. Wählen Sie die Eigenschaften des Adapters aus, falls verfügbar. Klicken Sie dazu mit der rechten Maustaste auf den Adapter und wählen Sie im Kontextmenü die Option Eigenschaften aus:

    Eigenschaften des iSCSI-Initiators
    Abbildung 22.10: Eigenschaften des iSCSI-Initiators
  3. Klicken Sie im Dialogfeld iSCSI Software Initiator (iSCSI-Software-Initiator) auf die Schaltfläche Configure (Konfigurieren). Gehen Sie dann zur Registerkarte Dynamic Discovery (Dynamische Ermittlung) und wählen Sie Add (Hinzufügen) aus.

  4. Geben Sie die IP-Adresse oder den Hostnamen Ihres ceph-iscsi-iSCSI-Gateways ein. Wenn Sie mehrere iSCSI-Gateways in einer Failover-Konfiguration ausführen, wiederholen Sie diesen Schritt für alle vorhandenen Gateways.

    Zielserver hinzufügen
    Abbildung 22.11: Zielserver hinzufügen

    Klicken Sie nach Eingabe aller iSCSI-Gateways im Dialogfeld auf OK, um eine erneute Absuche des iSCSI-Adapters zu initiieren.

  5. Nach Abschluss der Neuabsuche wird das neue iSCSI-Gerät unterhalb der Liste Storage Adapters (Speicheradapter) im Fensterbereich Details angezeigt. Für Multipfadgeräte können Sie nun mit der rechten Maustaste auf den Adapter klicken und im Kontextmenü Manage Paths (Pfade verwalten) auswählen:

    Multipfadgeräte verwalten
    Abbildung 22.12: Multipfadgeräte verwalten

    Sie sollten nun alle Pfade mit einer grünen Anzeige unter Status sehen. Einer Ihrer Pfade sollte mit Active (I/O) (Aktiv (E/A)) gekennzeichnet sein und alle anderen einfach mit Active (Aktiv):

    Auflistung der Pfade für Multipfad
    Abbildung 22.13: Auflistung der Pfade für Multipfad
  6. Sie können nun von Storage Adapters (Speicheradapter) zum Element mit dem Label Storage (Speicher) wechseln. Wählen Sie oben rechts im Fensterbereich Add Storage... (Speicher hinzufügen...) aus, um das Dialogfeld Add Storage (Speicher hinzufügen) zu öffnen. Wählen Sie dann Disk/LUN (Datenträger/LUN) aus und klicken Sie auf Weiter. Das neu hinzugefügte iSCSI-Gerät erscheint in der Liste Select Disk/LUN (Datenträger/LUN auswählen). Wählen Sie es aus und klicken Sie dann auf Weiter, um fortzufahren:

    Dialogfeld „Speicher hinzufügen“
    Abbildung 22.14: Dialogfeld „Speicher hinzufügen“

    Klicken Sie auf Weiter, um das standardmäßige Datenträger-Layout zu übernehmen.

  7. Weisen Sie im Fensterbereich Eigenschaften der neuen Datenablage einen Namen zu und klicken Sie auf Weiter. Akzeptieren Sie die Standardeinstellung zur Verwendung des gesamten Speicherplatzes des Volumes für die Datenablage oder wählen Sie Custom Space Setting (Benutzerdefinierte Speicherplatzeinstellung) für eine kleinere Datenablage aus:

    Benutzerdefinierte Speicherplatzeinstellung
    Abbildung 22.15: Benutzerdefinierte Speicherplatzeinstellung

    Klicken Sie auf Finish (Fertig stellen), um die Erstellung der Datenablage abzuschließen.

    Die neue Datenablage wird nun in der Datenablageliste angezeigt. Wählen Sie sie aus, um die Details abzurufen. Nun sind Sie in der Lage, das ceph-iscsi-unterstützte iSCSI-Volume wie jede andere vSphere-Datenablage zu verwenden.

    Überblick zur iSCSI-Datenablage
    Abbildung 22.16: Überblick zur iSCSI-Datenablage

22.2 Fazit

ceph-iscsi ist eine Schlüsselkomponente von SUSE Enterprise Storage 7, die den Zugriff auf dezentrale, hochverfügbare Blockspeicher von jedem Server oder Client aus ermöglicht, der das iSCSI-Protokoll versteht. Durch Verwendung von ceph-iscsi auf mindestens einem iSCSI-Gateway-Host werden Ceph RBD-Images als logische Einheiten (Logical Units, LUs) verfügbar, die mit iSCSI-Zielen verknüpft sind. Auf diese kann auf optional lastausgeglichene, hochverfügbare Weise zugegriffen werden.

Da die gesamte Konfiguration von ceph-iscsi im Ceph RADOS-Objektspeicher gespeichert ist, weisen ceph-iscsi-Gateway-Hosts von Natur aus keinen dauerhaften Zustand auf und können daher nach Belieben ersetzt, verbessert oder reduziert werden. SUSE Enterprise Storage 7 ermöglicht es SUSE-Kunden folglich, eine echte dezentrale, hochverfügbare, stabile und selbstreparierende Unternehmensspeichertechnologie auf frei erhältlicher Hardware und einer Open Source-Plattform auszuführen.