Configuración de host de NVMe/FC para RHEL 8,2 con ONTAP
NVMe/FC es compatible con ONTAP 9,6 o posterior para Red Hat Enterprise Linux (RHEL) 8,2. El host de RHEL 8.2 ejecuta tráfico NVMe y SCSI a través de los mismos puertos de adaptador de iniciador de Fibre Channel (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.
Funciones
-
A partir de RHEL 8,2,
nvme-fc auto-connect
los scripts se incluyen en el paquete nativonvme-cli
. Puede utilizar estos scripts nativos de conexión automática en lugar de tener que instalar los scripts de conexión automática proporcionados por el proveedor externo. -
A partir de RHEL 8,2, un nativo
udev
la regla ya se proporciona como parte de lanvme-cli
Paquete que permite el equilibrio de carga por turnos para NVMe multivía. No es necesario crear esta regla de forma manual ya (como se hizo en RHEL 8.1). -
A partir de RHEL 8,2, tanto el tráfico NVMe como SCSI se pueden ejecutar en el mismo host coexistente. De hecho, esta es la configuración de host desplegada esperada. Por lo tanto, para SCSI, puede configurar
dm-multipath
Como es habitual en LUN de SCSI, que dan como resultadompath
Dispositivos, mientras que NVMe multivía puede utilizarse para configurar dispositivos multivía NVMe-oF en el host. -
A partir de la versión 8,2 de RHEL, el plugin de NetApp está en el nativo
nvme-cli
El paquete puede mostrar detalles de ONTAP para espacios de nombres de ONTAP.
Limitaciones conocidas
-
Para RHEL 8,2, la multivía NVMe en kernel está deshabilitada de manera predeterminada. Por lo tanto, debe habilitarla manualmente.
-
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.
-
Instale Red Hat Enterprise Linux 8.2 GA en el servidor.
-
Si va a actualizar de RHEL 8,1 a RHEL 8,2 mediante
yum update/upgrade
, el/etc/nvme/host*
es posible que se pierdan archivos. Para evitar la pérdida del archivo, haga lo siguiente:-
Realice un backup de su
/etc/nvme/host*
archivos. -
Si ha editado manualmente
udev
regla, eliminarla:/lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rules
-
Realice la actualización.
-
Una vez finalizada la actualización, ejecute el siguiente comando:
yum remove nvme-cli
-
Restaure los archivos del host en
/etc/nvme/
.yum install nvmecli
-
Copie el original
/etc/nvme/host*
contenido del backup en los archivos de host reales en/etc/nvme/
.
-
-
Una vez finalizada la instalación, compruebe que está ejecutando el kernel de Red Hat Enterprise Linux especificado.
# uname -r 4.18.0-193.el8.x86_64
Consulte "Herramienta de matriz de interoperabilidad de NetApp" para obtener la lista más actual de versiones compatibles.
-
Instale el paquete nvme-cli.
# rpm -qa|grep nvme-cli nvme-cli-1.9.5.el8.x86_64
-
Habilite la función multivía de NVMe en el kernel.
# grubby –args=nvme_core.multipath=Y –update-kernel /boot/vmlinuz-4.18.0-193.el8.x86_64
-
En el host RHEL 8,2, compruebe la cadena NQN del host en
/etc/nvme/hostnqn
Y verifique que coincida con la cadena del host NQN para el subsistema correspondiente en la cabina de ONTAP.# 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
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 desde/etc/nvme/hostnqn
en el host. -
Reinicie el host.
-
Actualice el
enable_foreign
ajuste (opcional).Si tiene intención de ejecutar tanto tráfico NVMe como SCSI en el mismo host coexistente de RHEL 8,2, NetApp recomienda utilizar NVMe multivía in-kernel para espacios de nombres ONTAP y dm-multipath para LUN de ONTAP respectivamente. También debe incluir una lista negra de los espacios de nombres ONTAP en dm-multipath para evitar que dm-multipath reclamen estos dispositivos de espacio de nombres. Puede hacerlo añadiendo el
enable_foreign
ajuste en la/etc/multipath.conf
, como se muestra a continuación.# cat /etc/multipath.conf defaults { enable_foreign NONE }
-
Reinicie el daemon multipathd ejecutando un
systemctl restart multipathd
.
Configure el adaptador de FC de Broadcom para NVMe/FC
Puede usar el siguiente procedimiento para configurar un adaptador de FC Broadcom.
Para obtener la lista más actual de adaptadores compatibles, consulte "Herramienta de matriz de interoperabilidad de NetApp".
-
Compruebe que está utilizando el adaptador compatible.
# 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
-
Compruebe que
lpfc_enable_fc4_type
está establecido en "3".# cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type 3
-
Compruebe que los puertos del iniciador están en funcionamiento y que pueden ver las LIF de destino.
# 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
-
Activa 1 MB de tamaño de E/S (opcional).
La
lpfc_sg_seg_cnt
El parámetro debe configurarse en 256 para que el controlador lpfc emita solicitudes de E/S de hasta 1 MB de tamaño.# cat /etc/modprobe.d/lpfc.conf options lpfc lpfc_sg_seg_cnt=256
-
Ejecute
dracut -f
el comando y reinicie el host. -
Después de que se inicie el host, compruebe que lpfc_sg_seg_cnt está establecido en 256.
# cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt 256
-
Compruebe que está utilizando el firmware lpfc de Broadcom recomendado así como el controlador de bandeja de entrada.
# 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
-
Compruebe que
lpfc_enable_fc4_type
está establecido en "3".# cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type 3
-
Compruebe que los puertos del iniciador están en funcionamiento y que pueden ver las LIF de destino.
# 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
-
Activa 1 MB de tamaño de E/S (opcional).
La
lpfc_sg_seg_cnt
El parámetro debe configurarse en 256 para que el controlador lpfc emita solicitudes de E/S de hasta 1 MB de tamaño.# cat /etc/modprobe.d/lpfc.conf options lpfc lpfc_sg_seg_cnt=256
-
Ejecute
dracut -f
el comando y reinicie el host. -
Después de que se inicie el host, compruebe que lpfc_sg_seg_cnt está establecido en 256.
# cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt 256
Valide NVMe/FC
Es posible usar el siguiente procedimiento para validar NVMe/FC.
-
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
-
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
-
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
-
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 } ]