當前位置:
首頁 > 最新 > 從傳統網路架構到SDN化,甜橙金融數據中心演進之路

從傳統網路架構到SDN化,甜橙金融數據中心演進之路

作者介紹

李伊仁,甜橙金融信息技術部高級網路工程師,多年網路架構設計經驗,實施集團支付數據平台。

網路世界每一次技術變革都需要大量時間來驗證,雖然更多的技術達人對於新技術的接受能力在不斷提高,但新技術的普及和應用依然需要花費大量時間。企業在發展過程中縮減預算的需求不斷擴大,企業員工則通過自動化的維護平台設施來簡化操作步驟,而網路世界的爭論點主要集中在如何從使軟體定義網路與網路虛擬化的新架構代替傳統乙太網架構。

STP架構網路的替代品Fabrics具有可擴展、高帶寬的架構。對於SDN來說,SDN可能不像一個產品,更像一種架構。首先我們來看一下SDN與傳統網路架構的區別:

一、傳統數據中心網路架構逐漸落伍

在傳統的大型數據中心,網路通常是三層結構。架構模型包含了以下三層:

Access Layer(接入層):接入層位與網路的最底層,負責所有終端設備的接入工作,並確保各終端設備可以通過網路進行數據包的傳遞。

Aggregation Layer(匯聚層):匯聚層位於接入層和核心層之間。該層可以通過實現ACL等其他過濾器來提供區域的定義。

Core Layer(核心層):又被稱為網路的骨幹。該層的網路設備為所有的數據包包提供高速轉發,通過L3路由網路將各個區域進行連接,保證各區域內部終端設備的路由可達。

一般情況下,傳統網路還存在著一些優點:

精確的過濾器/策略創建和應用:由於區域、終端地址網段明確,可以精細控制網路策略,保證流量的安全。

穩定的網路:區域的明確劃分,網路設備的穩定架構,使網路更具有穩定性。

廣播域的有效控制:由於三層架構中間採用L3模式設計,有效控制廣播域的大小。

傳統網路架構雖然穩定,但隨著技術的不斷發展,應用不斷的多元化以及對業務的高冗餘化的需求,暴露出了一些傳統網路的弊端。

隨著公司的發展,傳統網路架構漸漸開始無法跟上步伐,逐漸出現了以下問題:

1

業務流量模型不清晰

隨著網路的發展、各種新技術的產生,數據中心內部、伺服器之間協同處理、計算,導致由東向西的流量逐漸增大,超過了由南向北的流量。而傳統三層架構伺服器間交換,都要過三層核心,多層轉發,增大了網路的延遲,還浪費了核心寶貴的資源。與此同時,我們將業務拆分成多個模塊,並部署在不同的區域中,由於應用的不斷發展,模塊的數量越來越多,模塊之間的調用越來越頻繁,可能一次完整的應用流程需要經曆數十個模塊,模塊之間的頻繁調用大大消耗了網路設備的資源。

2

橫向擴展能力不足

傳統數據中心使用STP技術,雖然上聯多根鏈路,但都是主備關係,僅有一根鏈路能跑流量,無法承載數據中心日益增長的業務。儘管後續使用了有相關的Ethernet Channel、堆疊、VSS等技術,來達到鏈路冗餘的需求,但是堆疊、Ethernet Channel不可能無限地進行擴展。

3

廣播域過於龐大

隨著業務的發展,計算資源被池化。為了使得計算資源可以任意分配,需要一個巨大的二層網路架構。整個數據中心網路都是多個L2廣播域,這樣,伺服器可以在規定的區域地點創建、遷移,而不需要對IP地址或者默認網關做修改。不斷地業務擴展,造就了一個巨大的二層廣播域,一旦出現一點問題就造成巨大的網路問題,導致業務中斷,業務的高可用性就無法保證。

4

計算資源無法快速上線

隨著業務的不斷發展,計算資源的虛擬化。當需要進行虛擬資源部署時,嚴格安全防護的要求下,需要進行安全設備的策略開通。從部署到正式上線使用之間的耗時會長達1小時之久。無法滿足在突發情況下,快速增加計算資源。

由於安全設備以及設備上聯位置的限制,無法在任意的計算資源池中隨意的創建、遷移;無法合理分配資源池的各種硬體資源,造成資源的分配不均衡。一旦某資源池已達閾值,就無法繼續計算資源的橫向擴展。

5

網路延時過大

在使用傳統網路架構時,每個業務模塊都是一個煙囪結構,業務模塊互相調用需要經過多個三層設備(平均需要經過6次物理設備)其中還可能包括防火牆等安全設備。受限於設備的性能,網路架構的主備方案。數據流量每經過一次設備都會增加一點延遲。雖然每一次延時都是微乎其微,但是累計次數多了,對於業務來說這個延時可能就導致用戶體檢較差。

二、SDN網路帶來的好處

通過了解,我們深知自己的傳統網路存在著一些問題,於是進行了各種技術可行性測試。為了不斷提升網路的承載能力,制定過多種方案,例如:傳統網路的優化、當前網路的SDN化等。

最終在機房網路架構設計中,我們開始和思科進行了比較深度的合作。目前,我們是全球第三個大規模採用了思科ACI網路技術的公司。思科APIC(Application Policy Infrastructure Controller)是以應用為中心的基礎架構(ACI)結構的自動化和管理的統一集中點,提供對所有節點信息的集中訪問控制,優化應用的規模和性能,並支持在物理和虛擬資源之間進行靈活的應用配置。

