Introduction
Ce document décrit comment former un canal de port LACP (Link Aggregation Control Protocol) entre le Nexus 9000 et le serveur UCS (Unified Computing System).
Conditions préalables
Exigences
Aucune exigence spécifique n'est associée à ce document.
Composants utilisés
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
- Nexus 9300 qui exécute la version 6.1(2)I(3)3a
- Serveur UCS C240 M3 qui exécute Cisco Integrated Management Controller (CIMC) Version 2.0(3f)
- Carte d'interface virtuelle (VIC) Cisco version 1225
- Red Hat Enterprise Linux Version 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.
Problème
Le Nexus 9000 ne peut pas former de canaux de port LACP avec le serveur UCS. Si aucun lacp suspend-individual n'est configuré sur le port-channel, alors il passe à l'état I. S'il n'est pas configuré, il suspend le port en raison de l'absence d'unité de données LACP (LACPDU).
Les compteurs d'interface LACPDU sur le Nexus 9000 montrent que les compteurs transmis (Tx) sont incrémentés mais que les compteurs reçus (Rx) ne le sont pas.
Voici comment configurer un port d'accès sur Nexus 9000 et désactiver le 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
Il peut également être configuré en tant que port de périphérie de trunk. Toutefois, le comportement n'est pas différent :
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
Ceci peut être (s) pour suspendu si le LACP suspend-individual est activé (par défaut, il est activé). Cependant, la raison doit être la même que celle pour laquelle il ne reçoit pas d'unités de données de protocole (PDU) de l'homologue.
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 ne capture pas non plus les PDU provenant du périphérique homologue. Cependant, un tcpdump qui est pris du serveur indique qu'il envoie et reçoit des PDU.
Solution
La configuration des travaux pratiques a montré que lorsque le LACPDU a été capturé sur le Nexus 9000, il a été découvert qu'il envoie le LACPDU avec l'en-tête dot1q comme indiqué ici :
Cependant, l'ID de VLAN est défini sur 0. Maintenant, quand vous regardez la configuration de la carte d'interface réseau virtuelle (vNIC), vous voyez que par défaut le VLAN est défini sur None et le VLAN Mode est défini sur access. Maintenant, même dans ce mode, il envoie LACPDU avec l'en-tête dot1q. Cependant, le Nexus 9000 n'identifie pas le VLAN 0 et par conséquent ce paquet est abandonné. Ce comportement est documenté dans Options de connectivité VIC des serveurs rack UCS série C.
Pour que cela fonctionne, vous devez configurer le VLAN Mode comme Trunk et également configurer le VLAN par défaut comme un VLAN qui est autorisé sur ce port. Afin de changer cela, vous vous connectez à l'adresse IP CIMC de votre serveur.
- Cliquez sur l'onglet Serveur dans le volet gauche, puis cliquez sur Inventaire.
- Cliquez sur Cisco VIC adapters dans le volet droit, puis cliquez sur vNICs.
- Choisissez l'interface, puis cliquez sur Propriétés. Vous devriez être en mesure d'effectuer les modifications ici :
- Une fois les modifications apportées, enregistrez les modifications. Vous devez réinitialiser le serveur pour que les modifications prennent effet. Après la réinitialisation, le port-channel doit se former correctement.
Dans les versions plus récentes de Nexus 9000, versions 6.1(2)I(3)4 et 7.0(3)I1(1) et ultérieures, il ignore l'en-tête dot1q et les paquets atteignent le superviseur (SUP). Ce comportement est documenté dans l'ID de bogue Cisco CSCur69668.
Par conséquent, vous ne devriez pas rencontrer ce problème dans les versions plus récentes.