Skip to main content
ONTAP SAN Host Utilities
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.

Configurar Oracle Linux 7x con NVMe-oF para almacenamiento ONTAP

Colaboradores netapp-sarajane

Los hosts Oracle Linux admiten los protocolos NVMe sobre canal de fibra (NVMe/FC) y NVMe sobre TCP (NVMe/TCP) con acceso asimétrico al espacio de nombres (ANA). ANA proporciona una funcionalidad de múltiples rutas equivalente al acceso a unidad lógica asimétrica (ALUA) en entornos iSCSI y FCP.

Aprenda a configurar hosts NVMe over Fabrics (NVMe-oF) para Oracle Linux 7x. Para obtener más información sobre asistencia y funciones, consulte "Compatibilidad y características de Oracle Linux ONTAP".

NVMe-oF con Oracle Linux 7x tiene las siguientes limitaciones conocidas:

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

  • La compatibilidad con la utilidad de host sanlun de NetApp no ​​está disponible para NVMe-oF en un host Oracle Linux 7x. En su lugar, puede confiar en el complemento NetApp incluido en el paquete nativo. nvme-cli paquete para todos los transportes NVMe-oF.

  • Las secuencias de comandos de conexión automática NVMe/FC nativas no están disponibles en el paquete nvme-cli. Use las secuencias de comandos de conexión automática externas proporcionadas por el proveedor HBA.

  • El equilibrio de carga round-robin no está habilitado de forma predeterminada para las rutas múltiples NVMe. Para habilitar esta funcionalidad, escriba una regla udev.

Paso 1: Instale el software Oracle Linux y NVMe y verifique su configuración

Utilice el siguiente procedimiento para validar las versiones mínimas compatibles del software Oracle Linux 7x.

Pasos
  1. Instalar Oracle Linux 7x en el servidor. Una vez completada la instalación, verifique que esté ejecutando el kernel Oracle Linux 7x especificado.

    uname -r

    Ejemplo de versión del kernel de Oracle Linux:

    5.4.17-2011.6.2.el7uek.x86_64
  2. Instale el nvme-cli paquete:

    rpm -qa | grep nvme-cli

    El siguiente ejemplo muestra un nvme-cli versión del paquete:

    nvme-cli-1.8.1-3.el7.x86_64
  3. Agregue la siguiente cadena como una regla udev separada para /lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rules . Esto permite el equilibrio de carga por turnos para rutas múltiples NVMe.

    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"
  4. En el host Oracle Linux 7x, verifique la hostnqn cuerda en /etc/nvme/hostnqn :

    cat /etc/nvme/hostnqn

    El siguiente ejemplo muestra un hostnqn versión:

    nqn.2014-08.org.nvmexpress:uuid:497ad959-e6d0-4987-8dc2-a89267400874
  5. En el sistema ONTAP , verifique que hostnqn La cadena coincide con la hostnqn cadena para el subsistema correspondiente en el sistema de almacenamiento ONTAP :

    *> vserver nvme subsystem host show -vserver vs_nvme_10
    Muestra el ejemplo
    Vserver Subsystem Host NQN
    ------- --------- -------------------------------------- -----------
    ol_157_nvme_ss_10_0
    nqn.2014-08.org.nvmexpress:uuid:497ad959-e6d0-4987-8dc2-a89267400874
    Nota Si hostnqn las cadenas no coinciden, use vserver modify el comando para actualizar la hostnqn cadena en el subsistema de cabina ONTAP correspondiente a fin de que coincida con la hostnqn cadena del /etc/nvme/hostnqn host.
  6. Reinicie el host.

Paso 2: Configurar NVMe/FC

