Skip to main content
ONTAP SAN Host Utilities
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

NVMe/FC-Hostkonfiguration für RHEL 8.2 mit ONTAP

Beitragende netapp-cplumer netapp-ranuk netapp-sarajane netapp-pcarriga netapp-aoife netapp-aherbin

Ab ONTAP 9.6 wird NVMe/FC für Red hat Enterprise Linux (RHEL) 8.2 unterstützt. Auf dem RHEL 8.2 Host werden sowohl NVMe- als auch SCSI-Datenverkehr über dieselben FC-Initiator-Adapter-Ports (Fibre Channel) ausgeführt. Eine Liste der unterstützten FC-Adapter und Controller finden Sie im "Hardware Universe" .

Die aktuelle Liste der unterstützten Konfigurationen finden Sie im"Interoperabilitäts-Matrix-Tool".

Funktionen

  • Ab RHEL 8.2 nvme-fc auto-connect sind Skripte im nativen Paket enthalten nvme-cli. Sie können diese nativen automatischen Verbindungsskripte verwenden, anstatt die von einem externen Anbieter bereitgestellten autom. Verbindungsskripte installieren zu müssen.

  • Ab RHEL 8.2, einem nativen udev Regel ist bereits als Teil des angegeben nvme-cli Paket, das Lastverteilung für NVMe Multipath nach dem Round Robin-Verfahren ermöglicht Sie müssen diese Regel nicht mehr manuell erstellen (wie in RHEL 8.1 ausgeführt).

  • Ab RHEL 8.2 können sowohl NVMe- als auch SCSI-Datenverkehr auf demselben Host ausgeführt werden. Dies ist die erwartete bereitgestellte Hostkonfiguration. Daher können Sie bei SCSI wie gewohnt für SCSI-LUNs konfigurieren dm-multipath, die zu Geräten führen mpath, während mit NVMe Multipath die NVMe-of Multipath-Geräte auf dem Host konfiguriert werden können.

  • Ab RHEL 8.2 ist das NetApp-Plug-in im nativen System integriert nvme-cli Das Paket kann ONTAP-Details für ONTAP-Namespaces anzeigen.

Bekannte Einschränkungen

  • Für RHEL 8.2 ist NVMe Multipath im Kernel standardmäßig deaktiviert. Deshalb müssen Sie sie manuell aktivieren.

  • Das Booten von SAN über das NVMe-of-Protokoll wird derzeit nicht unterstützt.

Aktivieren Sie das Booten über SAN

Sie können Ihren Host so konfigurieren, dass er SAN-Booting verwendet, um die Bereitstellung zu vereinfachen und die Skalierbarkeit zu verbessern.

Bevor Sie beginnen

Überprüfen Sie mithilfe des"Interoperabilitäts-Matrix-Tool", ob Ihr Linux-Betriebssystem, Ihr Host Bus Adapter (HBA), die HBA-Firmware, das HBA-Boot-BIOS und die ONTAP-Version das Booten über das SAN unterstützen.

Schritte
  1. Erstellen Sie einen SAN-Boot-Namespace und ordnen Sie ihn dem Host zu.

  2. Aktivieren Sie das SAN-Booten im Server-BIOS für die Ports, denen die SAN-Boot-LUN zugeordnet ist.

    Informationen zum Aktivieren des HBA-BIOS finden Sie in der anbieterspezifischen Dokumentation.

  3. Überprüfen Sie, ob die Konfiguration erfolgreich war, indem Sie den Host neu starten und überprüfen, ob das Betriebssystem ausgeführt wird.

NVMe/FC aktivieren

Wie folgt vorgehen, um NVMe/FC zu aktivieren.

