Introdução
Este documento descreve como formar um canal de porta do LACP (Link Aggregation Control Protocol) entre o Nexus 9000 e o servidor do Unified Computing System (UCS).
Pré-requisitos
Requisitos
Não existem requisitos específicos para este documento.
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
- Nexus 9300 que executa a versão 6.1(2)I(3)3a
- Servidor UCS C240 M3 Series com Cisco Integrated Management Controller (CIMC) versão 2.0(3f)
- Cisco Virtual Interface Card (VIC) versão 1225
- Red Hat Enterprise Linux versão 7.0
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a sua rede estiver ativa, certifique-se de que entende o impacto potencial de qualquer comando.
Problema
O Nexus 9000 não é capaz de formar canais de porta LACP com o servidor UCS. Se no lacp suspend-individual estiver configurado no canal de porta, ele vai para o estado I. Se não estiver configurado, ele suspenderá a porta devido à ausência de LACP Data Unit (LACPDU).
Os contadores de interface LACPDU no Nexus 9000 mostram que os contadores transmitidos (Tx) são incrementados, mas os contadores recebidos (Rx) não são incrementados.
Veja a seguir como configurar uma porta de acesso no Nexus 9000 e desativar o LACP suspend-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
Isso também pode ser configurado como uma porta de borda de tronco; no entanto, o comportamento não é 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
Pode ser (s) para suspenso se o LACP suspend-individual estiver ativado (por padrão, está ativado). No entanto, o motivo deve ser o mesmo porque ele não recebe unidades de dados de protocolo (PDUs) do peer.
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
O Ethanalyzer também não captura PDUs que vêm do dispositivo par. No entanto, um tcpdump que é tirado do servidor indica que ele envia e recebe PDUs.
Solução
A configuração do laboratório mostrou que quando o LACPDU foi capturado no Nexus 9000, descobriu-se que ele envia o LACPDU com o cabeçalho dot1q como visto aqui:
No entanto, o ID da VLAN é definido como 0. Agora, quando você observa a configuração para a placa de interface de rede virtual (vNIC), vê que, por padrão, a VLAN está definida como None e o modo VLAN está definido como access. Agora, mesmo nesse modo, ele envia LACPDU com o cabeçalho dot1q. No entanto, o Nexus 9000 não identifica a VLAN 0 e, portanto, esse pacote é descartado. Esse comportamento é documentado nas opções de conectividade VIC dos servidores rack UCS C-Series.
Para que isso funcione, você deve configurar o Modo VLAN como Tronco e também configurar a VLAN padrão como uma VLAN permitida nessa porta. Para alterar isso, faça login no endereço IP do CIMC do servidor.
- Clique na guia Servidor no painel esquerdo e clique em Inventário.
- Clique em Cisco VIC adapters no painel direito e, em seguida, clique em vNICs.
- Escolha a interface e clique em Propriedades. Você deve ser capaz de fazer as alterações aqui:
- Depois que as alterações forem feitas, clique em Save changes (Salvar alterações). Você deve redefinir o servidor para que as alterações tenham efeito. Após a redefinição, o canal de porta deve se formar corretamente.
Em versões mais recentes do Nexus 9000, Versão 6.1(2)I(3)4 e 7.0(3)I1(1) e posteriores, ele ignora o cabeçalho dot1q e os pacotes chegam ao Supervisor (SUP). Esse comportamento é documentado na ID de bug da Cisco CSCur6968.
Portanto, você não deve encontrar esse problema nas versões mais recentes.