自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

網絡出現(xiàn)黑洞怎么辦?

企業(yè)動態(tài)
作為一個IT人,在我個人日常的技術部署實踐和問題診斷排錯過程中,經常會發(fā)現(xiàn)一些不正確的網絡配置,使得網絡鏈路故障時,網絡流量無法被正確引導至冗余路徑,致使通訊異常,乃至業(yè)務中斷。下面,將以Dell刀片系統(tǒng)的網絡拓撲結構為例,介紹一種被我稱為 “網絡黑洞”的故障現(xiàn)象及其解決方法。

 

網絡出現(xiàn)黑洞怎么辦?

[[218506]]

服務器和網絡交換機,作為IT基礎架構中最為核心的功能組件,是每一位IT系統(tǒng)網絡工程技術人員日常接觸最多也是最為熟悉的設備類型。無論是負責售前方案設計的架構師,還是擔負系統(tǒng)部署和運維的現(xiàn)場工程師,雖然角色分工有所不同,但都有著一個共同的心愿:那就是希望自己設計、部署和運維的系統(tǒng)具有***的可用性,不但平日里能夠可靠、穩(wěn)定和高效地承載上層業(yè)務應用,而且當故障發(fā)生時還能夠按照預先設計的冗余策略實現(xiàn)既定的故障轉移、自愈或容錯。

作為一個IT人,在我個人日常的技術部署實踐和問題診斷排錯過程中,經常會發(fā)現(xiàn)一些不正確的網絡配置,使得網絡鏈路故障時,網絡流量無法被正確引導至冗余路徑,致使通訊異常,乃至業(yè)務中斷。下面,將以Dell刀片系統(tǒng)的網絡拓撲結構為例,介紹一種被我稱為 “網絡黑洞”的故障現(xiàn)象及其解決方法。

何謂“網絡黑洞”?

 

首先,請看下面這張系統(tǒng)拓撲圖:

 

網絡出現(xiàn)黑洞怎么辦?

 

上圖中描繪了一個典型的刀片服務器網絡接入場景:在Dell M1000e刀片系統(tǒng)中,單臺刀片服務器(M630)通過兩個集成網口(網卡1和網卡2),分別與刀片機箱上的交換機相連接(刀箱交換機模塊A和刀箱交換機模塊B)。刀片服務器網卡1和網卡2配置為Teaming或Bond方式。刀箱交換機模塊A和B再通過各自的上行端口分別與核心交換機A和核心交換機B連接,每個刀箱交換機模塊出于鏈路冗余考慮,都采用2條上行鏈路到核心交換機,每個刀箱交換機用于上行鏈路的2個端口配置為聚合方式(Port Channel)。兩臺核心交換機之間通過堆疊方式實現(xiàn)互連。

通過上述方式,我們構建了一個物理層全冗余的網絡環(huán)境。那么,它真的能夠具備我們所希望的網絡冗余能力么?接下來,我們將一起分析看看,當這個系統(tǒng)中的某些網絡鏈路出現(xiàn)故障時,會發(fā)生什么?

假設一

有一條從刀箱交換機模塊A到核心交換機A的上行鏈路出現(xiàn)故障,如下圖所示:

 

網絡出現(xiàn)黑洞怎么辦?

 

此時,來自網卡1的流量到達刀箱交換機模塊A后,可以被刀箱交換機模塊A從另1條未發(fā)生故障的上行鏈路轉發(fā)到核心交換機B。來自于網卡2的流量到達刀箱交換機模塊B后,與此前一樣順利地被轉發(fā)到核心交換機。除了刀箱交換機模塊A到核心交換機的上行鏈路帶寬減少50%以外,不會有任何其他網絡訪問連通性方面的問題。

 

 

假設二

在假設1的基礎上:如果上圖中刀箱交換機模塊A與核心交換機B之間的上行鏈路也發(fā)生故障,如下圖所示:

 

網絡出現(xiàn)黑洞怎么辦?

 

此時,刀箱交換機模塊A的上行端口已全部變?yōu)?ldquo;link-down”狀態(tài),而它與刀片服務器網卡相連接的內部端口仍然保持“link-up”狀態(tài)。這種情況下,刀片服務器操作系統(tǒng)的teaming或bond服務組件,確認網卡1和網卡2都是“link-up”狀態(tài),不會觸發(fā)任何網絡流量切換動作,一如此前的工作狀態(tài),繼續(xù)發(fā)送數(shù)據流量到服務器網卡1和網卡2。請注意,此時問題出現(xiàn)了:被發(fā)送到網卡1的流量到達刀箱交換機模塊A后,因為刀箱交換機模塊A上行鏈路已全部中斷,無法被轉發(fā)至核心交換機,最終這部分數(shù)據流無法被送達目的主機,最終會因投遞超時被丟棄。這部分流量仿佛落入了“黑洞”一般,得不到任何回應,將導致嚴重的丟包或斷網情況發(fā)生。(注:究竟是完全斷網還是部分丟包,與刀片服務器上teaming和bond所設定的網卡冗余的具體模式有關。)

 

 

Dell出招治理“網絡黑洞”

 

