Skip to main content
SAN hosts and cloud clients
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Configuración de host de NVMe/FC para RHEL 8,1 con ONTAP

Colaboradores

NVMe/FC es compatible con ONTAP 9,6 o posterior para Red Hat Enterprise Linux (RHEL) 8,1. Un host de RHEL 8,1 puede ejecutar tráfico NVMe y SCSI a través de los mismos puertos de adaptador de iniciador FC. Consulte "Hardware Universe" Para obtener una lista de controladoras y adaptadores de FC admitidos.

Consulte "Herramienta de matriz de interoperabilidad de NetApp" para obtener la lista más actual de configuraciones compatibles.

Limitaciones conocidas

  • Los scripts nativos de conexión automática NVMe/FC no están disponibles en la nvme-cli paquete. Es posible usar el script externo de conexión automática proporcionado por el proveedor del adaptador de bus de host (HBA).

  • NVMe multipath está deshabilitado de forma predeterminada. Por lo tanto, debe habilitarla manualmente.

  • De forma predeterminada, el equilibrio de carga por turnos no está habilitado. Puede activar esta funcionalidad escribiendo un udev regla.

  • Actualmente no se admite el arranque SAN mediante el protocolo NVMe-oF.

Habilite NVMe/FC

Es posible usar el siguiente procedimiento para habilitar NVMe/FC.

Pasos
  1. Instale Red Hat Enterprise Linux 8.1 en el servidor.

  2. Una vez finalizada la instalación, compruebe que está ejecutando el kernel de RHEL especificado:

    # uname -r
    4.18.0-147.el8.x86_64

    Consulte "Herramienta de matriz de interoperabilidad de NetApp" para obtener la lista más actual de versiones compatibles.

  3. Instale el nvme-cli-1.8.1-3.el8 paquete:

    # rpm -qa|grep nvme-cli
    nvme-cli-1.8.1-3.el8.x86_64
  4. Habilitar multivía en el kernel NVMe:

    # grubby –args=nvme_core.multipath=Y –update-kernel /boot/vmlinuz-4.18.0-147.el8.x86_64
  5. Agregue la siguiente cadena como una regla udev independiente en /lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rules. Esto permite el equilibrio de carga round-robin para NVMe multivía:

    # Enable round-robin for NetApp ONTAP
    ACTION==”add”, SUBSYSTEM==”nvme-subsystem”, ATTR{model}==”NetApp ONTAP Controller”, ATTR{iopolicy}=”round-robin
  6. En el host RHEL 8,1, compruebe la cadena NQN del host en /etc/nvme/hostnqn Y compruebe que coincide con la cadena NQN del host del subsistema correspondiente en la cabina ONTAP:

    # cat /etc/nvme/hostnqn
    nqn.2014-08.org.nvmexpress:uuid:75953f3b-77fe-4e03-bf3c-09d5a156fbcd
    *> vserver nvme subsystem host show -vserver vs_nvme_10
    Vserver Subsystem Host NQN
    ------- --------- -------------------------------------- -----------
    rhel_141_nvme_ss_10_0
    nqn.2014-08.org.nvmexpress:uuid:75953f3b-77fe-4e03-bf3c-09d5a156fbcd
    Nota Si las cadenas del host NQN no coinciden, utilice vserver modify Comando para actualizar la cadena NQN del host en el subsistema de la cabina ONTAP correspondiente para que coincida con la cadena NQN del host de /etc/nvme/hostnqn en el host.
  7. Reinicie el host.

Configure el adaptador de FC de Broadcom para NVMe/FC

Puede usar el siguiente procedimiento para configurar un adaptador de FC Broadcom.

Pasos
  1. Compruebe que está utilizando el adaptador compatible. Consulte "Herramienta de matriz de interoperabilidad de NetApp" para obtener la lista más actual de adaptadores compatibles.

    # 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. Copie e instale el controlador de salida Broadcom lpfc y los scripts de conexión automática:

    # tar -xvzf elx-lpfc-dd-rhel8-12.4.243.20-ds-1.tar.gz
    # cd elx-lpfc-dd-rhel8-12.4.2453.20-ds-1
    # ./elx_lpfc_install-sh -i -n
    Nota Los controladores nativos que se incluyen con el sistema operativo se denominan controladores de la bandeja de entrada. Si descarga los controladores de la bandeja de salida (controladores que no se incluyen con una versión del sistema operativo), se incluye un script de conexión automática en la descarga y se debe instalar como parte del proceso de instalación del controlador.
  3. Reinicie el host.

  4. Compruebe que está utilizando las versiones recomendadas del firmware lpfc de Broadcom, del controlador de salida y del paquete de conexión automática:

    # cat /sys/class/scsi_host/host*/fwrev
    12.4.243.20, sil-4.2.c
    12.4.243.20, sil-4.2.c
    # cat /sys/module/lpfc/version
    0:12.4.243.20
    # rpm -qa | grep nvmefc
    nvmefc-connect-12.6.61.0-1.noarch
  5. Compruebe que lpfc_enable_fc4_type está establecido en 3:

    # cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type
    3
  6. Compruebe que los puertos del iniciador estén en funcionamiento:

    # cat /sys/class/fc_host/host*/port_name
    0x10000090fae0ec61
    0x10000090fae0ec62
    # cat /sys/class/fc_host/host*/port_state
    Online
    Online
  7. Compruebe que los puertos de iniciador NVMe/FC están habilitados y funcionando y verá cuáles son los LIF de destino:

    # cat /sys/class/scsi_host/host*/nvme_info
    NVME Initiator Enabled
    XRI Dist lpfc0 Total 6144 NVME 2947 SCSI 2977 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
    NVME Statistics
    …

Habilite un tamaño de I/o de 1 MB para Broadcom NVMe/FC

ONTAP informa de un MDT (tamaño de transferencia de MAX Data) de 8 en los datos Identify Controller, lo que significa que el tamaño máximo de solicitud de E/S puede ser de hasta 1MB. Sin embargo, para emitir solicitudes de I/O de tamaño 1 MB para un host Broadcom NVMe/FC, debe aumentar el lpfc valor del lpfc_sg_seg_cnt parámetro a 256 desde el valor predeterminado de 64.

Pasos
  1. Ajuste la lpfc_sg_seg_cnt parámetro a 256.

    # cat /etc/modprobe.d/lpfc.conf
    options lpfc lpfc_sg_seg_cnt=256
  2. Ejecute un dracut -f y reinicie el host.

  3. Compruebe que lpfc_sg_seg_cnt tiene 256.

    # cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt
    256
Nota Esto no es aplicable a los hosts Qlogic NVMe/FC.

Valide NVMe/FC

Es posible usar el siguiente procedimiento para validar NVMe/FC.

Pasos
  1. Verifique la siguiente configuración de NVMe/FC.

    # 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. Compruebe que se han creado espacios de nombres.

    # 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. Compruebe el estado de las rutas de ANA.

    # 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. Compruebe el complemento de NetApp para dispositivos ONTAP.

    # 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
        }
    ]