簡介
本檔案介紹Nexus系列交換器上的虛擬PortChannel(vPC)角色選擇程式。
必要條件
需求
思科建議您瞭解以下主題:
- nexus系列交換機上的vPC
- 生成樹通訊協定(STP)
採用元件
本檔案中的資訊是根據Nexus 9000系列交換器平台。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
虛擬PortChannel技術
虛擬PortChannel(vPC)允許以物理方式連線到兩個不同Cisco交換器的連結顯示為連線到第三台裝置的單個PortChannel。第三個裝置可以是交換機、伺服器或支援IEEE 802.3ad PortChannel的任何其他網路裝置。vPC還允許建立跨兩台交換機的2層PortChannel。目前,vPC在Cisco Nexus 9000、7000、5000和3000系列平台(具有或不具有Cisco Nexus 2000系列交換矩陣擴展器)上實施。
註:Cisco NX-OS軟體vPC和Cisco Catalyst虛擬交換系統(VSS)具有類似技術。對於Cisco EtherChannel技術,術語「多機箱EtherChannel(MCEC)」可互換是指其中一種技術。
vPC角色
雖然兩台vPC交換機顯示為通向下游裝置的單台交換機,但其中兩台vPC交換機明確定義了vPC角色:vPC主交換機和vPC輔助交換機。
vPC角色是非搶佔性的,這意味著裝置可以配置為vPC主裝置,但作為vPC輔助對等裝置運行。這種情況可能會發生:
- 當原始主裝置發生故障時,輔助vPC裝置將成為新的主裝置。
- 當系統恢復時,先前的主裝置現在是輔助裝置,反之亦然。
vPC角色定義了兩個vPC對等裝置中的哪一個處理橋接協定資料單元(BPDU)並響應地址解析協定(ARP)請求。vPC角色還定義了vPC主裝置和vPC輔助裝置應響應vPC對等鏈路關閉情況而採取的一組操作。
vPC角色優先順序
您還可以在vPC域模式命令中使用角色優先順序來影響vPC選舉過程。 值的範圍為1到65636,預設值為32667。值越小,表示此交換機成為主vPC的機會就越高。
當您更改vPC對等裝置的優先順序時,可能導致網路中的介面開啟和關閉。如果要再次配置角色優先順序以使一個vPC裝置成為主裝置,請在主vPC裝置上配置優先順序值較低的角色優先順序,在輔助vPC裝置上配置優先順序值較高的角色優先順序。然後,關閉兩台裝置上的vPC對等鏈路並輸入shutdown命令,最後重新啟用兩台裝置上的埠通道並輸入no shutdown命令。
無中斷vPC角色更改
vPC無中斷角色更改功能提供了在vPC對等體之間切換vPC角色而不影響流量的框架。vPC角色交換基於vPC域下裝置的角色優先順序值完成。當執行vpc role preempt命令時,具有較低角色優先順序的vPC對等裝置被選作主vPC裝置。
有關更多詳細資訊,請參閱無中斷vPC角色更改的使用案例場景。
vPC對等鏈路關閉時vPC系統行為
當vPC對等鏈路發生故障且vPC對等保持連線鏈路仍處於開啟狀態時,vPC輔助對等裝置會執行以下操作:
- 掛起其vPC成員埠。
- 關閉與vPC VLAN關聯的SVI。
vPC的此保護行為將所有從南向北的流量重定向到vPC主裝置。
註:當vPC對等鏈路關閉時,兩台vPC對等裝置無法再相互同步,因此設計的保護機制導致其中一個對等裝置(發生時為輔助對等裝置)與資料路徑隔離。
vPC主粘滯位
vPC主粘滯位是一種程式設計保護機制,引入此機制是為了避免在主交換機意外重新載入時進行不必要的角色更改(可能導致網路中斷)。vPC主粘滯位允許在失效交換機恢復活動或隔離交換機整合回VPC域時,活動交換機保留其PRIMARY角色。
正在切換vPC主粘滯位:
1.在此方案中,vPC主粘滯位值設定為TRUE:
- 當前的vPC主交換機將重新啟動,並且啟用vPC的交換機將其角色從vPC輔助交換機更改為vPC操作主交換機。如果角色從vPC操作輔助角色更改為vPC主角色,則不設定粘滯位。
- 當重新載入恢復計時器(預設為240秒)過期時,啟用vPC的交換機將其角色從None establish更改為vPC Primary。
2.在以下情況下,vPC主粘滯位值設定為FALSE:
- 重新引導啟用vPC的交換機(預設情況下粘滯位設定為FALSE)。
- vPC角色優先順序已更改或重新輸入。
vPC粘滯主位在vPC管理器軟體元件結構下報告,並且可以使用此NX-OS exec模式命令進行檢查。
Campus_N7K2-VPC# show system internal vpcm info global | include ignore-case sticky
Sticky Primary: TRUE
Campus_N7K2-VPC#
vPC延遲還原
vPC對等裝置重新載入並恢復正常後,路由協定需要一段時間才能重新收斂。恢復的vPC支路可以將從接入到聚合/核心的路由流量黑洞化,直到重新建立上行鏈路第3層連線。
vPC延遲還原功能延遲恢復的vPC對等裝置上的vPC分支啟動。vPC延遲還原允許第3層路由協定在允許vPC分支上的任何流量之前進行收斂。這會導致恢復階段進行更流暢的恢復,且零資料包丟失(流量仍然會在活動的vPC對等裝置上被轉移)。預設情況下啟用此功能,vPC恢復預設計時器為30秒。計時器可以調整為特定第3層收斂基線,從1秒到3600秒。
vPC延遲恢復介面Vlan
要延遲恢復的vPC對等裝置上的VLAN介面啟動,請使用delay restore命令的interfaces-vlan選項。 預設情況下啟用此功能,vPC恢復預設計時器為10秒。
使用4000 SVI的擴展SVI設定時的vPC延遲恢復
引入了一個新的命令delay restore interface-VLAN batch <1-4094>,用於配置資料包以一次在200個SVI的批處理中啟用VLAN或網橋域介面。vPC delay restore timer命令delay restore <Timeout value>可以配置為大於所有已配置的批處理計時器的總和。這樣做是為了在所有SVI完全啟動以避免流量黑洞之後才啟動VPC分支。
示例:4000 Vlan、200批處理、15秒延遲
延遲恢復>(4000/200)x 15
vPC選舉流程
在vPC系統中,一個vPC對等裝置被定義為vPC主裝置,一個被定義為vPC輔助裝置,基於這些引數並依此順序
- vPC主粘滯位設定為0或1。
- 使用者定義的vPC角色優先順序(Cisco NX-OS軟體使用最小數值來選擇主裝置)。
- 系統mac地址值(Cisco NX-OS軟體使用最低的MAC地址選擇主裝置)。
此流程圖(圖1)彙總了兩個vPC對等裝置在vPC主交換機選舉過程中執行的步驟。
- 在vPC主選擇過程中,兩個裝置之間的第一個檢查引數是vPC主粘滯位。如果vPC對等裝置獲此比較,則無論兩個對等體具有已配置的vPC角色優先順序值或系統MAC地址,它都將成為vPC主裝置。
- 如果兩台vPC對等交換機具有相同的粘滯位值,則選舉過程將繼續執行下一步,以比較使用者定義的vPC角色優先順序。
- 如果兩個vPC角色都配置為相同的值,則選舉過程將繼續比較系統MAC地址。
圖1
如圖所示,當vPC交換機的vPC主粘滯位設定為1(TRUE條件)且其對等體的粘滯位設定為0(FALSE條件)時,TRUE端會贏得選擇並承擔vPC主粘滯位的角色。
vPC對等裝置1粘滯位設定為1 |
vPC對等體2粘滯位設定為1 |
vPC主要 |
False(0) |
False(0) |
並列 |
真(1) |
False(0) |
vPC對等體1 |
False(0) |
真(1) |
vPC對等體2 |
真(1) |
真(1) |
並列 |
vPC恢複方案
瞭解vPC選舉過程非常重要,尤其是在vPC恢複方案中,不能低估此過程。
圖2顯示了典型的VPC設定,Nexus-01是VPC主要,Nexus-02是VPC次要。預設情況下,這兩個站點的Sticky Bits都重新設定為FALSE。
圖2
如圖所示,Nexus-01現在出現了斷電情況,並且已與網路隔離。Nexus-02將自身提升為vPC主節點,並將vPC粘滯位設定為TRUE。
Nexus-02現在成為可操作的主節點,粘滯位現在設定為TRUE。
圖3
如圖所示,當斷電恢復後Nexus-01重新聯機時,Nexus-02保留主要操作角色,而不管其角色優先順序如何(因為它具有TRUE粘滯位),並且Nexus-01在聯機時承擔輔助角色。只有Nexus-01才開始VPC初始化過程,而Nexus-02仍保持主節點並照常轉發流量。 因此,未發現網路中斷。
有兩個計時器與Nexus-01上的vPC初始化過程相關聯,該裝置現在是vPC運行輔助裝置:
- 延遲還原SVI(預設情況下為10秒)
- 延遲恢復(預設情況下為30秒)
因此,在將Nexus-01重新引入網路作為vPC輔助裝置後,Nexus-01的恢復時間預計為40秒。但是,由於Nexus-02承擔主要角色,因此所有流量現在都通過上述的Nexus-01,因此不會出現網路中斷。
圖4
與錯誤設定粘滯位相關的網路中斷示例
當隔離交換機(Nexus-02)被引入到VPC域時,由於粘滯位設定不正確而導致網路中斷
但是,如果在兩台Nexus交換機上未正確設定粘滯位,則隔離的交換機被引入回VPC域後,可能會發生網路中斷。將隔離的交換機引入回VPC域之前,其粘滯位必須設定為FALSE。(有關更換N7K機箱的過程,請參閱Nexus 7000機箱更換過程。)
如圖5所示,Nexus-01配置的VPC角色優先順序高於Nexus-02,而Nexus-02的粘滯位設定為TRUE。Nexus-01的鏈路E1/1和E1/2處於轉發狀態,而E1/1和E1/2處於關閉狀態。
圖5
當PKA和對等鏈路恢復時,Nexus-02承擔主要角色,而不管其角色優先順序如何(因為它具有TRUE粘滯位),並強制Nexus-01成為輔助角色,VPC初始化過程在Nexus-01上開始。因此,Nexus-01的鏈路E1/1和E1/2由VPC掛起,並在中繼恢復計時器(預設情況下為40秒)到期後聯機。 在此案例中,在PKA和對等鏈路恢復後會出現40秒的網路中斷,如圖6所示。
圖6
註:將Nexus重新引入到vPC域時,必須確保活動vPC裝置中的vPC角色沒有更改。為避免將兩台交換機的粘滯位設定為相同值時更改vPC角色,活動vPC裝置必須具有更高的角色優先順序,才能保留其PRIMARY角色。有關VPC角色選擇過程的詳細資訊,請參閱本文檔中的映像1。