以上所描繪的場景,自然是我們不希望發(fā)生的。那么能否有一種方法,可以讓刀片服務器的網卡端口狀態(tài),可以隨著刀箱交換機模塊的上行端口的狀態(tài)實現(xiàn)“聯(lián)動”呢?下圖描繪了我們最希望看到的沒有網絡“黑洞”愿景:

 

網絡出現(xiàn)黑洞怎么辦?

 

在上述場景中,我們假想,如果刀箱交換機模塊A的2條上行鏈路全部失效,刀箱交換機模塊A發(fā)現(xiàn)全部上行鏈路中斷后,可以自動的阻斷自己與刀片服務器相連接的交換機端口,使之變?yōu)?strong>“link-down”狀態(tài),那么服務器網卡1也將同步變?yōu)?strong>“link-down”狀態(tài)。刀片服務器操作系統(tǒng)的teaming或bond服務組件,將監(jiān)測到網卡1的狀態(tài)變化,隨時將網絡流量全部轉移至網卡2,網絡流量進一步會由刀箱交換機模塊B成功轉發(fā)給核心交換機,這樣就確保了刀片服務器網卡通訊正常,真正實現(xiàn)了原始方案中所設計的服務器網卡冗余的高可用功能,消除了網絡“黑洞”現(xiàn)象。

 

下面我們將繼續(xù)沿用Dell刀片系統(tǒng)的網絡架構作為例子,來說明防范網絡“黑洞”的方法。

 

在Dell M1000e刀片系統(tǒng)中目前可以配置下面幾款刀片交換機模塊:

 

[[218507]]

Dell PowerConnect M6220(1GbE/10GbE)

[[218508]]

Dell PowerConnect M6348(1GbE/10GbE)

[[218509]]

Dell PowerConnect M8024-k(10GbE)

[[218510]]

Dell Force10 MXL(10 GbE/40GbE)

 

在上面三款DellPowerConnect系列的交換機中,我們設計了一種端口狀態(tài)“聯(lián)動”機制,被稱之“連接依賴性(Link Dependency)”。我們可以在交換機配置中,通過建立一個“連接依賴性組”, 把具有依賴性關聯(lián)的端口添加到這個“連接依賴性組”中,并指明端口之間的“聯(lián)動”規(guī)則,即可實現(xiàn)端口智能聯(lián)動策略。例如,在前面的場景中,我們可以把“刀箱交換機模塊A”上和刀片服務器相連接的端口與和核心交換機連接的聚合端口(Port Channel)配置到同一個“連接依賴性組”中,并設定策略:當連接核心交換機的上行聚合端口(Port Channel)變?yōu)?ldquo;link-down”時,所有與刀片服務器相連接的端口也強制變?yōu)?ldquo;link-down”狀態(tài)。這個配置策略一旦激活生效,上行聚合端口(Port Channel)的連接狀態(tài)將持續(xù)處于被監(jiān)視狀態(tài),一經發(fā)現(xiàn)其鏈路中斷,PortChannel變?yōu)?ldquo;link-down”,交換機與刀片服務器相連接的端口也會即可變?yōu)?ldquo;link-down”,與刀箱交換機模塊A連接的服務器網卡1自然也會同步變?yōu)?ldquo;link-down”,服務器端teaming或bond將會檢測到網卡1鏈路失效,并將網絡流量完全切換至網卡2。為保證對稱性,需要在刀箱交換機模塊B上同樣進行上述配置。這樣,我們就徹底防止了潛在網絡“黑洞”的出現(xiàn),確保了網絡的可用性。

PowerConnect交換機配置示例

在PowerConnect交換機的管理控制臺上可以通過命令實現(xiàn)上述功能。配置示例如下:

 

console#configure

console(config)# interface range gigabitethernet 1/0/17-18

console(config-if)#channel-group 1 mode auto

console(config-if)#no shutdown

console(config-if)#exit

console(config)#interface port-channel 1

console(config-if)#switchport mode trunk

console(config-if)#exit

console(config)#link-dependency group 1

console(config-linkDep-group-1)#add gigabitethernet 1/0/1-16

console(config-linkDep-group-1)#depends-on port-channel 1

console(config-linkDep-group-1)#action down

console(config-linkDep-group-1)#exit

console(config)#

 

配置說明:首先將刀片交換機模塊上的上行端口Gi1/0/17和Gi1/0/18聚合為端口通道Port- Channel1。隨后創(chuàng)建“連接依賴性組”link-dependency group1,并將刀片交換機的所有內部端口(Gi1/0/1~Gi1/0/16)作為成員端口添加到連接依賴性組中。***,指派成員端口所依賴的端口為Port- Channel1,設定聯(lián)動策略為“action down”,意為如若上行端口狀態(tài)為“link-down”,則所有內部端口也變?yōu)?ldquo;link-down”。

 

對于DellPowerConnect系列交換機,除了CLI命令行訪問方式,還為用戶提供了Web操作方式,上述配置操作完全也可以通過Web管理界面來實現(xiàn),操作更為簡單便捷。

DellForce10 MXL萬兆交換機配置示例

