Startseite
» Gewusst wie
»
DM-Multipath auf SLES 15 für zuverlässige SAN-Pfade einrichten
DM-Multipath auf SLES 15 für zuverlässige SAN-Pfade einrichten
Für SCSI- oder DASD-Speicher unter SLES 15 verwenden Sie Device Mapper Multipath (DM-Multipath): Stellen Sie sicher, dass das Array dieselbe LUN über mehrere unterstützte Pfade bereitstellt, aktivieren Sie die entsprechende Funktion multipathdund überprüfen Sie die resultierende Zuordnung, bevor Sie Workloads darauf verweisen. Verwenden Sie zunächst die von SUSE erkannten Hardware-Standardeinstellungen und die Kompatibilitätsrichtlinien Ihres Speicherherstellers. Eine generische, multipath.confvon einem anderen Array kopierte Zuordnung kann das falsche Pfadverhalten festlegen.
Der Terminalvergleich zeigt, dass SLES 15 DM-Multipath für SCSI oder DASD verwendet, während natives NVMe-Multipathing der Standard für NVMe ist.
Dieses Verfahren orientiert sich am SLES 15 SP7 Storage Administration Guide (Stand: Oktober 2026). Passen Sie die Anleitung und die Array-Einstellungen an das installierte Service Pack an; es gibt keine Universalkonfiguration, die für jedes SAN geeignet ist.
1. Bestätigen Sie das Speicher- und Mehrwegemodell.
DM-Multipath fasst mehrere Host-seitige Pfade zu einem einzelnen Speichermedium in einer einzigen Zuordnung zusammen. Dadurch bleibt die E/A-Verfügbarkeit erhalten, wenn ein Verbindungspfad ausfällt. Allerdings bietet DM-Multipath keinen Schutz vor dem Ausfall der zugrunde liegenden LUN oder des Arrays. Laut SUSE SLES 15 ist natives Kernel-Multipathing die Standardmethode und empfohlene Vorgehensweise für NVMe. Verwenden Sie diese DM-Multipath-Anleitung für SCSI oder DASD, sofern der Array-Hersteller keine andere unterstützte Konfiguration dokumentiert.
Vor dem Hostwechsel muss sichergestellt werden, dass das Array dieselbe LUN über mindestens zwei Pfade bereitstellt, wobei Zoning, LUN-Maskierung, Hostzugriff und HBA-Treiber gemäß den Herstellervorgaben konfiguriert sein müssen. Jeder Pfad sollte dieselbe LUN-Identität melden.
Vergleichen Sie die sichtbaren SCSI-Geräte und WWN-Werte, um zu bestätigen, dass sich die verschiedenen Pfade auf dieselbe LUN beziehen.
Führen Sie den folgenden schreibgeschützten Inventarisierungsbefehl aus, um die aktuell von Linux erkannten Geräte anzuzeigen:
lsblk -o NAME,TYPE,HCTL,WWN,SIZE,MOUNTPOINTS
Kapazität allein beweist nicht, dass Geräte eine LUN gemeinsam nutzen. Falls Pfade oder WWNs fehlen, beheben Sie zuerst Probleme mit der Array-Präsentation, der Zonierung, der Maskierung oder den HBAs. Identifizieren Sie alle Dateisysteme, LVM-Volumes oder Anwendungen, die einen Rohpfad verwenden /dev/sdX; die Migration eines laufenden Systems erfordert Planung.
2. Installieren und starten Sie den Multipath-Dienst.
Installieren Sie die Multipath-Tools von SUSE und das Partition Mapping Utility, falls diese noch nicht vorhanden sind:
Der Befehl „package“ installiert die Multipath-Daemon-Tools und das Partition-Mapping-Dienstprogramm.
sudo zypper install multipath-tools kpartx
Aktivieren Sie den Daemon, sodass er beim Systemstart automatisch gestartet wird, starten Sie ihn jetzt und überprüfen Sie seinen Status:
Aktivieren und starten Sie das Programm multipathd, damit es Mehrwege-Maps erkennen und verwalten kann.
multipathdVerwaltet erkannte Zuordnungen. Wenn diese Funktion deaktiviert ist, werden Zuordnungen beim Systemstart möglicherweise nicht eingerichtet. Ein laufender Dienst allein beweist nicht, dass das Array mehrere Pfade freigegeben hat; überprüfen Sie die unten stehende Zuordnung.
3. Überprüfen Sie die Standardeinstellungen von SUSE, bevor Sie die Konfiguration bearbeiten.
Die meisten unterstützten Hardwarekomponenten können die integrierte Konfiguration nutzen, sodass ein Administrator oft keine eigene Konfiguration erstellen muss /etc/multipath.conf. Fragen Sie zunächst die Tools, welches Hardwareprofil erkannt wurde, und führen Sie einen Testlauf durch.
Überprüfen Sie die erkannten Hardwareeinstellungen und führen Sie eine Testerkennung durch, bevor Sie lokale Überschreibungen hinzufügen.
sudo multipath -T
sudo multipath -d
multipath -TZeigt die Konfigurationseinstellungen an, die der erkannten Hardware entsprechen; sie werden jedoch nicht angewendet. multipath -dDies ist ein Testlauf, der nützlich ist, um zu überprüfen, welche Zuordnungen erstellt würden, ohne sie zu erstellen. Vergleichen Sie die Ausgabe mit den aktuellen SLES-Richtlinien des Array-Herstellers. Das Kapitel „Multipath“ in SUSE SLES 15 SP7 beschreibt das Verhalten und die Konfiguration des Tools. Hinweise zur Multipath-Einrichtung von SUSE finden Sie im SUSE Knowledgebase-Artikel 3955167 .
Vermeiden Sie es, als erste Lösung allgemeine Blacklist-Regeln oder kopierte Geräteabschnitte hinzuzufügen. Blacklisting kann ein Gerät vor Multipath verbergen, während eine gerätespezifische Überschreibung die Pfadprüfung, Gruppierung oder das Failover-Verhalten beeinflussen kann. Wenn SUSE und der Array-Hersteller unterschiedliche Werte angeben, verwenden Sie die vom Hersteller für das installierte Service Pack unterstützte Kombination und eskalieren Sie die Diskrepanz, anstatt zu raten.
4. Fügen Sie nur die erforderliche WWID-spezifische Einstellung hinzu.
Wenn Sie lediglich einen stabilen, lesbaren Namen benötigen, fügen Sie einen Alias für die exakte LUN-WWID hinzu. Die folgende Konfiguration ordnet beispielsweise eine Beispiel-WWID dem Wert Ihrer LUN zu data01; ersetzen Sie die Beispiel-WWID durch den Wert Ihrer LUN.
Eine minimale Konfiguration weist einer explizit identifizierten LUN einen lesbaren Alias zu.
multipaths {
multipath {
wwid 3600a098000aad1e3000064e45f2c2355
alias data01
}
}
Speichern Sie den Abschnitt in /etc/multipath.conf. Die WWID ist die Geräteidentität; der Alias ändert den lesbaren Namen der Zuordnung. Ein Alias ist optional und ersetzt nicht die korrekte WWID. In einem Cluster sollten relevante Aliase und die Multipath-Konfiguration auf jedem Knoten konsistent sein, damit Ressourcendefinitionen dasselbe Speichergerät auflösen.
Verwenden Sie keine Optionen wie beispielsweise path_checker`--in` path_grouping_policy, failback`--out` oder no_path_retry`--out` aus einem nicht relevanten Beispiel. Die Entscheidung, ob E/A-Vorgänge in eine Warteschlange gestellt oder Fehler zurückgegeben werden sollen, wenn alle Pfade nicht verfügbar sind, hängt von der Anwendung und dem Array ab: Durch das Einreihen in eine Warteschlange können ausstehende E/A-Vorgänge bei einer kurzen Unterbrechung erhalten bleiben, aber ein längeres Einreihen kann Prozesse blockieren und Speicher belegen. Beachten Sie die Richtlinien des Speicher- und Anwendungsherstellers.
5. Konfiguration anwenden und Startabbild aktualisieren
Nach dem Speichern einer Konfigurationsänderung fordern Sie den laufenden Daemon auf, diese neu zu laden, und erstellen Sie anschließend das Initramfs neu:
Laden Sie den Daemon neu und generieren Sie die initramfs neu, damit die Multipath-Einstellungen beim Systemstart erhalten bleiben.
sudo multipathd reconfigure
sudo dracut -f
SUSE weist darauf hin, dass die initramfs-Datei mit der Multipath-Konfiguration und den zugehörigen Statusdateien synchronisiert bleiben muss. Eine Diskrepanz kann dazu führen, dass das System nicht normal startet oder in eine Notfall-Shell wechselt. Dies ist besonders wichtig, wenn sich das Root-Dateisystem auf einem SAN-Speicher befindet: Nehmen Sie die Änderung während eines kontrollierten Wartungsfensters vor, stellen Sie den Zugriff auf die Konsole oder den Wiederherstellungsmodus sicher und befolgen Sie die entsprechenden SUSE-Anweisungen für Root-Dateisysteme auf Multipath-Systemen, bevor Sie das System neu starten.
6. Überprüfen Sie die Karte und verwenden Sie ihren persistenten Pfad
Überprüfen Sie die Topologie und bestätigen Sie, dass die erwartete LUN einmal als Multipath-Map mit allen darunter liegenden erwarteten Pfaden erscheint:
Prüfen Sie die WWID- und Pfadzustände der Karte und verwenden Sie dann die persistente WWID-basierte Geräteverknüpfung für Verbraucher.
sudo multipath -ll
sudo multipathd show topology
ls -l /dev/disk/by-id/dm-uuid-mpath-*
In der multipath -llTabelle readysteht für einen nutzbaren Pfad, faultyfür einen fehlerhaften Pfad und ghostkann einen passiven Pfad in einem Aktiv/Passiv-Array beschreiben. Prüfen Sie die erwartete Anzahl an Pfaden und interpretieren Sie passive Zustände anhand des Array-Designs. Wenn die LUN aktiv ist, konfigurieren Sie die Clients so, dass sie das Multipath-Gerät verwenden, z. B. /dev/mapper/data01für den Alias oder die persistente /dev/disk/by-id/dm-uuid-mpath-<WWID>Verbindung. Vermeiden Sie /dev/dm-N, da sich die Anzahl ändern kann, und vermeiden Sie es, Workloads an einen einzelnen /dev/sdXPfad zu binden.
Um die Ausfallsicherheit zu gewährleisten, planen Sie einen vom Hersteller unterstützten Single-Path-Failover-Test und vergewissern Sie sich, dass die Arbeitslast ohne E/A-Fehler weiterläuft. Prüfen Sie anschließend, ob der Pfad wiederhergestellt ist. Trennen Sie keine Produktionsverbindungen für einen improvisierten Test. Die Einrichtung ist abgeschlossen, wenn die erwartete WWID auf eine einzige Zuordnung aufgelöst wird, alle entworfenen Pfade die korrekten Zustände aufweisen, die Boot-Konfiguration synchronisiert ist und die Clients die Zuordnung anstelle eines einzelnen Pfades verwenden.