Configuración de NVMe/FC para un adaptador Broadcom/Emulex.

  1. Compruebe que está utilizando el modelo de adaptador compatible:

    1. Mostrar los nombres de los modelos:

      cat /sys/class/scsi_host/host*/modelname

      Debe ver la siguiente salida:

      LPe32002-M2
      LPe32002-M2
    2. Mostrar las descripciones del modelo:

      cat /sys/class/scsi_host/host*/modeldesc

      Debería ver un resultado similar al siguiente ejemplo:

    Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
    Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
  2. Compruebe que lpfc_enable_fc4_type está configurado en «3»:

    cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type
  3. Instale los scripts de conexión automática lpfc recomendados:

    rpm -ivh nvmefc-connect-12.8.264.0-1.noarch.rpm
  4. Verifique que los scripts de conexión automática estén instalados:

    rpm -qa | grep nvmefc

    Debe ver la siguiente salida:

    nvmefc-connect-12.8.264.0-1.noarch
  5. Compruebe que los puertos de iniciador estén en línea:

    1. Mostrar el nombre del puerto:

      cat /sys/class/fc_host/host*/port_name

      Debe ver la siguiente salida:

      0x10000090fae0ec61
      0x10000090fae0ec62
    2. Mostrar el nombre del puerto:

      cat /sys/class/fc_host/host*/port_state

      Debe ver la siguiente salida:

    Online
    Online
  6. Compruebe que los puertos de iniciador NVMe/FC estén habilitados y que los puertos de destino estén visibles:

    cat /sys/class/scsi_host/host*/nvme_info
    Muestra el ejemplo
    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

Paso 3: Opcionalmente, habilite 1 MB de E/S para NVMe/FC

ONTAP informa un tamaño máximo de transferencia de datos (MDTS) de 8 en los datos del controlador de identificación. Esto significa que el tamaño máximo de solicitud de E/S puede ser de hasta 1 MB. Para emitir solicitudes de E/S de tamaño 1 MB para un host Broadcom NVMe/FC, debe aumentar el lpfc valor de la lpfc_sg_seg_cnt parámetro a 256 desde el valor predeterminado de 64.

Nota Estos pasos no se aplican a los hosts Qlogic NVMe/FC.
Pasos
  1. Defina el lpfc_sg_seg_cnt parámetro en 256:

    cat /etc/modprobe.d/lpfc.conf

    Debería ver un resultado similar al siguiente ejemplo:

    options lpfc lpfc_sg_seg_cnt=256
  2. Ejecute dracut -f el comando y reinicie el host.

  3. Compruebe que el valor de lpfc_sg_seg_cnt es 256:

    cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt

Paso 4: Verificar la configuración de rutas múltiples

Verifique que el estado de multivía de NVMe en kernel, el estado de ANA y los espacios de nombres de ONTAP sean correctos para la configuración de NVMe-oF.

Pasos
  1. Compruebe que la multivía NVMe en kernel esté habilitada:

    cat /sys/module/nvme_core/parameters/multipath

    Debe ver la siguiente salida:

    Y
  2. Compruebe que la configuración NVMe-oF adecuada (como, por ejemplo, el modelo configurado en la controladora NetApp ONTAP y la política de balanceo de carga establecida en round-robin) en los respectivos espacios de nombres de ONTAP se reflejen correctamente en el host:

    1. Mostrar los subsistemas:

      cat /sys/class/nvme-subsystem/nvme-subsys*/model

      Debe ver la siguiente salida:

      NetApp ONTAP Controller
      NetApp ONTAP Controller
    2. Mostrar la política:

      cat /sys/class/nvme-subsystem/nvme-subsys*/iopolicy

      Debe ver la siguiente salida:

    round-robin
    round-robin
  3. Verifique que los espacios de nombres se hayan creado y detectado correctamente en el host:

    nvme list
    Muestra el ejemplo
    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
  4. Compruebe que el estado de la controladora de cada ruta sea activo y que tenga el estado de ANA correcto:

    nvme list-subsys /dev/nvme0n1
    Muestra el ejemplo
    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
  5. Confirmar que el complemento de NetApp muestra los valores correctos para cada dispositivo de espacio de nombres ONTAP:

    Columna
    nvme netapp ontapdevices -o column
    Muestra el ejemplo
    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
    JSON
    nvme netapp ontapdevices -o json
    Muestra el ejemplo
    {
       "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
        }
    ]

Paso 5: Revisar los problemas conocidos

No hay problemas conocidos.