DellForce10 MXL萬兆交換機模塊也具備類似的功能。在Force10的術語中把這種連接依賴性關聯(lián)機制稱之為“上行鏈路失效監(jiān)測(Uplink Failure Detection)”。PowerConnect上的“連接依賴性組(link-dependency group)”的概念,在Force10 MXL上被稱為“上行鏈路狀態(tài)組(uplink-state-group)”,其含義是一樣的。

 

在Force10 MXL上的配置示例如下:

 

Force10# configure

Force10 (conf)#interface range TengigabitEthernet 0/1 -32

Force10 (conf-if-range-Te-0/1-32)#no shutdown

Force10 (conf-if-range-Te-0/1-32-lacp)#exit

Force10 (conf)#interface port-channel 1

Force10 (conf-if-po-1)#switchport

Force10 (conf-if-po-1)#no shutdown

Force10 (conf-if-po-1)#exit

Force10 (conf)#interface range TengigabitEthernet 0/49-50

Force10 (conf-if-range-Te-0/49-50)#no shutdown

Force10 (conf-if-range-Te-0/49-50)#switchport

Force10 (conf-if-range-Te-0/49-50)#port-channel-protocol lacp

Force10 (conf-if-range-Te-0/49-50-lacp)#port-channel 1 mode active

Force10 (conf-if-range-Te-0/49-50-lacp)#exit

… …

Force10 (conf)# uplink-state-group 1

Force10 (conf-uplink-state-group-1)# description #Sample Configuration for UFD

Force10 (conf-uplink-state-group-1)# upstream port-channel 1

Force10 (conf-uplink-state-group-1)# downstream TengigabitEthernet 0/1 -32

Force10 (conf-uplink-state-group-1)# downstream disable links all

Force10 (conf-uplink-state-group-1)# downstream auto-recover

Force10 (conf-uplink-state-group-1)# exit

 

配置說明:首先將刀片F(xiàn)orce10 MXL交換機模塊上的上行端口Ten 0/49和Ten 0/50聚合為端口通道port-channel1。隨后創(chuàng)建“上行鏈路狀態(tài)組”uplink-state-group1,并將刀片F(xiàn)orce10 MXL交換機的所有內部端口(Ten 0/1~Ten0/32)作為下行端口(“downstream ”)添加到uplink-state-group1中。***,再將上行鏈路 port-channel1作為上行端口類型(“upstream”)添加到uplink-state-group1中。設定聯(lián)動策略為“downstream disable links all”和“downstream auto-recover”,意為如若上行鏈路狀態(tài)為“link-down”,則所有下行端口也變?yōu)?ldquo;link-down”;當上行鏈路恢復可用時,所有下行同步恢復可用。

工程師手札

以上示例中涉及到的交換機的配置命令以及更詳細的使用說明,感興趣的朋友可以參考Dell官方技術支持站點提供的《用戶手冊和用戶指南》。通過support.dell.com站點,您只需選擇相應的交換機產品型號,在該產品的技術支持頁面中可以選擇直接在線閱覽或免費下載。

 

本文所探討的 “網絡黑洞”問題,是一個十分常見卻容易被忽視的問題。事實上,未經充分的鏈路切換測試演練的服務器網絡環(huán)境一旦交付上線投產,事前是很難發(fā)現(xiàn)這類潛在隱患的。通常都是在投產后發(fā)現(xiàn)了網絡連通性問題做故障排查時,才會略見端倪,而此時極有可能已經因此引發(fā)了計劃外生產業(yè)務中斷事件,代價高昂。所以,僅有服務器、網絡鏈路的物理冗余的前期設計是遠遠不夠的,必須輔之以全面優(yōu)化的部署服務才能確保我們所交付的IT基礎架構具備真正意義上的高可用。

 

謹以此文與朋友們分享,在此感謝大家一直以來對Dell的支持和關注!

責任編輯:張燕妮 來源: 戴爾企業(yè)級解決方案
相關推薦

2022-05-19 08:01:49

PostgreSQL數(shù)據庫

2022-10-14 08:18:07

Guavaweb應用

2011-10-17 12:30:43

2010-08-26 14:23:28

路由器故障

2015-03-31 15:33:55

2019-06-12 10:55:30

IPv6Windows網絡連接

2020-02-21 16:38:28

通信電腦DNS

2017-06-12 10:16:57

2009-11-03 08:56:02

linux死機操作系統(tǒng)

2022-12-19 11:31:57

緩存失效數(shù)據庫

2024-04-22 08:17:23

MySQL誤刪數(shù)據

2017-02-21 13:11:43

SDN網絡體系SDN架構

2022-07-05 11:48:47

MySQL死鎖表鎖

2019-10-12 09:50:46

Redis內存數(shù)據庫

2021-08-04 16:43:44

Windows 10Windows微軟

2013-01-21 09:32:10

2015-10-22 09:09:59

BAT投資VC

2017-12-21 20:01:38

潤乾報表

2019-08-29 07:35:29

網站404空白nginx

2024-10-09 17:06:52

RedisHash哈希表
點贊
收藏

51CTO技術棧公眾號