El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe el proceso de configuración de la profundidad de cola máxima y la entrada/salida pendiente (IO) en un controlador nativo de tarjeta de interfaz de red de canal de fibra (nfnic). En el hipervisor VMware ESXi 6.7, el controlador de tarjeta de interfaz de red (fnic) de canal de fibra se reemplazó por el controlador nfnic para todos los adaptadores de Cisco.
La profundidad de cola predeterminada del controlador nfnic se establece en 32 y en todas las versiones iniciales del controlador nfnic no hay manera de ajustar la profundidad de la cola nfnic. Esto limita todas las Profundidades Máximas de Cola de Dispositivos y las Solicitudes de Número de Programación de Disco Pendientes a 32. También ha causado problemas al utilizar los volúmenes virtuales de vSphere, ya que la profundidad de cola recomendada es de 128. Los efectos de este límite también se pueden ver en cualquier VM que experimente una carga de trabajo mayor y requiera una profundidad de cola mayor en general.
Contribuidos por Michael Baba, Josh Good y Alejandro Marino; Ingenieros del TAC de Cisco.
Mejora creada para agregar la capacidad de configurar el parámetro de profundidad de cola: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo09082
A partir de la versión 4.0.0.35 del controlador nfnic, puede ajustar "lun_queue_depth_per_path" a través de la interfaz de línea de comandos (CLI) de ESXi. Esta versión del controlador se puede instalar manualmente en el host ESXi si aún no está en él.
El controlador nfnic 4.0.0.35 se puede encontrar en el paquete de firmware de servidor blade UCS 4.0.4 y también se puede descargar por separado de VMware. Debe consultar la página Compatibilidad de hardware y software de UCS para obtener el controlador recomendado más reciente para su combinación específica de hardware y software.
Para verificar la versión instalada actualmente del controlador nfnic, ejecute:
esxcli software vib list | grep nfnic
Debería ver algo como:
[root@localhost:~] esxcli software vib list | grep nfnic nfnic 4.0.0.14-1OEM.670.1.28.10302608 Cisco VMwareCertified 2019-08-24 [root@localhost:~]
Si no ve ningún resultado, actualmente no tiene instalado el controlador nfnic. Consulte la página Compatibilidad de hardware y software de UCS para comprobar si su configuración debe utilizar el controlador nfnic o fnic.
Las instrucciones detalladas para instalar los controladores más recientes están fuera del alcance de esta guía. Consulte Instalación del controlador UCS para sistemas operativos comunes o la documentación de VMware para obtener instrucciones paso a paso para actualizar el controlador. Una vez actualizado el controlador, puede utilizar los mismos comandos anteriores para verificar la versión.
Una vez instalado el controlador correcto, podemos verificar que los parámetros del módulo estén disponibles para configurarlos con:
esxcli system module parameters list -m nfnic
Podemos ver en este resultado que el valor predeterminado está establecido en 32, sin embargo, podemos configurar cualquier valor entre 1 y 1024. Si utiliza Volúmenes virtuales vSphere, se recomienda establecer este valor en 128. Recomendamos ponerse en contacto con VMware y su proveedor de almacenamiento para obtener otras recomendaciones específicas.
Ejemplo de Salida:
[root@localhost:~] esxcli system module parameters list -m nfnic Name Type Value Description ------------------------ ----- ----- -------------------------------------------------------------- lun_queue_depth_per_path ulong nfnic lun queue depth per path: Default = 32. Range [1 - 1024] [root@localhost:~]
Para cambiar el parámetro Queue Depth (Profundidad de cola), el comando se muestra a continuación. En el siguiente ejemplo lo estamos cambiando a 128, pero su valor puede ser diferente según su entorno.
esxcli system module parameters set -m nfnic -p lun_queue_depth_per_path=128
Utilizando el mismo comando que el anterior, podemos configurar que se ha realizado el cambio:
[root@localhost:~] esxcli system module parameters list -m nfnic Name Type Value Description ------------------------ ----- ----- -------------------------------------------------------------- lun_queue_depth_per_path ulong 128 nfnic lun queue depth per path: Default = 32. Range [1 - 1024] [root@localhost:~]
Ahora podemos configurar los E/S pendientes en el punto final del protocolo para que coincidan con la profundidad de cola anterior (en nuestro ejemplo, 128) y luego verificar para asegurarse de que ambos valores han cambiado a 128.
NOTE: Es posible que deba reiniciar el host antes de que se pueda realizar este cambio de configuración.
Para cambiar la profundidad de cola de un dispositivo específico:
esxcli storage core device set -O 128 -d naa.xxxxxxxxx
Para encontrar el ID del dispositivo puede utilizar el siguiente comando:
esxcli storage core device list
Para confirmar los cambios para un dispositivo específico:
esxcli storage core device list -d naa.xxxxxxxxxx
Un ejemplo con resultado. Podemos ver que la "Profundidad máxima de cola de dispositivos" y "Número de E/S sobresalientes con mundos de la competencia" siguen siendo 32.
[root@localhost:~] esxcli storage core device list -d naa.600a09803830462d803f4c6e68664e2d naa.600a09803830462d803f4c6e68664e2d Display Name: VMWare_SAS_STG_01 Has Settable Display Name: true Size: 2097152 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/naa.600a09803830462d803f4c6e68664e2d Vendor: NETAPP ...snip for length... Is Boot Device: false Device Max Queue Depth: 32 No of outstanding IOs with competing worlds: 32 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false
Ahora lo cambiamos a 128 para este dispositivo
esxcli storage core device set -O 128 -d naa.600a09803830462d803f4c6e68664e2d
Y al comprobar el mismo resultado, podemos ver "Profundidad máxima de cola de dispositivos" y "Número de E/S sobresalientes con mundos competidores": ambos son ahora 128. Si los cambios no se reflejan inmediatamente, es posible que sea necesario reiniciar el host ESXi.
[root@localhost:~] esxcli storage core device list -d naa.600a09803830462d803f4c6e68664e2d naa.600a09803830462d803f4c6e68664e2d Display Name: VMWare_SAS_STG_01 Has Settable Display Name: true Size: 2097152 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/naa.600a09803830462d803f4c6e68664e2d Vendor: NETAPP ...snip for length... Is Boot Device: false Device Max Queue Depth: 128 No of outstanding IOs with competing worlds: 128 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false