Mount iSCSI volume on Red Hat Enterprise Linux 8
Dieses Tutorial führt Sie durch die Schritte zum Mounten eines IBM Cloud® Block Storage for Classic-Volumes auf einem Server mit dem Betriebssystem Red Hat Enterprise Linux® 8. Sie erstellen zwei Verbindungen von einer einzelnen Netzschnittstelle des Hosts zu zwei Ziel-IP-Adressen des Speicherarrays.
Wenn Sie ein anderes Linux®-Betriebssystem verwenden, sehen Sie in der Dokumentation Ihrer spezifischen Distribution nach und stellen Sie sicher, dass Multipath ALUA für die Pfadpriorität unterstützt.
Vorbereitende Schritte
Wenn mehrere Hosts denselben Block Storage for Classic-Datenträger anhängen, ohne kooperativ verwaltet zu werden, besteht das Risiko, dass Ihre Daten beschädigt werden. Eine Datenträgerbeschädigung kann auftreten, wenn mehrere Hosts gleichzeitig Änderungen am Datenträger vornehmen. Sie benötigen ein clustersensitiven, gemeinsam genutzten Plattendateisystem, um Datenverluste wie Microsoft Cluster Shared Volumes (CSV), Red Hat Global File System (GFS2), VMware® VMFS und andere zu verhindern. Weitere Informationen finden Sie in der Dokumentation des Betriebssystems Ihres Gastgebers.
Es ist am besten, den Speicherdatenverkehr über ein VLAN zu leiten, das die Firewall umgeht. Wenn der Speicherdatenverkehr über Software-Firewalls geleitet wird, erhöht sich dadurch die Latenz und die Speicherleistung wird beeinträchtigt. Weitere Informationen zur Weiterleitung von Speicherdatenverkehr zur eigenen VLAN-Schnittstelle finden Sie bei den häufig gestellten Fragen.
Bevor Sie beginnen, stellen Sie sicher, dass der Host, der auf das Block Storage for Classic-Volume zugreifen soll, autorisiert ist. Weitere Informationen finden Sie unter Autorisieren des Hosts in der Konsole Autorisieren des Hosts über die CLI Autorisieren des Hosts mit Terraform.
iSCSI und Multipath-Dienstprogramme installieren
Stellen Sie sicher, dass Ihr System aktualisiert ist und die Pakete iscsi-initiator-utils
und device-mapper-multipath
enthält. Verwenden Sie den folgenden Befehl, um die Pakete zu installieren.
sudo dnf -y install iscsi-initiator-utils device-mapper-multipath
Multipath einrichten
Sie richten DM Multipath mit dem Dienstprogramm mpathconf
ein, das die Multipath-Konfigurationsdatei /etc/multipath.conf
erstellt.
- Wenn die Datei /etc/multipath.conf vorhanden ist, kann sie mit dem Dienstprogramm mpathconf bearbeitet werden.
- Wenn die Datei '/etc/multipath.conf' nicht vorhanden ist, erstellt das Dienstprogramm 'mpathconf' die Datei '/etc/multipath.conf' neu.
Weitere Informationen über das Dienstprogramm mpathconf finden Sie in der Manpage mpathconf(8).
-
Geben Sie den Befehl mpathconf mit der Option
--enable
ein.# mpathconf --enable --user_friendly_names n
-
Bearbeiten Sie die Datei
/etc/multipath.conf
mit der folgenden Mindestkonfiguration.defaults { user_friendly_names no max_fds max flush_on_last_del yes queue_without_daemon no dev_loss_tmo infinity fast_io_fail_tmo 5 } # All data in the following section must be specific to your system. blacklist { wwid "SAdaptec*" devnode "^hd[a-z]" devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN" path_grouping_policy group_by_prio features "2 pg_init_retries 50" no_path_retry queue prio "alua" path_checker tur failback immediate path_selector "round-robin 0" hardware_handler "1 alua" rr_weight uniform rr_min_io 128 } }
Der Abschnitt "Initial defaults" der Konfigurationsdatei konfiguriert Ihr System so, dass die Namen der Multipath-Geräte die Form /dev/mapper/mpath n haben, wobei
mpath n
die WWID des Geräts ist. -
Speichern Sie die Konfigurationsdatei und beenden Sie den Editor, falls dies erforderlich sein sollte.
-
Setzen Sie den folgenden Befehl ab.
systemctl start multipathd.service
Wenn Sie die Multipfad-Konfigurationsdatei bearbeiten müssen, nachdem Sie den Multipfad-Daemon gestartet haben, müssen Sie den Befehl
systemctl reload multipathd.service
eingeben, damit die Änderungen wirksam werden.Weitere Informationen zur Verwendung der Device Mapper Multipath-Funktion unter RHEL 8 finden Sie unter "Configuring the device mapper multipath ".
Datei /etc/iscsi/initiatorname.iscsi aktualisieren
Aktualisieren Sie die Datei /etc/iscsi/initiatorname.iscsi
mit der IQN aus der Konsole IBM Cloud®. Geben Sie den Wert in Kleinbuchstaben ein.
InitiatorName=<value-from-the-Portal>
Berechtigungsnachweise konfigurieren
Bearbeiten Sie die folgenden Einstellungen in /etc/iscsi/iscsid.conf
, indem Sie den Benutzernamen und das Passwort von der IBM Cloud®-Konsole verwenden. Geben Sie die CHAP-Namen in Großbuchstaben ein.
node.session.auth.authmethod = CHAP
node.session.auth.username = <Username-value-from-Portal>
node.session.auth.password = <Password-value-from-Portal>
discovery.sendtargets.auth.authmethod = CHAP
discovery.sendtargets.auth.username = <Username-value-from-Portal>
discovery.sendtargets.auth.password = <Password-value-from-Portal>
Lassen Sie die anderen CHAP-Einstellungen auf Kommentar. IBM Cloud®-Speicher verwendet nur unidirektionale Authentifizierung. Aktivieren Sie nicht die gemeinsame Nutzung von CHAP (Mutual CHAP).
Speichermedium kennenlernen und anmelden
Das Dienstprogramm "iscsiadm" ist ein Befehlszeilenprogramm, das zur Erkennung und Anmeldung bei iSCSI-Zielen sowie für den Zugriff auf und die Verwaltung der open-iscsi-Datenbank verwendet wird. Weitere Informationen finden Sie in der Manpage iscsiadm(8). Führen Sie in diesem Schritt die Erkennung des Geräts mithilfe der aus der IBM Cloud®-Konsole abgerufenen Ziel-IP-Adresse aus.
-
Führen Sie die Erkennung für das iSCSI-Array aus.
iscsiadm -m discovery -t sendtargets -p <ip-value-from-IBM-Cloud-console>
Wenn die IP-Adressinformationen und Zugriffsdetails angezeigt werden, war die Erkennung erfolgreich.
-
Melden Sie sich beim iSCSI-Array an.
iscsiadm -m node --login
Konfiguration prüfen
-
Überprüfen Sie, ob die iSCSI-Sitzung eingerichtet ist.
iscsiadm -m session -o show
-
Prüfen Sie, ob mehrere Pfade vorhanden sind.
multipath -l
Von diesem Befehl werden die Pfade gemeldet. Wenn es richtig konfiguriert ist, hat jedes Volume eine einzige Gruppe mit einer Anzahl von Pfaden, die der Anzahl der iSCSI-Sitzungen entspricht. Es ist möglich, ein Volumen mit einem einzigen Pfad zu verbinden, aber es ist wichtig, dass Verbindungen auf beiden Pfaden hergestellt werden, um eine Unterbrechung des Dienstes zu verhindern.
Falls MPIO nicht korrekt konfiguriert ist, wird die Verbindung zum Speichermedium möglicherweise getrennt und es wird im Status 'offline' angezeigt, wenn ein Netzausfall auftritt oder wenn IBM Cloud®-Teams Wartungsarbeiten durchführen. MPIO bietet bei solchen Veranstaltungen eine zusätzliche Konnektivitätsebene und hält eine etablierte Sitzung auf dem aktuellen Stand mit aktiven Lese-/Schreibvorgängen.
-
Listen Sie die Partitionstabellen für das verbundene Gerät auf.
fdisk -l | grep /dev/mapper
Standardmäßig wird die Speichereinheit
/dev/mapper/<wwid>
zugeordnet. Solange der Datenträger vorhanden ist, ist die WWID persistent. Dieser Befehl meldet Ähnliches wie im folgenden Beispiel.Disk /dev/mapper/3600a0980383030523424457a4a695266: 73.0 GB, 73023881216 bytes
Im Beispiel ist die Zeichenkette
3600a0980383030523424457a4a695266
die WWID. Ihre Anwendung sollte die WWID verwenden. Es ist auch möglich, leichter lesbare Namen zu vergeben, indem die Schlüsselwörter "user_friendly_names" oder "alias" in multipath.conf verwendet werden. Weitere Informationen finden Sie in der Manpagemultipath.conf
.Nun ist der Datenträger angehängt und der Zugriff darauf ist über den Host möglich. Als Nächstes können Sie ein Dateisystem erstellen.
Dateisystem erstellen (optional)
Führen Sie die folgenden Schritte aus, um ein Dateisystem auf dem neu angehängten Datenträger zu erstellen. Ein Dateisystem ist erforderlich, damit die meisten Anwendungen den Datenträger verwenden können. Verwenden Sie fdisk
für Laufwerke mit weniger als 2 TB und parted
für eine Platte mit mehr als 2 TB.
Dateisystem mit fdisk
erstellen
-
Rufen Sie den Namen des Datenträgers ab.
fdisk -l | grep /dev/mapper
Der zurückgegebene Plattenname ähnelt
/dev/mapper/XXX
. -
Erstellen Sie eine Partition auf dem Datenträger.
fdisk /dev/mapper/XXX
XXX steht für den in Schritt 1 zurückgegebenen Datenträgernamen.
-
Erstellen Sie ein Dateisystem auf der neuen Partition.
fdisk –l /dev/mapper/XXX
-
Die neue Partition wird mit der Festplatte aufgelistet, ähnlich wie
XXXp1
, gefolgt von der Größe, dem Typ (83) und Linux®. -
Achten Sie auf den Partitionsnamen; Sie werden ihn im nächsten Schritt brauchen. (XXXp1 steht für den Partitionsnamen.)
-
Erstellen Sie das Dateisystem:
mkfs.ext3 /dev/mapper/XXXp1
-
-
Erstellen Sie einen Mountpunkt für das Dateisystem und hängen Sie es an.
-
Erstellen Sie den Partitionsnamen
PerfDisk
oder den Namen des Datenträgers, an den Sie das Dateisystem anhängen wollen.mkdir /PerfDisk
-
Hängen Sie den Speicher mit dem Partitionsnamen an.
mount /dev/mapper/XXXp1 /PerfDisk
-
Prüfen Sie, ob Ihr neues Dateisystem in der Liste angezeigt wird.
df -h
-
-
Um das automatische Anhängen von om boot zu aktivieren, fügen Sie das neue Dateisystem zur Datei
/etc/fstab
des Systems hinzu.- Hängen Sie an das Ende der Datei
/etc/fstab
die folgende Zeile an (mit dem Partitionsnamen aus Schritt 3).
/dev/mapper/XXXp1 /PerfDisk ext3 defaults,_netdev 0 1
Weitere Informationen finden Sie in der Datei "An introduction to the Linux
/etc/fstab
". - Hängen Sie an das Ende der Datei
Dateisystem mit parted
erstellen
Bei vielen Linux®-Verteilungen ist parted
vorinstalliert. Wenn Sie es jedoch benötigen, können Sie es mit dem folgenden Befehl installieren.
# dnf install parted
Führen Sie die folgenden Schritte aus, um ein Dateisystem mit parted
zu erstellen.
-
Starten Sie die interaktive
parted
-Shell.parted
-
Erstellen Sie eine Partition auf dem Datenträger.
-
Sofern nicht anders angegeben, verwendet das Dienstprogramm
parted
Ihr primäres Laufwerk, das in den meisten Fällen/dev/sda
ist. Wechseln Sie mit dem Befehl select zu dem Datenträger, den Sie partitionieren möchten. Ersetzen Sie XXX durch den Namen Ihres neuen Geräts.select /dev/mapper/XXX
-
Senden Sie eine E-Mail an
print
, um zu bestätigen, dass Sie sich auf der richtigen Festplatte befinden.print
-
Erstellen Sie eine GPT-Partitionstabelle.
mklabel gpt
-
Mit
Parted
können primäre und logische Datenträgerpartitionen erstellt werden; die Schritte dazu sind identisch. Um eine Partition zu erstellen, verwendet das Dienstprogrammmkpart
. Je nach dem zu erstellenden Partitionstyp können Sie zusätzliche Parameter wie primary oder logical verwenden.mkpart
Die aufgelisteten Einheiten werden standardmäßig in Megabyte (MB) angegeben. Um eine Partition mit 10 GB zu erstellen, beginnen Sie mit 1 und enden bei 10000. Sie können die Dimensionierungseinheit auch in Terabyte ändern, indem Sie
unit TB
eingeben, wenn Sie dies wünschen. -
Beenden Sie
parted
mitquit
.quit
-
-
Erstellen Sie ein Dateisystem auf der neuen Partition.
mkfs.ext3 /dev/mapper/XXXp1
Es ist wichtig, die richtige Festplatte und Partition auszuwählen, wenn Sie diesen Befehl ausführen. Drucken Sie zur Überprüfung des Ergebnisses die Partitionstabelle aus. In der Spalte "Dateisystem" sehen Sie ext3.
-
Erstellen Sie einen Mountpunkt für das Dateisystem und hängen Sie es an.
- Erstellen Sie den Partitionsnamen
PerfDisk
oder den Namen des Datenträgers, an den Sie das Dateisystem anhängen wollen.
mkdir /PerfDisk
- Hängen Sie den Speicher mit dem Partitionsnamen an.
mount /dev/mapper/XXXp1 /PerfDisk
- Prüfen Sie, ob Ihr neues Dateisystem in der Liste angezeigt wird.
df -h
- Erstellen Sie den Partitionsnamen
-
Um das automatische Anhängen von om boot zu aktivieren, fügen Sie das neue Dateisystem zur Datei
/etc/fstab
des Systems hinzu.- Hängen Sie an das Ende der Datei
/etc/fstab
die folgende Zeile an (mit dem Partitionsnamen aus Schritt 3).
/dev/mapper/XXXp1 /PerfDisk ext3 defaults,_netdev 0 1
Weitere Informationen finden Sie in der Datei "An introduction to the Linux
/etc/fstab
". - Hängen Sie an das Ende der Datei
Verwaltung von Benutzerberechtigungen für den Inhalt des bereitgestellten Datenträgers
Als Systemadministrator können Sie den Zugriff auf die Daten auf dem bereitgestellten Datenträger verwalten. Nachdem das Dateisystem fertig ist, können Sie die Zugriffssteuerung verfeinern, indem Sie mit den Befehlen chown
und
chmod
einzelnen Benutzern und Gruppen Lese-, Schreib- und Ausführungsberechtigungen zuweisen. Weitere Informationen finden Sie im Tutorial von Red Hat: "So verwalten Sie Linux-Berechtigungen für Benutzer, Gruppen und andere ".
MPIO-Konfiguration überprüfen
Falls MPIO nicht korrekt konfiguriert ist, wird die Verbindung zum Speichermedium möglicherweise getrennt und es wird im Status 'offline' angezeigt, wenn ein Netzausfall auftritt oder wenn IBM Cloud®-Teams Wartungsarbeiten durchführen. MPIO bietet bei solchen Veranstaltungen eine zusätzliche Konnektivitätsebene und hält eine etablierte Sitzung auf dem aktuellen Stand mit aktiven Lese-/Schreibvorgängen.
-
Listen Sie die aktuelle Konfiguration auf, um zu überprüfen, ob die Geräte von Multipath ausgewählt werden. Wenn sie korrekt konfiguriert ist, gibt es für jeden Datenträger eine einzige Gruppe mit einer Anzahl von Pfaden, die der Anzahl der iSCSI-Sitzungen entspricht.
multipath -l
root@server:~# multipath -l 3600a09803830304f3124457a45757067 dm-1 NETAPP,LUN C-Mode size=20G features='1 queue_if_no_path' hwhandler='0' wp=rw |-+- policy='round-robin 0' prio=-1 status=active | `6:0:0:101 sdd 8:48 active ready running `-+- policy='round-robin 0' prio=-1 status=enabled `- 7:0:0:101 sde 8:64 active ready running
Die Zeichenfolge
3600a09803830304f3124457a45757067
im Beispiel ist die eindeutige WWID des Datenträgers. Jedes Volume wird durch seine eindeutige WWID identifiziert, die während der gesamten Lebensdauer des Volumes erhalten bleibt. -
Bestätigen Sie, dass alle Platten vorhanden sind. In einer korrekten Konfiguration müssen in der Ausgabe zwei Platten mit derselben Kennung und eine
/dev/mapper
-Auflistung mit derselben Größe und mit derselben ID vorhanden sein. Das Gerät/dev/mapper
konfiguriert Multipath.fdisk -l | grep Disk
- Beispielausgabe einer korrekten Konfiguration.
root@server:~# fdisk -l | grep Disk Disk /dev/sda: 500.1 GB, 500107862016 bytes Disk identifier: 0x0009170d Disk /dev/sdc: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1 Disk /dev/sdb: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1 Disk /dev/mapper/3600a09803830304f3124457a45757066: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
Die WWID ist im Gerätenamen enthalten, den der Multipath erstellt. Es wird empfohlen, die WWID für Ihre Anwendung zu verwenden.
- Beispielausgabe einer fehlerhaften Konfiguration. Es ist kein
/dev/mapper
Datenträger vorhanden.
root@server:~# fdisk -l | grep Disk Disk /dev/sda: 500.1 GB, 500107862016 bytes Disk identifier: 0x0009170d Disk /dev/sdc: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1 Disk /dev/sdb: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
-
Um zu bestätigen, dass keine lokalen Festplatten in der Liste der Multipath-Geräte enthalten sind, zeigen Sie die aktuelle Konfiguration mit der Ausführlichkeitsstufe 3 an. Die Ausgabe des folgenden Befehls zeigt die Einheiten an und gibt an, welche Einheiten der Blockierliste hinzugefügt wurden.
multipath -l -v 3 | grep sd <date and time>
-
Wenn ein Datenträger bereitgestellt und angehängt wird, während der zweite Pfad ausgefallen ist, sieht der Host möglicherweise einen einzelnen Pfad, wenn der Discovery Scan zum ersten Mal ausgeführt wird. Wenn Sie auf dieses seltene Phänomen stoßen, überprüfen Sie die IBM Cloud® Statusseite, um zu sehen, ob ein Ereignis im Gange ist, das die Fähigkeit Ihres Hosts, auf den Speicher zuzugreifen, beeinträchtigt. Wenn keine Ereignisse gemeldet werden, führen Sie den Discovery Scan erneut durch, um sicherzustellen, dass alle Pfade ordnungsgemäß erkannt werden. Ist ein Ereignis im Gange, kann der Speicher mit einem einzigen Pfad verbunden werden. Es ist jedoch wichtig, dass Pfade nach Abschluss des Ereignisses erneut gesucht werden. Wenn nach dem erneuten Scan nicht beide Pfade entdeckt werden, erstellen Sie einen Support-Fall, damit dieser ordnungsgemäß untersucht werden kann.
Block Storage for Classic-Datenträger abhängen
- Hängen Sie das Dateisystem ab.
umount /dev/mapper/XXXp1 /PerfDisk
- Wenn Sie über keine anderen Datenträger in diesem Zielportal verfügen, können Sie sich von dem Ziel abmelden.
iscsiadm -m node -T <TARGET NAME> -p <PORTAL IP:PORT> --logout
- Wenn Sie über keine anderen Datenträger in diesem Zielportal verfügen, löschen Sie den Zielportaldatensatz, um künftige Anmeldeversuche zu verhindern.
Weitere Informationen finden Sie im Handbuchiscsiadm -m node -o delete -T <TARGET IQN> -p <PORTAL IP:PORT>
iscsiadm
.