Schritte
  1. Installieren Sie Red hat Enterprise Linux 8.2 GA auf dem Server.

  2. Wenn Sie ein Upgrade von RHEL 8.1 auf RHEL 8.2 mit durchführen yum update/upgrade, Ihr /etc/nvme/host* Dateien können verloren gehen. Um den Dateiverlust zu vermeiden, gehen Sie wie folgt vor:

    1. Sichern Sie Ihre Daten /etc/nvme/host* Dateien:

    2. Wenn Sie eine manuelle Bearbeitung haben udev Regel entfernen:

      /lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rules
    3. Führen Sie das Upgrade durch.

    4. Führen Sie nach Abschluss des Upgrades den folgenden Befehl aus:

      yum remove nvme-cli
    5. Stellen Sie die Host-Dateien unter wieder her /etc/nvme/.

      yum install nvmecli
    6. Kopieren Sie das Original /etc/nvme/host* Inhalt vom Backup zu den eigentlichen Host-Dateien unter /etc/nvme/.

  3. Überprüfen Sie nach Abschluss der Installation, ob Sie den angegebenen Red hat Enterprise Linux-Kernel ausführen.

    # uname -r
    4.18.0-193.el8.x86_64

    Die aktuelle Liste der unterstützten Versionen finden Sie im"Interoperabilitäts-Matrix-Tool".

  4. Installieren Sie das nvme-cli-Paket.

    # rpm -qa|grep nvme-cli
    nvme-cli-1.9.5.el8.x86_64
  5. NVMe Multipath im Kernel aktivieren

    # grubby –args=nvme_core.multipath=Y –update-kernel /boot/vmlinuz-4.18.0-193.el8.x86_64
  6. Überprüfen Sie auf dem RHEL 8.2-Host die NQN-Hostzeichenfolge unter /etc/nvme/hostnqn Und überprüfen Sie, ob es mit der NQN-Zeichenfolge des Hosts für das entsprechende Subsystem auf dem ONTAP-Array übereinstimmt.

    # cat /etc/nvme/hostnqn
    nqn.2014-08.org.nvmexpress:uuid:9ed5b327-b9fc-4cf5-97b3-1b5d986345d1
    
    
    ::> vserver nvme subsystem host show -vserver vs_fcnvme_141
    Vserver      Subsystem        Host           NQN
    ----------- --------------- ----------- ---------------
      vs_fcnvme_141
        nvme_141_1
            nqn.2014-08.org.nvmexpress:uuid:9ed5b327-b9fc-4cf5-97b3-1b5d986345d1

    Wenn die Host-NQN-Strings nicht übereinstimmen, verwenden Sie den vserver modify Befehl zum Aktualisieren der Host-NQN-Zeichenfolge auf dem entsprechenden ONTAP-Array-Subsystem, um mit der Host-NQN-Zeichenfolge von zu übereinstimmen /etc/nvme/hostnqn Auf dem Host.

  7. Starten Sie den Host neu.

  8. Aktualisieren Sie die enable_foreign Einstellung (optional).

    Wenn Sie sowohl NVMe- als auch SCSI-Datenverkehr auf demselben RHEL 8.2 Host ausführen möchten, empfiehlt NetApp die Verwendung von NVMe Multipath im Kernel für ONTAP-Namespaces bzw. dm-Multipath für ONTAP-LUNs. Sie sollten auch die ONTAP-Namespaces in dm-Multipath auf eine Blacklist setzen, um zu verhindern, dass dm-Multipath diese Namespace-Geräte beansprucht. Sie können dies tun, indem Sie die Einstellung wie unten gezeigt zum /etc/multipath.conf hinzufügen enable_foreign.

    # cat /etc/multipath.conf
    defaults {
       enable_foreign NONE
    }
  9. Starten Sie den Multipathd-Daemon neu, indem Sie ein ausführen systemctl restart multipathd.

Konfigurieren Sie den Broadcom FC-Adapter für NVMe/FC

Sie können den Broadcom-FC-Adapter wie folgt konfigurieren.

Die aktuelle Liste der unterstützten Adapter finden Sie im "Interoperabilitäts-Matrix-Tool".

