Introducción
Este documento describe cómo formar un canal de puerto de protocolo de control de agregación de enlaces (LACP) entre el Nexus 9000 y el servidor de Unified Computing System (UCS).
Prerequisites
Requirements
No hay requisitos específicos para este documento.
Componentes Utilizados
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
- Nexus 9300 que ejecuta la versión 6.1(2)I(3)3a
- Servidor UCS serie C240 M3 que ejecuta Cisco Integrated Management Controller (CIMC) versión 2.0(3f)
- Tarjeta de interfaz virtual (VIC) de Cisco versión 1225
- Red Hat Enterprise Linux versión 7.0
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Problema
El Nexus 9000 no puede formar canales de puerto LACP con el servidor UCS. Si no se configura ningún lacp suspender-individual en el canal de puerto, entonces pasa al estado I. Si no está configurado, entonces suspende el puerto debido a que no hay unidad de datos LACP (LACPDU).
Los contadores de la interfaz LACPDU en el Nexus 9000 muestran que los contadores transmitidos (Tx) se incrementan, pero los contadores recibidos (Rx) no se incrementan.
A continuación, se explica cómo configurar un puerto de acceso en Nexus 9000 y deshabilitar el LACP suspender-individual:
interface port-channel1019
switchport access vlan 4
no lacp suspend-individual
interface Ethernet1/19
description csm-b-ceph-001
switchport access vlan 4
spanning-tree port type edge
spanning-tree bpduguard enable
spanning-tree guard root
channel-group 1019 mode active
Esto también se puede configurar como puerto de borde de tronco; sin embargo, el comportamiento no es diferente:
Nexus9396X-2# show port-c sum
Flags: D - Down P - Up in port-channel (members)
I - Individual H - Hot-standby (LACP only)
s - Suspended r - Module-removed
S - Switched R - Routed
U - Up (port-channel)
M - Not in use. Min-links not met
--------------------------------------------------------------------------------
Group Port- Type Protocol Member Ports
Channel
--------------------------------------------------------------------------------
1019 Po1019(SD) Eth LACP Eth1/19(I) ----> Indicates No PDUs are being received
Esto puede ser para suspendido si el LACP suspende-individual está habilitado (de forma predeterminada, está habilitado). Sin embargo, el motivo debe ser el mismo que el motivo por el que no recibe las Unidades de datos de protocolo (PDU) del par.
Nexus9396X-2# show lacp interface e1/19
Interface Ethernet1/19 is individual
Channel group is 1019 port channel is Po1019
PDUs sent: 63
PDUs rcvd: 0 ----> Indicates No PDUs are being received from UCS server.
Markers sent: 0
Markers rcvd: 0
Marker response sent: 0
Marker response rcvd: 0
Unknown packets rcvd: 0
Illegal packets rcvd: 0
Lag Id: [ [(0, 0-0-0-0-0-0, 0, 0, 0), (0, 0-0-0-0-0-0, 0, 0, 0)] ]
Operational as aggregated link since Thu Jan 1 00:00:00 1970
Local Port: Eth1/19 MAC Address= 7c-69-f6-10-59-d7
System Identifier=0x8000, Port Identifier=0x8000,0x113
Operational key=33787
LACP_Activity=active
LACP_Timeout=Long Timeout (30s)
Synchronization=IN_SYNC
Collecting=true
Distributing=true
Partner information refresh timeout=Long Timeout (90s)
Actor Admin State=125
Actor Oper State=125
Neighbor: 0x0
MAC Address= 0-0-0-0-0-0
System Identifier=0x0, Port Identifier=0x0,0x0
Operational key=0
LACP_Activity=unknown
LACP_Timeout=Long Timeout (30s)
Synchronization=NOT_IN_SYNC
Collecting=false
Distributing=false
Partner Admin State=0
Partner Oper State=0
Aggregate or Individual(True=1)= 1
Ethanalyzer tampoco captura las PDU que vienen del dispositivo peer. Sin embargo, un tcpdump que se toma del servidor indica que envía y recibe PDU.
Solución
La configuración del laboratorio mostró que cuando el LACPDU fue capturado en el Nexus 9000, se descubrió que envía LACPDU con el encabezado dot1q como se ve aquí:

Sin embargo, el ID de VLAN se establece en 0. Ahora, cuando se observa la configuración de la tarjeta de interfaz de red virtual (vNIC), se ve que, de forma predeterminada, la VLAN se establece en None y el modo VLAN se establece en access. Incluso en este modo, envía LACPDU con el encabezado dot1q. Sin embargo, el Nexus 9000 no identifica la VLAN 0 y, por lo tanto, este paquete se descarta. Este comportamiento se documenta en Opciones de Conectividad VIC de Servidores en Rack de la Serie C de UCS.
Para hacer que esto funcione, debe configurar el Modo VLAN como Trunk y también configurar la VLAN predeterminada como VLAN permitida en ese puerto. Para cambiar esto, inicie sesión en la dirección IP CIMC del servidor.
- Haga clic en la ficha Servidor en el panel izquierdo y luego haga clic en Inventario.
- Haga clic en Cisco VIC Adapters en el panel derecho y luego haga clic en vNIC.
- Elija la interfaz y luego haga clic en Propiedades. Debe poder realizar los cambios aquí:


- Una vez realizados los cambios, Guardar cambia. Debe restablecer el servidor para que los cambios surtan efecto. Después del reinicio, el canal de puerto debe formarse correctamente.
En las versiones más recientes de Nexus 9000, versión 6.1(2)I(3)4 y 7.0(3)I1(1) y posteriores, ignora el encabezado dot1q y los paquetes llegan al Supervisor (SUP). Este comportamiento se documenta con el ID de bug de Cisco CSCur69668.
Por lo tanto, no debería encontrar este problema en las versiones más recientes.