管理員可通過APIC提供各種豐富的API介面對設備進行配置、管理、策略下發等操作行為;控制器則通過OpFlex協議將策略推送給ACI環境中的各個節點Leaf。雖然APIC會將策略推送到各節點Leaf上,但控制器並不參與任何流量的轉發,所以即使發生有5台控制存在問題的極端情況下,網路層面的流量轉發功能還是可以正常穩定地運行。

最終我們在南京節點完成了SDN網路的架設,並且通過上雲的最終決戰8小時,完成了業務的整體遷移。雖然看起來這場戰役驚心動魄,但我們的內心深處並沒有太大波動,畢竟從開始POC到現在完成網路搭建,我們歷經了1年時間的充足準備。特別是在前期的POC期間,我們對於一個新技術的不斷研究,夜以繼日地不斷測試各個應用場景,換來了一次成功的戰役。

網路SDN化之後,我們解決了以前的一些問題,同時也提供了更人性化的管理方式。下圖是我們網路架構內部示意圖:

1

業務流量的明確劃分

將原有業務劃分從一個應用一個區域的劃分方式,在使用SDN後,變更為一個服務體系作為一個區域進行劃分(例如:APP區域、資料庫區域、中間件區域等)。在每個區域中劃分多個Endpoint Group(以下簡稱EPG)來準確區分業務模塊,更清晰地了解業務之間的訪問關係。

2

無限定的橫向擴展

在現有的SDN網路中,通過使用Anycast Gateway的方式將網關部署在各個Leaf節點上。即使有新設備加入網路,無論處於任何區域,都可以準確的進入相對應邏輯位置。

3

虛擬資源無限制的變更

ACI,通過VM Networking與VCenter互相聯動,並下發vNIC供虛擬機使用,虛擬機只需要選擇對應虛擬網卡就可以進行業務上線。同時各個虛擬機對應的EPG通過合約的形式開通策略。在SDN中所有相同業務都部署在同一個EPG中,所有策略的開通並不是基於IP地址來開通,只需要在不通的EPG之間開通策略即可,所以無需像傳統網路進行IP對應的策略開放方式進行SDN網路策略開通。虛擬化資源可以在任意宿主機上進行創建、遷移,沒有任何的物理位置的限制。

4

控制平面和轉發平面解耦合

在傳統的網路交換設備中,控制平面和轉發平面是緊密耦合的,被集成到單獨的設備盒子中。各個設備的的控制平面被分布到網路的各個節點上,很難對全網的網路情況有全局把控。因此SDN網路一個重要的理念就是把每台單獨網路設備中的控制平面從物理硬體中抽離出來,交給虛擬化的網路層處理,整個虛擬化的網路層載入在物理網路上,屏蔽底層物理轉發設備的差異,在虛擬空間內重建整個網路。這樣一來,物理網路資源被整合成了網路資源池,如同伺服器虛擬化技術把伺服器資源轉化為計算能力池一樣,它使得網路資源的調用更加靈活、滿足業務對網路資源的按需交付需求。

5

集中化的網路控制

將控制平面進行集中控制,中央控制器可以獲取網路資源的全局信息並根據業務需要進行資源的全局調配和優化,如QOS、負載均衡功能等。同時集中控制後,全網的網路設備都由中央控制器去管理,使得網路節點的部署以及維護更加敏捷。由於集中化控制,ACI提供一個可視化的管理界面,通過界面中的評分以及錯誤,可以更有效的提供給運維工程師查找到問題的所在之處,提供一個快速定位的有效依據。

三、SDN架構的後期展望

1

跨廠商自動化聯動

思科提供了其他廠商的管理工具包供ACI使用,通過服務鏈(Service Chain)功能進行其他設備的配置推送。未來整個網路的配置都可以通過ACI進行遠程控制,無需通過繁瑣的命令行進行配置。即使對設備命令不熟悉的工程師也可以進行配置。

2

自動化配置平台

ACI提供豐富的API介面供第三方軟體調用,建立一個自動化運維平台通過API介面進行ACI配置的推送、查看設備的運行狀態實時體現。可以完全掌握整個SDN的運行狀況,準確及時地判斷。在問題將要發生時,得到及時的處理和解決,避免了最終解決問題已出,維護人員還未得到告警的窘相。

3

各全面的網路監控

在網路設備中進行流量抓取取樣,通過報頭分析網路中數據包的走向。通過流量排序可以清晰的知道各個模塊調用的次數,結合研發部門進行探討,為優化網路、優化應用做一個準確的依據。

四、一些思考

前面說了那麼多思科ACI在架構以及後期使用過程中的體驗,再聯想起近期思科爆出的漏洞事件,最後想就自己的一些想法來談談思科Smart Install的遠程代碼執行漏洞:

Smart Install功能是交換機在部署時配置和鏡像管理功能,它可以自動換成初始化,新的交換機可以通過TFTP等協議自動載入操作系統鏡像。這就意味著在無配置的管理員的情況下啟動交換機,當設備配置發生變化等情況,還可以提供配置備份的功能。

Smart Install Client默認開啟TCP 4786埠,用來進行Smart Install功能。當服務處理一段特殊的惡意信息,會發生交換機的緩衝區堆棧溢出,從而造成設備故障。

由於思科ACI通過控制器管理,無需額外的設備進行自動化配置等行為,故沒有該漏洞。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 DBAplus社群 的精彩文章:

同為分散式緩存,為何Redis更勝一籌?
滴滴彈性云:從物理機到Kubernetes的那些坑與心得

TAG:DBAplus社群 |