Schritte
  1. Vergewissern Sie sich, dass Sie den unterstützten Adapter verwenden.

    # cat /sys/class/scsi_host/host*/modelname
    LPe32002-M2
    LPe32002-M2
    # cat /sys/class/scsi_host/host*/modeldesc
    Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
    Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
  2. Verifizieren Sie das lpfc_enable_fc4_type Wird auf „3“ gesetzt.

    # cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type
    3
  3. Überprüfen Sie, ob die Initiator-Ports aktiv sind und die Ziel-LIFs sehen können.

    # cat /sys/class/fc_host/host*/port_name
    0x100000109b1c1204
    0x100000109b1c1205
    # cat /sys/class/fc_host/host*/port_state
    Online
    Online
    # cat /sys/class/scsi_host/host*/nvme_info
    NVME Initiator Enabled
    XRI Dist lpfc0 Total 6144 IO 5894 ELS 250
    NVME LPORT lpfc0 WWPN x100000109b1c1204 WWNN x200000109b1c1204 DID x011d00 ONLINE
    NVME RPORT WWPN x203800a098dfdd91 WWNN x203700a098dfdd91 DID x010c07 TARGET DISCSRVC ONLINE
    NVME RPORT WWPN x203900a098dfdd91 WWNN x203700a098dfdd91 DID x011507 TARGET DISCSRVC ONLINE
    NVME Statistics
    LS: Xmt 0000000f78 Cmpl 0000000f78 Abort 00000000
    LS XMIT: Err 00000000 CMPL: xb 00000000 Err 00000000
    Total FCP Cmpl 000000002fe29bba Issue 000000002fe29bc4 OutIO 000000000000000a
    abort 00001bc7 noxri 00000000 nondlp 00000000 qdepth 00000000 wqerr 00000000 err 00000000
    FCP CMPL: xb 00001e15 Err 0000d906
    NVME Initiator Enabled
    XRI Dist lpfc1 Total 6144 IO 5894 ELS 250
    NVME LPORT lpfc1 WWPN x100000109b1c1205 WWNN x200000109b1c1205 DID x011900 ONLINE
    NVME RPORT WWPN x203d00a098dfdd91 WWNN x203700a098dfdd91 DID x010007 TARGET DISCSRVC ONLINE
    NVME RPORT WWPN x203a00a098dfdd91 WWNN x203700a098dfdd91 DID x012a07 TARGET DISCSRVC ONLINE
    NVME Statistics
    LS: Xmt 0000000fa8 Cmpl 0000000fa8 Abort 00000000
    LS XMIT: Err 00000000 CMPL: xb 00000000 Err 00000000
    Total FCP Cmpl 000000002e14f170 Issue 000000002e14f17a OutIO 000000000000000a
    abort 000016bb noxri 00000000 nondlp 00000000 qdepth 00000000 wqerr 00000000 err 00000000
    FCP CMPL: xb 00001f50 Err 0000d9f8
  4. 1 MB I/O-Größe _ (optional)_ aktivieren.

    Der lpfc_sg_seg_cnt Parameter muss auf 256 gesetzt werden, damit der lpfc-Treiber E/A-Anfragen mit einer Größe von bis zu 1 MB ausgeben kann.

    # cat /etc/modprobe.d/lpfc.conf
    options lpfc lpfc_sg_seg_cnt=256
  5. Führen Sie den Befehl aus dracut -f und starten Sie den Host neu.

  6. Nachdem der Host gestartet wurde, vergewissern Sie sich, dass lpfc_sg_seg_cnt auf 256 eingestellt ist.

    # cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt
    256
  7. Stellen Sie sicher, dass Sie die empfohlene Broadcom lpfc-Firmware sowie den Inbox-Treiber verwenden.

    # cat /sys/class/scsi_host/host*/fwrev
    12.6.182.8, sli-4:2:c
    12.6.182.8, sli-4:2:c
    # cat /sys/module/lpfc/version
    0:12.6.0.2
  8. Verifizieren Sie das lpfc_enable_fc4_type Wird auf „3“ gesetzt.

    # cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type
    3
  9. Überprüfen Sie, ob die Initiator-Ports aktiv sind und die Ziel-LIFs sehen können.

    # cat /sys/class/fc_host/host*/port_name
    0x100000109b1c1204
    0x100000109b1c1205
    # cat /sys/class/fc_host/host*/port_state
    Online
    Online
    # cat /sys/class/scsi_host/host*/nvme_info
    NVME Initiator Enabled
    XRI Dist lpfc0 Total 6144 IO 5894 ELS 250
    NVME LPORT lpfc0 WWPN x100000109b1c1204 WWNN x200000109b1c1204 DID x011d00 ONLINE
    NVME RPORT WWPN x203800a098dfdd91 WWNN x203700a098dfdd91 DID x010c07 TARGET DISCSRVC ONLINE
    NVME RPORT WWPN x203900a098dfdd91 WWNN x203700a098dfdd91 DID x011507 TARGET DISCSRVC ONLINE
    NVME Statistics
    LS: Xmt 0000000f78 Cmpl 0000000f78 Abort 00000000
    LS XMIT: Err 00000000 CMPL: xb 00000000 Err 00000000
    Total FCP Cmpl 000000002fe29bba Issue 000000002fe29bc4 OutIO 000000000000000a
    abort 00001bc7 noxri 00000000 nondlp 00000000 qdepth 00000000 wqerr 00000000 err 00000000
    FCP CMPL: xb 00001e15 Err 0000d906
    NVME Initiator Enabled
    XRI Dist lpfc1 Total 6144 IO 5894 ELS 250
    NVME LPORT lpfc1 WWPN x100000109b1c1205 WWNN x200000109b1c1205 DID x011900 ONLINE
    NVME RPORT WWPN x203d00a098dfdd91 WWNN x203700a098dfdd91 DID x010007 TARGET DISCSRVC ONLINE
    NVME RPORT WWPN x203a00a098dfdd91 WWNN x203700a098dfdd91 DID x012a07 TARGET DISCSRVC ONLINE
    NVME Statistics
    LS: Xmt 0000000fa8 Cmpl 0000000fa8 Abort 00000000
    LS XMIT: Err 00000000 CMPL: xb 00000000 Err 00000000
    Total FCP Cmpl 000000002e14f170 Issue 000000002e14f17a OutIO 000000000000000a
    abort 000016bb noxri 00000000 nondlp 00000000 qdepth 00000000 wqerr 00000000 err 00000000
    FCP CMPL: xb 00001f50 Err 0000d9f8
  10. 1 MB I/O-Größe _ (optional)_ aktivieren.

    Der lpfc_sg_seg_cnt Parameter muss auf 256 gesetzt werden, damit der lpfc-Treiber E/A-Anfragen mit einer Größe von bis zu 1 MB ausgeben kann.

    # cat /etc/modprobe.d/lpfc.conf
    options lpfc lpfc_sg_seg_cnt=256
  11. Führen Sie den Befehl aus dracut -f und starten Sie den Host neu.

  12. Nachdem der Host gestartet wurde, vergewissern Sie sich, dass lpfc_sg_seg_cnt auf 256 eingestellt ist.

    # cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt
    256

