Mount iSCSI volume on CloudLinux 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 CloudLinux 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.
yum install iscsi-initiator-utils device-mapper-multipath
-
Starten Sie die Services.
chkconfig multipathd on
chkconfig iscsid on
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.
-
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.
-
Führen Sie den folgenden Befehl aus:
# systemctl start multipathd.service
Wenn Sie die Multipath-Konfigurationsdatei bearbeiten müssen, nachdem Sie den Multipath-Daemon gestartet haben, müssen Sie den Befehl
systemctl reload multipathd.service
eingeben, damit die Änderungen wirksam werden.
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 Befehlszeilen-Tool, das die Erkennung und Anmeldung bei iSCSI-Zielen sowie den Zugriff auf und die Verwaltung der Open-iSCSI-Datenbank unterstützt. 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-Informationen und die 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 verwenden, und zwar mit "user_friendly_names" oder "Alias"-Schlüsselwörtern in multipath.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.
Scrollen Sie weiter nach unten, um die Befehlscodes zu sehen, die in der Befehlstabelle von
fdisk
aufgeführt sind. -
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
- Die neue Partition wird mit der Festplatte aufgelistet, ähnlich wie
-
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
-
Fügen Sie das neue Dateisystem zur Datei
/etc/fstab
des Systems hinzu, um das automatische Anhängen beim Booten zu aktivieren.- 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
- 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.
# yum 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
parted
das primäre Laufwerk. Das primäre Laufwerk ist in den meisten Fällen/dev/sda
. 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. Vonparted
wirdmkpart
zum Erstellen einer Partition verwendet. Je nach dem zu erstellenden Partitionstyp können Sie zusätzliche Parameter wie primary oder logical verwenden. 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 Sieunit TB
eingeben, wenn Sie dies wünschen.mkpart
-
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
- 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 in der Produktdokumentation unter CloudLinux.
Block Storage for Classic-Datenträger abhängen
Wenn Sie das Volume nicht mehr benötigen, unmounten Sie es, bevor Sie es löschen.
- 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.
iscsiadm -m node -o delete -t <TARGET IQN> -p <PORTAL IP:PORT>