Actualización 01/02/2018
- Este problema se solucionó en una versión actualizada del firmware y el controlador Mellanox CX4
En un clúster hiperconvergente implementado mediante los nodos Dell EMC Microsoft Storage Spaces Direct Ready con adaptadores Dell EMC PowerEdge R740xd y Mellanox CX4 LX para el tráfico de almacenamiento, es posible que vea errores del cliente SMB (ID de evento 30803) en el visor de eventos de Windows (Registros de aplicaciones y servicios -> Microsoft -> Windows -> Cliente SMB -> Conectividad) cuando se reinicia un nodo de clúster.
Si bien esto es normal en un clúster de conmutación por error durante el reinicio de un nodo, es posible que, ocasionalmente, vea que estos errores vuelven a aparecer en los nodos del clúster en un intervalo regular, incluso después de que todos los nodos del clúster estén completamente funcionales. Este comportamiento se debe a una falla en la creación de los clientes de escucha de SMB para cada interfaz de almacenamiento en el nodo que se reinició. Estos errores aparecen en los nodos sobrevivientes del clúster y no en el nodo que se reinició. La descripción del error indica el servidor al que el cliente SMB intenta conectarse y la dirección del servidor en la descripción indica el nodo que se acaba de reiniciar.
En un estado funcional normal de los nodos del clúster, después de un reinicio del nodo, la ejecución de netstat –xan debería mostrar un cliente de escucha IPv4 e IPv6 asociado con cada interfaz de almacenamiento en el nodo. El siguiente resultado de netstat.exe se recopiló en un nodo con dos adaptadores de almacenamiento.
Conexiones activas NetworkDirect, escuchas, terminales compartidos
Mode IfIndex Type Local Address Foreign AddressPID
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:61476 0
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:62244 0
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:61988 0
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:62756 0
Conexión del kernel 4 10.128.100.101:12541 10.128.100.100:445 0
Conexión del kernel 4 10.128.100.101:12797 10.128.100.100:445 0
Conexión del kernel 4 10.128.100.101:14077 10.128.100.100:445 0
Conexión del kernel 4 10.128.100.101:14333 10.128.100.100:445 0
Conexión del kernel 14 10.128.100.133:445 10.128.100.132:27454 0
Conexión del kernel 14 10.128.100.133:445 10.128.100.132:27198 0
Conexión del kernel 14 10.128.100.133:237510.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:62535 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:62791 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:64071 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:64327 10.128.100.132:445 0
Escucha del kernel 4 [fe80::4cae:cb05:4932:f226%4]:445 NA 0
Escucha del kernel 4 10.128.100.101:445 NA 0
Escucha del kernel 14 10.128.100.133:445 NA 0
Escucha del kernel 14 [fe80::5180:55b6:c0f0:ae8d%14]:445 NA 0
Listado de salida 1: pila de SMB completamente funcional
Sin embargo, cuando comienza a ver los errores del cliente SMB en el clúster, es posible que el nodo que se reinició no tenga todos los clientes de escucha asociados con cada interfaz de almacenamiento del sistema.
Conexiones activas NetworkDirect, escuchas, terminales compartidos
Mode IfIndex Type Local Address Foreign AddressPID
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:61476 0
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:62244 0
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:61988 0
Conexión del kernel 4 10.128.100.101:445 10.128.100.100:62756 0
Conexión del kernel 4 10.128.100.101:12541 10.128.100.100:445 0
Conexión del kernel 4 10.128.100.101:12797 10.128.100.100:445 0
Conexión del kernel 4 10.128.100.101:14077 10.128.100.100:445 0
Conexión del kernel 4 10.128.100.101:14333 10.128.100.100:445 0
Conexión del kernel 14 10.128.100.133:2375 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:62535 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:62791 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:64071 10.128.100.132:445 0
Conexión del kernel 14 10.128.100.133:64327 10.128.100.132:445 0
Escucha del kernel 4 [fe80::4cae:cb05:4932:f226%4]:445 NA 0
Escucha del kernel 4 10.128.100.101:445 NA 0
Listado de salida 2: a la pila de SMB le falta un agente de escucha
Por lo tanto, en el ejemplo anterior, el cliente SMB que intenta conectarse en el índice de interfaz 14 finalmente generará mensajes de conexión rechazada y errores del cliente SMB (ID de evento 30803) relacionados con RDMA
La arquitectura de red Dell EMC Microsoft Ready Node recomienda dos adaptadores de almacenamiento por cada nodo del clúster; no habrá ninguna interrupción en la funcionalidad del clúster cuando se produzca este problema. Además, el adaptador al que le falta un agente de escucha aún se puede utilizar para enviar tráfico RDMA. Sin embargo, dado que no hay ningún agente de escucha en uno de los adaptadores de almacenamiento, no se pueden realizar escrituras mediante RDMA. Este adaptador recurre al uso de TCP para cualquier escritura o tráfico de recepción. Esto puede dar lugar a un menor rendimiento de escritura según la carga de trabajo. No hay pérdida de datos ni limitaciones de funcionalidad cuando se produce este problema.
Esto se identificó como un error en las versiones 1.70 y anteriores del controlador de WinOF2 Mellanox CX4 LX.
El cliente de escucha de SMB se puede volver a crear reiniciando el adaptador de almacenamiento virtual que no tiene ningún cliente de escucha de SMB asociado después de un reinicio. Puede identificar el adaptador virtual adecuado para reiniciar siguiendo los pasos que se describen a continuación.
En el resultado de netstat -xan, puede ver que falta un cliente de escucha para uno de los adaptadores de almacenamiento. El índice de interfaz para el adaptador faltante se puede encontrar mediante el cmdlet Get-NetAdapter.
PS C:\> Get-NetAdapter
Nombre InterfaceDescription ifIndex Status MacAddress LinkSpeed
______________ __ ___________________ ____ ______Adaptador Ethernet virtual Hyper-V vEthernet (Storage2) #3 14 Hasta 00-15-5D-09-C4-0210 Gbps
Adaptador Ethernet virtual Hyper-V vEthernet (Storage1) #2 4 Up 00-15-5D-09-C4-0110 Gbps
vEthernet (administración)Adaptador Ethernet virtual Hyper-V 10 Up 00-15-5D-09-C4-0010 Gbps
Ethernet remoto NDIS Dispositivo compatible 9 No presente 50-9A-4C-A7-F9-DF 0 bps
NIC2 Intel(R) Ethernet 10G x710 rNDC 6 desconectada 24-6E-96-52-CC-A410 Gbps
Conexión de red NIC4 Intel(R) I350 Gigabit... 15 24-6E-96-52-CC-C3 desconectado 0 bps
Conexión de red NIC3 Intel(R) I350 Gigabit... #2 8 24-6E-96-52-CC-C2 0 bps
NIC1 Intel(R) Ethernet 10G 4P X710/I350 rNDC 13 desconectada 24-6E-96-52-CC-A210 Gbps
RANURA 1 Puerto 2 Mellanox ConnectX-4 Lx Ethernet Ad... #2 2 Hasta 24-8A-07-59-4C-6910 Gbps
RANURA 1 Puerto 1 Adaptador Ethernet Mellanox ConnectX-4 Lx 11 Hasta 24-8A-07-59-4C-6810 Gbps
Al observar la salida netstat –xan (que se muestra en el listado de salida 2), puede ver que la interfaz con índice 14 no tiene ningún agente de escucha asociado. En el cmdlet Get-NetAdapter, puede ver que el índice de interfaz 14 es el vEthernet del adaptador virtual (Storage2).
Ahora puede reiniciar la interfaz con el cliente de escucha faltante.
Restart-NetAdapter –Name "vEthernet (Storage2)"
Una vez que se completa este proceso, puede comprobar netstat –xan para asegurarse de que se cree el cliente de escucha. Este proceso puede tardar unos minutos. Una vez que se crea el cliente de escucha, los nodos del clúster comenzarán a comunicarse normalmente a través de RDMA y los nuevos errores de clientes SMB dejarán de aparecer en el visor de eventos.