Konfigurieren Sie Oracle Linux 7.x mit NVMe-oF für ONTAP -Speicher
Oracle Linux-Hosts unterstützen die NVMe over Fibre Channel (NVMe/FC)- und NVMe over TCP (NVMe/TCP)-Protokolle mit Asymmetric Namespace Access (ANA). ANA bietet Multipathing-Funktionalität, die dem asymmetrischen logischen Einheitenzugriff (ALUA) in iSCSI- und FCP-Umgebungen entspricht.
Erfahren Sie, wie Sie NVMe over Fabrics (NVMe-oF)-Hosts für Oracle Linux 7.x konfigurieren. Weitere Informationen zu Support und Funktionen finden Sie unter "Oracle Linux ONTAP Unterstützung und -Funktionen"Die
NVMe-oF unter Oracle Linux 7.x weist folgende bekannte Einschränkungen auf:
-
Das Booten von SAN über das NVMe-oF-Protokoll wird nicht unterstützt.
-
Die Unterstützung für das NetApp sanlun Host-Dienstprogramm ist für NVMe-oF auf einem Oracle Linux 7.x-Host nicht verfügbar. Stattdessen können Sie sich auf das NetApp Plug-in verlassen, das im nativen
nvme-cliPaket für alle NVMe-oF-Transporte. -
Native NVMe/FC-Skripte für automatische Verbindungen sind im nvme-cli-Paket nicht verfügbar. Verwenden Sie die vom HBA-Anbieter bereitgestellten externen Skripts zur automatischen Verbindung.
-
Round-Robin-Lastverteilung ist für NVMe-Multipathing nicht standardmäßig aktiviert. Um diese Funktionalität zu aktivieren, schreiben Sie eine udev-Regel.
Schritt 1: Installieren Sie die Oracle Linux- und NVMe-Software und überprüfen Sie Ihre Konfiguration.
Gehen Sie wie folgt vor, um die minimal unterstützten Oracle Linux 7.x Softwareversionen zu überprüfen.
-
Installieren Sie Oracle Linux 7.x auf dem Server. Nach Abschluss der Installation überprüfen Sie, ob Sie den angegebenen Oracle Linux 7.x-Kernel verwenden.
uname -rBeispiel einer Oracle Linux-Kernelversion:
5.4.17-2011.6.2.el7uek.x86_64
-
Installieren Sie den
nvme-cliPaket:rpm -qa | grep nvme-cliDas folgende Beispiel zeigt eine
nvme-cliPaketversion:nvme-cli-1.8.1-3.el7.x86_64
-
Fügen Sie die folgende Zeichenkette als separate udev-Regel hinzu für
/lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rulesDie Dies ermöglicht Round-Robin-Lastverteilung für NVMe-Multipath.cat /lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rules Enable round-robin for NetApp ONTAP ACTION=="add", SUBSYSTEMS=="nvme-subsystem", ATTRS{model}=="NetApp ONTAP Controller", ATTR{iopolicy}="round-robin" -
Überprüfen Sie auf dem Oracle Linux 7.x-Host die
hostnqnZeichenkette bei/etc/nvme/hostnqn:cat /etc/nvme/hostnqnDas folgende Beispiel zeigt eine
hostnqnVersion:nqn.2014-08.org.nvmexpress:uuid:497ad959-e6d0-4987-8dc2-a89267400874
-
Überprüfen Sie im ONTAP System, ob
hostnqnDie Zeichenkette stimmt mit derhostnqnZeichenkette für das entsprechende Subsystem im ONTAP -Speichersystem:*> vserver nvme subsystem host show -vserver vs_nvme_10Beispiel anzeigen
Vserver Subsystem Host NQN ------- --------- -------------------------------------- ----------- ol_157_nvme_ss_10_0 nqn.2014-08.org.nvmexpress:uuid:497ad959-e6d0-4987-8dc2-a89267400874
Wenn die hostnqnZeichenfolgen nicht übereinstimmen, verwenden Sie den Befehl,vserver modifyum die Zeichenfolge auf dem entsprechenden ONTAP-Array-Subsystem zu aktualisierenhostnqn, damit sie mit derhostnqnZeichenfolge/etc/nvme/hostnqnauf dem Host übereinstimmt. -
Starten Sie den Host neu.
Schritt 2: NVMe/FC konfigurieren
Konfigurieren Sie NVMe/FC für einen Broadcom/Emulex-Adapter.
-
Stellen Sie sicher, dass Sie das unterstützte Adaptermodell verwenden:
-
Zeigen Sie die Modellnamen an:
cat /sys/class/scsi_host/host*/modelnameDie folgende Ausgabe sollte angezeigt werden:
LPe32002-M2 LPe32002-M2
-
Zeigen Sie die Modellbeschreibungen an:
cat /sys/class/scsi_host/host*/modeldescSie sollten eine Ausgabe ähnlich dem folgenden Beispiel sehen:
Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
-
-
Stellen Sie sicher, dass die
lpfc_enable_fc4_typeEinstellung auf „3“ eingestellt ist:cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type -
Installieren Sie die empfohlenen LPFC-Auto-Connect-Skripte:
rpm -ivh nvmefc-connect-12.8.264.0-1.noarch.rpm -
Überprüfen Sie, ob die Skripte für die automatische Verbindung installiert sind:
rpm -qa | grep nvmefcDie folgende Ausgabe sollte angezeigt werden:
nvmefc-connect-12.8.264.0-1.noarch
-
Überprüfen Sie, ob Ihre Initiator-Ports online sind:
-
Den Portnamen anzeigen:
cat /sys/class/fc_host/host*/port_nameDie folgende Ausgabe sollte angezeigt werden:
0x10000090fae0ec61 0x10000090fae0ec62
-
Den Portnamen anzeigen:
cat /sys/class/fc_host/host*/port_stateDie folgende Ausgabe sollte angezeigt werden:
Online Online
-
-
Vergewissern Sie sich, dass die NVMe/FC-Initiator-Ports aktiviert sind und die Ziel-Ports sichtbar sind:
cat /sys/class/scsi_host/host*/nvme_infoBeispiel anzeigen
NVME Initiator Enabled XRI Dist lpfc0 Total 6144 NVME 2947 SCSI 2947 ELS 250 NVME LPORT lpfc0 WWPN x10000090fae0ec61 WWNN x20000090fae0ec61 DID x012000 ONLINE NVME RPORT WWPN x202d00a098c80f09 WWNN x202c00a098c80f09 DID x010201 TARGET DISCSRVC ONLINE NVME RPORT WWPN x203100a098c80f09 WWNN x202c00a098c80f09 DID x010601 TARGET DISCSRVC ONLINE
Schritt 3: Optional: Aktivieren Sie 1 MB I/O für NVMe/FC.
ONTAP meldet in den Identify Controller-Daten eine maximale Datenübertragungsgröße (MDTS) von 8. Dies bedeutet, dass die maximale E/A-Anforderungsgröße bis zu 1 MB betragen kann. Um E/A-Anfragen der Größe 1 MB für einen Broadcom NVMe/FC-Host auszugeben, sollten Sie die lpfc Wert des lpfc_sg_seg_cnt Parameter vom Standardwert 64 auf 256.
|
|
Diese Schritte gelten nicht für Qlogic NVMe/FC-Hosts. |
-
Setzen Sie den
lpfc_sg_seg_cntParameter auf 256:cat /etc/modprobe.d/lpfc.confSie sollten eine Ausgabe ähnlich dem folgenden Beispiel sehen:
options lpfc lpfc_sg_seg_cnt=256
-
Führen Sie den Befehl aus
dracut -f, und starten Sie den Host neu. -
Stellen Sie sicher, dass der Wert für
lpfc_sg_seg_cnt256 lautet:cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt
Schritt 4: Überprüfen Sie die Multipathing-Konfiguration
Vergewissern Sie sich, dass der in-Kernel-Multipath-Status, der ANA-Status und die ONTAP-Namespaces für die NVMe-of-Konfiguration richtig sind.
-
Vergewissern Sie sich, dass das in-Kernel NVMe Multipath aktiviert ist:
cat /sys/module/nvme_core/parameters/multipathDie folgende Ausgabe sollte angezeigt werden:
Y
-
Vergewissern Sie sich, dass die entsprechenden NVMe-of-Einstellungen (z. B. auf NetApp ONTAP-Controller gesetzt auf Modell und Load-Balancing-IOpolicy auf Round-Robin eingestellt) für die jeweiligen ONTAP-Namespaces den Host korrekt widerspiegeln:
-
Zeigen Sie die Subsysteme an:
cat /sys/class/nvme-subsystem/nvme-subsys*/modelDie folgende Ausgabe sollte angezeigt werden:
NetApp ONTAP Controller NetApp ONTAP Controller
-
Zeigen Sie die Richtlinie an:
cat /sys/class/nvme-subsystem/nvme-subsys*/iopolicyDie folgende Ausgabe sollte angezeigt werden:
round-robin round-robin
-
-
Überprüfen Sie, ob die Namespaces auf dem Host erstellt und richtig erkannt wurden:
nvme listBeispiel anzeigen
Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ----------------------- /dev/nvme0n1 80BADBKnB/JvAAAAAAAC NetApp ONTAP Controller 1 53.69 GB / 53.69 GB 4 KiB + 0 B FFFFFFFF
-
Überprüfen Sie, ob der Controller-Status jedes Pfads aktiv ist und den korrekten ANA-Status aufweist:
nvme list-subsys /dev/nvme0n1Beispiel anzeigen
Nvme-subsysf0 – NQN=nqn.1992-08.com.netapp:sn.341541339b9511e8a9b500a098c80f09:subsystem.ol_157_nvme_ss_10_0 \ +- nvme0 fc traddr=nn-0x202c00a098c80f09:pn-0x202d00a098c80f09 host_traddr=nn-0x20000090fae0ec61:pn-0x10000090fae0ec61 live optimized +- nvme1 fc traddr=nn-0x207300a098dfdd91:pn-0x207600a098dfdd91 host_traddr=nn-0x200000109b1c1204:pn-0x100000109b1c1204 live inaccessible +- nvme2 fc traddr=nn-0x207300a098dfdd91:pn-0x207500a098dfdd91 host_traddr=nn-0x200000109b1c1205:pn-0x100000109b1c1205 live optimized +- nvme3 fc traddr=nn-0x207300a098dfdd91:pn-0x207700a098dfdd91 host traddr=nn-0x200000109b1c1205:pn-0x100000109b1c1205 live inaccessible
-
Vergewissern Sie sich, dass das NetApp Plug-in für jedes ONTAP Namespace-Gerät die richtigen Werte anzeigt:
Spaltenvme netapp ontapdevices -o columnBeispiel anzeigen
Device Vserver Namespace Path NSID UUID Size ------- -------- ------------------------- ------ ----- ----- /dev/nvme0n1 vs_nvme_10 /vol/rhel_141_vol_10_0/ol_157_ns_10_0 1 55baf453-f629-4a18-9364-b6aee3f50dad 53.69GB
JSONnvme netapp ontapdevices -o jsonBeispiel anzeigen
{ "ONTAPdevices" : [ { Device" : "/dev/nvme0n1", "Vserver" : "vs_nvme_10", "Namespace_Path" : "/vol/rhel_141_vol_10_0/ol_157_ns_10_0", "NSID" : 1, "UUID" : "55baf453-f629-4a18-9364-b6aee3f50dad", "Size" : "53.69GB", "LBA_Data_Size" : 4096, "Namespace_Size" : 13107200 } ]
Schritt 5: Überprüfen der bekannten Probleme
Es sind keine Probleme bekannt.