NVMe/FC validieren

Folgende Verfahren stehen zur Validierung von NVMe/FC zur Verfügung:

Schritte
  1. Überprüfen Sie die folgenden NVMe/FC-Einstellungen.

    # cat /sys/module/nvme_core/parameters/multipath
    Y
    # cat /sys/class/nvme-subsystem/nvme-subsys*/model
    NetApp ONTAP Controller
    NetApp ONTAP Controller
    # cat /sys/class/nvme-subsystem/nvme-subsys*/iopolicy
    round-robin
    round-robin
  2. Vergewissern Sie sich, dass die Namespaces erstellt wurden.

    # nvme list
    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
  3. Überprüfen Sie den Status der ANA-Pfade.

    # nvme list-subsys/dev/nvme0n1
    Nvme-subsysf0 – NQN=nqn.1992-08.com.netapp:sn.341541339b9511e8a9b500a098c80f09:subsystem.rhel_141_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
  4. Überprüfen Sie das NetApp Plug-in für ONTAP Geräte.

    # nvme netapp ontapdevices -o column
    Device   Vserver  Namespace Path             NSID   UUID   Size
    -------  -------- -------------------------  ------ ----- -----
    /dev/nvme0n1   vs_nvme_10       /vol/rhel_141_vol_10_0/rhel_141_ns_10_0    1        55baf453-f629-4a18-9364-b6aee3f50dad   53.69GB
    
    # nvme netapp ontapdevices -o json
    {
       "ONTAPdevices" : [
       {
            Device" : "/dev/nvme0n1",
            "Vserver" : "vs_nvme_10",
            "Namespace_Path" : "/vol/rhel_141_vol_10_0/rhel_141_ns_10_0",
             "NSID" : 1,
             "UUID" : "55baf453-f629-4a18-9364-b6aee3f50dad",
             "Size" : "53.69GB",
             "LBA_Data_Size" : 4096,
             "Namespace_Size" : 13107200
        }
    ]