高可用性需求是數據中心最重要的需求之一,由于數據中心承載著網絡中的重要業務數據,所以業務的高可用性(即業務的連續性)受到極大關注。不同等級的數據中心對網絡的高可用性有著不同的要求,但設備和鏈路的冗余設計是最基本最普遍的要求,而區別主要在于網絡故障對業務恢復的快慢影響。對數據中心而言,高可用性涉及到網絡、服務器、存儲、電力、制冷等多個方面的因素,本文主要闡述數據中心網絡架構的高可用需求以及典型測試案例。
1 數據中心HA設計需求
1.1 數據中心HA設計的重要性
網絡中節點和鏈路的故障總是無法完全避免的,所以提升網絡可用性的重要方法之一是整體架構的冗余設計,通過設備或鏈路失效時的備份接管,盡量減少系統的故障恢復時間。
表1是不同等級的可用性與總故障時間(以一年為時間段)的對應關系表:
表1 不同等級可用性與一年內的總故障時間的對應關系
為什么數據中心網絡的可靠性如此重要呢?簡單來說,有以下幾個方面原因:
1、業務的多樣性和高度集中性
無論是從機房規模、業務種類,還是架構復雜性方面,今天的數據中心都在快速擴展。高性能服務器、虛擬化和高速以太網等新技術都著眼于將多種流量類型,如數據、存儲、視頻和語音等匯聚在單一的網絡架構中。業務的高度集中使得網絡故障的影響和損失擴大,從而也提高了對網絡可靠性的需求。
2、超大型數據中心對高可靠性的需求
超大型數據中心,尤其是一些重載型數據中心,其對網絡的利用率及鏈路帶寬的使用具有很高的比率。按一條60%利用率的10GE鏈路來看,即使中斷0.1秒也會丟失600M左右的數據。如果按照5個9的標準計算,一年累計中斷5.256分鐘即315.36秒,一條10GE鏈路將丟失大約1.892T的數據。越是關鍵的位置,網絡故障的影響將越加嚴重,固然對HA的能力要求越高。
3、高速鏈路帶來的丟包風險
同樣重要的是,現在數據中心邊緣端口正變得越來越快。正如服務器中的千兆以太網接口推動了交換機的萬兆以太網的部署一樣,服務器萬兆接口的普及也將推動數據中心核心網對40GE和100GE以太網的迫切需求。帶寬的增長自然會對核心網帶來更大的HA風險。40GE或100GE的鏈路故障帶來的損失更加嚴重,如果鏈路承載了關鍵業務的重要數據,這樣的損失將是不可接受的。用戶對可用性的要求隨著設備性能的提高,只會越來越苛刻。
4、云計算對基礎設施高可靠性需求的提高
目前云計算正逐漸成為一種現實,而且越來越多的私有云和公共云的部署使用都已經充分證明了其存在的意義。基礎設施即服務(IaaS)的吸引力也在不斷增加。有多種能力可以增強IaaS云的可用性,例如實時遷移、動態資源調度和自動重啟等。虛擬機的實時遷移產生了額外的網絡流量,這對于已經處于高負荷狀態的網絡提出了額外的需求,所以實際的結果可能導致性能或可用性的進一步惡化。網絡延時和丟包會導致虛擬機遷移的失敗,在實時遷移過程中測量虛擬機的停機時間,以及大規模虛擬機遷移的成功率等都是數據中心HA的新關注要點。
1.2 全局測試與數據中心HA
隨著數據中心網絡的不斷變化和發展,一個關鍵的問題是:怎樣才能盡可能的了解真實網絡的HA故障切換指標?這種情況下,全局性的測試方法有助于確保實現復雜的相關功能和多設備的組合運用。“全局測試”不僅可以測試單個數據中心組件,而且可以測量整個數據中心的能力,并產生有意義的結果。全局測試還可以涵蓋TCP/IP的所有層次,并且可以測量通過數據中心網絡任意路徑的流量。在一個數據中心環境中,全局的HA測試意味著不僅是只對單個網絡組件的HA性能進行測試,還要確保每一個組件與數據中心其它新舊組件配合起來協同運作的可靠性和整體的HA能力。
全局測試的特點是基于真實應用的流量模擬來衡量網絡的整體指標,通過對流量特征的構造模擬,精確統計網絡的功能、性能和HA各項指標。基于測試結論分析評估網絡整體架構的合理性、擴展性等,為網絡優化提供數據參考。通過采用全局性的整體方案驗證和性能測量方法,能夠使這種復雜系統的測試評估更加簡化。
2 全局的HA測試方法
2.1 流量模擬
數據中心的業務流量主要分為服務器之間的內部流量和用戶端與服務器之間的外部流量,也稱為“東西向”流量和“南北向”流量。對應RFC規范中定義的測試流量類型則是“非網格型”和“部分網格型”,兩者的組合可以看作“全網格型”。由于轉發路徑和設備的處理方式不同,HA測試中需要同時關注這兩類流量的故障恢復情況。如圖1所示。
圖1 數據中心流量模擬
2.2 故障事件模擬
通過模擬網絡失效來計算HA指標,可以簡單的將失效歸類為鏈路故障、板卡故障、設備故障、多設備故障和站點故障。這些故障事件發生的概率依次降低,所以HA測試的關注點主要集中在鏈路、板卡和設備故障上,這也是數據中心網絡HA設計的最基本要求。常用的操作方式為接口的Up/Down 、線卡的拔出/插入、機框的加電/斷電等,特殊情況下也可以通過測試儀或被測設備的系統軟件功能來模擬HA事件。
2.3 HA測試量化統計
通過HA測試,不僅可以驗證被測系統在某些異常情況下是否可以保證功能的可用性,同時也可以通過精確統計得到業務流量中斷的量化指標。通過測試儀器構造一定速率的數據報文經過被測系統轉發,模擬某些故障情況下的報文丟失并統計出數量,從而計算出流量的中斷時間,來衡量被測系統的HA性能指標。計算公式如下:
故障失效恢復時間=(發包端口發包數-收包端口收包數)÷ 鏈路轉發速率
也可以通過L4-L7層測試儀模擬上層業務交互來更直觀的了解被測系統在各類異常情況下對業務的影響。如圖2所示。
圖2 BPS測試儀顯示TCP新建連接抖動情況
對于通過測試儀發起或參與的模擬網絡事件的測試項,還可以通過測試儀自身提供的高精度采樣功能來更加精確統計設備或網絡的性能。例如,在通過測試儀發送路由表項來測試設備的路由學習性能時,可以通過如圖3所示的高精度采樣功能來統計時間。
圖3 TestCenter測試儀顯示的高精度采樣功能
3 數據中心HA測試案例
3.1 IRF典型組網HA測試
圖4 數據中心IRF典型組網
如圖4所示,這是典型的數據中心網絡(接入5120+核心12500)兩層拓撲結構,核心層兩臺S12500采用IRF模式,可以簡化網絡邏輯結構,提高設備利用效率并簡化網絡管理。接入層采用5120EI交換機做二層雙上行接入,接入層鏈路為跨機筐鏈路聚合。出口設備采用SR6600路由器與12500交換機運行OSPF或BGP路由協議,12500與SR6600之間都為雙上行三層等價鏈路。其中,SR6600模擬了廣域網出口設備,但在真實場景中使用高端交換機較多。5120EI和SR6600分別連接兩個應用層測試儀(構造具有狀態特征的UDP和TCP流量)端口。通過對設備故障和鏈路故障的模擬,可以直觀得到組網中應用層業務的收斂時間、IRF和LACP的HA切換時間等。
需要精確統計時,可以用測試儀以標準報文大小模擬跨S5120EI和SR6600的南北向普通三層數據流,并以Full Mesh方式進行測試。記錄異常情況下全局系統的丟包數量從而計算HA中斷切換時間,重復測試3次記錄平均數據,如表2所示。這些數據對于評估網絡整體的HA能力,優化應用層業務部署都有重要意義。
普通流量丟包情況(帶寬500Mbps,128字節,422297 FPS)
表2 常見的IRF故障模擬和測試數據
通過測試數據可以很直觀的了解到整個網絡架構中各種應用在不同類型的故障情況下HA收斂的好壞指標。比如表2所示,鏈路中斷的HA收斂時間好于設備重啟的,設備重啟與交換機主控故障的HA時間相近,交換矩陣故障中斷時間最長等等。在了解到這些異常情況對網絡的影響程度后,便可以有針對性的通過網絡設計和優化配置加以改進,從而增加整個網絡架構的HA能力。
3.2 路由典型組網HA測試
圖5 數據中心路由性能HA測試組網
圖5的測試組網也模擬了典型的數據中心網絡。接入層交換機使用兩臺真實設備,在大規格測試項中會使用測試儀模擬更多的接入交換機。核心設備之間采用普通的三層路由結構,機房或站點間的出口設備“MAN Core”采用一臺高端交換機模擬,MAN Core通過多條等價三層鏈路與內部核心Core1和Core2連接。
初始情況下,測試儀端口1(與Access1相連)發向端口2(與Access2相連)的東西向流量是不通的。在測試儀端口2上發布路由后,等待各設備都學習到路由后才會收到報文。記錄測試儀從發布路由到測試儀收到流量的時間差,這個差值就是全網路由學習時間。由于采用傳統的測量流量圖記錄時間的方法誤差較大,可以采用TestCenter3.7版本中的高精度采樣功能來計算學習時間。如圖6所示。
圖6 TestCenter高精度采樣
為了測試的方便與準確,采用了TestCenter軟件中的command sequence功能執行流量、路由及采樣觸發的操作:
撤銷路由->停止流量發送等待10s->清除所有計數->等待5s->開始發送流量->等待5s->開始高精度采樣->等待5s->發布ospf路由->觸發高精度采樣。
command sequence執行完成后,等待高精度采樣進行10s,然后點擊端口高精度采樣視圖下的show chart:
紅線為開始出發發布路由的時間,藍色線為流量曲線,測量兩個時間的時間差便可得到路由在網絡中的學習時間。
Access2相連的測試儀上發布、撤銷一條路由,在Access1設備上學習到的時間,我們分別使用OSPF和BGP兩種路由協議測試10次的結果如下:
BGP :
撤銷平均值:8.06ms;發布平均值:1.57s
OSPF:
撤銷平均值:7.88s;發布平均值:1.29s
測試結果表明BGP路由的撤消收斂時間明顯優于OSPF。為了降低網絡故障對業務的影響,提高數據中心內部的HA性能,采用什么樣的路由協議一直被很多用戶所關注。對于路由協議的運用,有一些傳統的使用模式,比如在數據中心內部OSPF是被大家廣泛認可、使用較多的路由協議。而BGP是廣域網上幾乎絕對的域間路由協議,但它只用于廣域鏈路的觀念正在慢慢地被改變。基于上述的測試結果,越來越多的用戶也會逐漸認可并開始實踐采用BGP作為站點內部路由協議的解決方案。
4 結束語
通過全局的組網HA測試,我們可以模擬數據中心真實的應用場景和業務類型,直觀和精確的了解不同類型的故障下HA的收斂情況。也可以了解不同技術和協議在特定組網中的HA性能對比情況,根據其特點和優劣勢來做出選擇,從而更好的設計和優化用戶的真實環境。