數據中心的故障類型眾多,但故障所導致的結果卻大同小異。即數據中心中的設備、鏈路或server發生故障,無法對外提供正常服務。緩解這些問題最簡單的方式就是冗余設計,可以通過對設備、鏈路、Server提供備份,從而將故障對用戶業務的影響降低到最小。但是,一味的增加冗余設計是否就可以達到緩解故障影響的目的?有人可能會將網絡可用性與冗余性等同起來。
事實上,冗余性只是整個可用性架構中的一個方面。一味的強調冗余性有可能會降低可用性,減小冗余所帶來的優點,因為冗余性在帶來好處的同時也會帶來一些如下缺點:
w網絡復雜度增加
w網絡支撐負擔加重
w配置和管理難度增加
因此,數據中心的高可用設計是一個綜合的概念。在選用高可靠設備組件、提高網絡的冗余性的同時,還需要加強網絡構架及協議部署的優化,從而實現真正的高可用。設計一個高可用的數據中心網絡,可參考類似OSI七層模型,在各個層面保證高可用,最終實現數據中心基礎網絡系統的高可用,如圖1所示。
圖1數據中心高可用系統設計層次模型
網絡架構高可用設計
企業在進行數據中心架構規劃設計時,一般需要按照模塊化、層次化原則進行,避免在后續規模越來越大的情況再進行大規模的整改,造成時間與投資浪費。
模塊化設計
模塊化設計是指在對一定范圍內的不同功能或相同功能不同性能、不同規格的應用進行功能分析的基礎上,劃分并設計出一系列功能模塊,模塊之間松耦合,力求在滿足業務應用要求的基礎上使網絡穩定可靠、易于擴展、結構簡單、易于維護。
層次化設計
包括網絡架構分層和應用系統分層兩個方面。在當前網絡及安全設備虛擬化不斷完善的情況下,應用系統分層可完全通過設備配置來實現邏輯分層,不影響網絡的物理拓撲。對于網絡架構層次化設計,選擇三層架構還是二層架構是不少企業進行數據中心網絡建設時面臨的難題。
從可靠性的角度來看,三層架構和二層架構均可以實現數據中心網絡的高可用。近年來隨著云計算的逐漸興起,二層扁平化網絡架構更適合云計算網絡模型,可以滿足大規模服務器虛擬化集群、虛擬機靈活遷移的部署。二層架構和三層架構兩者之間沒有絕對的優劣之分,企業用戶可根據自身的業務特點進行選擇。也可以先二層,后續針對某些特定的功能分區采用三層組網。
設備層高可用設計
設備可靠是系統可靠的最基本保證,數據中心核心交換區設備的可靠穩定尤為重要。盡管可以通過架構、策略、配置等的調整和優化等多種手段降低核心設備的故障幾率以及影響范圍,但若要解決最根本的設備本身的軟硬件故障,則必須選用數據中心級的網絡設備。
關于數據中心級設備,業界還沒有標準的定義,但從目前主流網絡設備供應商提供的數據中心解決方案產品可以看出,數據中心級交換機應具備以下特征:
1)控制平面與轉發平面物理分離
控制平面與轉發平面硬件物理分離,引擎切換時不影響轉發,可實現零丟包。同時控制平面與轉發平面均提供獨立的冗余架構,實現控制與轉發兩級冗余,保證更高的可靠性。
2)關鍵部件更強的冗余能力
除了引擎和交換網板的冗余外,此類設備的電源一般均可以配置多塊,實現N+M的冗余,保證電源的可靠性更高;另外風扇的冗余也由原來的風扇級冗余,提高到了風扇框冗余,每個獨立的風扇框內多個風扇冗余。
3)虛擬化能力
數據中心的復雜度越來越高,需要管理的設備也越來越多,設備的虛擬化可將同一層面(核心、匯聚、接入)的多臺設備虛擬化為一臺,進行設備的橫向整合,簡化設備的配置和管理。
4)突發大流量的緩沖能力
基于CLOS架構的數據中心級設備對端口的緩存容量進行擴容,并采用了新一代的分布式緩存機制,將原有的出方向緩存移至入方向,在同樣的端口緩存容量條件下,這種分布式的緩存機制可以更好的緩存多對一的擁塞模型,能夠更好的吸收數據中心的突發大流量。
鏈路層(L2)高可用設計
通過以H3CIRF2為代表的虛擬化技術,在不改變傳統設計的網絡物理拓撲、保證現有布線方式的前提下,實現網絡各層的橫向整合,即將交換網絡每一層的兩臺、多臺物理設備形成一個統一的交換架構,減少了邏輯的設備數量,同時實現跨設備的鏈路捆綁,消除環路的同時保證鏈路的高可用。
協議層(L3)高可用設計
數據中心網絡的協議層高可用設計可以從以下兩個方面考慮:
1)快速檢測與切換
為了減小設備故障對數據中心業務的影響、提高網絡的可用性,設備需要能夠盡快檢測到與相鄰設備間的通信故障,以便能夠及時采取措施,從而保證業務繼續進行。通常情況下,路由協議中的Hello報文機制檢測到故障所需的時間為秒級,在這時間內會導致數據中心內部Gbps速率級高速數據傳輸的大量數據丟失。
BFD(BidirectionalForwardingDetection,雙向轉發檢測)在此背景之下產生。它是一套全網統一的檢測機制,用于快速檢測、監控網絡中鏈路或者IP路由的轉發連通狀況,保證鄰居之間能夠快速檢測到通信故障,50ms內建立起備用通道恢復通信。BFD檢測可部署在廣域/域城出口模塊,如圖9所示。數據中心核心層與外聯模塊(廣域區、城域區)之前運行 OSPF動態路由協議,并在核心層交換機上配置BFD與OSPF路由聯動。廣域、城域路由設備或鏈路出現故障時,核心交換機快速感知,并通告OSPF進行快速收斂,縮短數據中心外聯數據故障恢復時間。
2)不間斷轉發
在部署了動態路由協議的數據中心網絡中,若設備進行主備切換時,將會導致它與鄰居關系出現震蕩。這種鄰居關系的震蕩將最終導致路由協議的震蕩與重新計算收斂,使得主備切換路由器在一段時間內出現路由黑洞或者導致鄰居將數據業務進行旁路,進而會導致業務出現暫時中斷。
為了實現不間斷轉發,設備本身需要支持數據轉發與控制分離,支持雙主控設計;同時需要部分保存協議的狀態(控制平面),并借助鄰居設備的幫助,實現發生主備切換時控制平面的會話連接不重置、轉發不中斷的目的。其相應的技術為路由協議的GracefulRestart(平滑重啟)擴展,簡稱GR。
GR 機制的核心在于:當某設備的路由協議重啟時,能夠通知周邊設備在一定時間內將到該設備的鄰居關系和路由保持穩定。該設備路由協議重啟完畢后,周邊設備協助其進行路由信息同步,使其各種路由信息在盡量短的時間內恢復到重啟前的狀態。在整個協議重啟過程中,網絡路由和轉發保持高度穩定,報文轉發路徑也沒有任何改變,整個系統可以不間斷地轉發IP報文。
應用層(L4~L7)高可用設計
在數據中心網絡層面實現L4~L7層的高可用,可采用負載均衡的方案。L4~L7層負載均衡一方面可以提高服務器的響應能力和鏈路的帶寬利用率,另一方面可以保證單臺服務器或單條鏈路出現故障后,業務數據無縫分攤到其它服務器和鏈路,從而實現數據中心的高可用。
1)鏈路負載均衡(LLB)
鏈路負載均衡常部署在數據中心的廣域接入區和互聯網接入區,通過靜態表項匹配及動態鏈路檢測,對多條鏈路狀態進行實時的探測和監控,確保流量以最合理及快速的方式分發到不同鏈路上,實現業務的高效傳輸。
對于數據中心廣域接入區,由于廣域網出口流量仍然是企業內網數據流,在L4層一般可通過IP報文的五元組特征區分出不同的業務流,因此可直接在路由器上通過分層CAR、跨端口的流量轉發實現負載分擔、關鍵業務帶寬保證、廣域鏈路捆綁。無需專門的LB設備。
2)服務器負載均衡(SLB)
目前大多數應用系統都采用了BS架構,企業數據中心的WEB服務器需要承接來自內網和外網眾多用戶的連接請求,因此單臺服務器的性能和可靠性可能都無法滿足,為實現更多的用戶接入數和服務器冗余,可在WEB服務器部署負載均衡。服務器的負載均衡部署可采用以下兩種方式實現:
服務器集群軟件
服務器集群軟件(如MSCS)一般要求服務器群在同一VLAN內,其它無特殊要求在此不做詳細介紹。
服務器負載均衡(SLB)設備
SLB設備提供VSIP(虛擬服務IP),用戶訪問VSIP請求服務后,LB設備根據調度算法分發請求到各個實服務。
總結
數據集中意味著風險的集中、響應的集中、復雜度的集中、投資的集中……,高可用設計與部署是企業數據中心建設的永恒話題。“勿在浮沙筑高臺”,網絡作為數據中心IT基礎承載平臺,是IT系統高可用的基本保證。數據中心網絡要實現高可用,技術并不能解決所有問題,還需要完善的運維流程、規章制度、管理體制等多方面的配合。結合企業業務的發展趨勢,不斷的總結與積累,是一個長期的、循序漸進的過程。