簡介
本檔案介紹如何在Nexus 9000和整合運算系統(UCS)伺服器之間形成連結彙總控制通訊協定(LACP)連線埠通道。
必要條件
需求
本文件沒有特定需求。
採用元件
本文中的資訊係根據以下軟體和硬體版本:
- 執行6.1(2)I(3)3a版的Nexus 9300
- UCS C240 M3系列伺服器(執行思科整合式管理控制器(CIMC)版本2.0(3f))
- Cisco虛擬介面卡(VIC)版本1225
- Red Hat Enterprise Linux版本7.0
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
問題
Nexus 9000無法與UCS伺服器形成LACP埠通道。 如果在port-channel上未配置lacp suspend-individual,則它會進入I狀態。如果未配置,則由於沒有LACP資料單元(LACPDU)而暫停埠。
Nexus 9000上的LACPDU介面計數器顯示,傳輸(Tx)計數器遞增,但接收(Rx)計數器不遞增。
以下是在Nexus 9000上配置接入埠並禁用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
這也可以配置為中繼邊緣埠;但是行為沒有區別:
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
如果已啟用LACP suspend-individual(預設情況下啟用),則此狀態可以掛起。但是,原因應與它沒有從對等裝置接收協定資料單元(PDU)的原因相同。
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也不會擷取來自對等裝置的PDU。但是,從伺服器獲取的tcpdump指示它傳送和接收PDU。
解決方案
實驗設定顯示,在Nexus 9000上捕獲LACPDU時,發現它會傳送帶有以下dot1q報頭的LACPDU:
但是,VLAN ID設定為0。現在,當您檢視虛擬網路介面卡(vNIC)的組態時,會看到預設情況下,VLAN設定為None,而VLAN模式設定為access。現在,即使在此模式下,它也會傳送帶有dot1q報頭的LACPDU。但是,Nexus 9000無法識別VLAN 0,因此該資料包被丟棄。 此行為記錄在UCS C系列機架式伺服器VIC連線選項中。
為了讓此功能正常運作,您必須將VLAN模式設定為Trunk,並將預設VLAN設定為該連線埠上允許的VLAN。 要更改此設定,請登入到伺服器的CIMC IP地址。
- 按一下左窗格中的Server頁籤,然後按一下Inventory。
- 在右窗格中按一下Cisco VIC adapters,然後按一下vNICs。
- 選擇介面,然後按一下Properties。您應該能夠在此處進行更改:
- 更改完成後,Save更改。您必須重置伺服器才能使更改生效。重設後,連線埠通道應能正確形成。
在較新版本的Nexus 9000、6.1(2)I(3)4和7.0(3)I1(1)和更新版本中,它會忽略dot1q標頭且封包會到達Supervisor(SUP)。此行為已記錄在Cisco錯誤ID CSCur6968中。
因此較新版本中不應遇到此問題。