當前位置:
首頁 > 科技 > 分散式ExpressNet SDN在盛大雲平台的網路部署實踐

分散式ExpressNet SDN在盛大雲平台的網路部署實踐

1

前言

當今雲計算、人工智慧、大數據平台正產生著一系列顛覆性的技術創新,軟體的價值被前所未有的推向高峰,「軟體吞噬一切」在整個 IT行業中盛行。幾十年沉澱下來的網路技術領域也開始熱鬧非凡,各大標準組織、學派、企業都爭先恐後地制定網路行業標準,試圖用通用硬體來承載軟體,為用戶帶來物美價廉、互通性高、可持續性升級換代的新一代網路解決方案。

而我和團隊卻無暇顧及這場「熱鬧」,因為我們有自己的故事——「思華分散式 ExpressNet 解決方案與盛大遊戲 G雲 2.0的故事。

2

思華 ExpressNET SDN的核心方案特點

很多人覺得奇怪:在殘酷的雲計算市場,其燒錢程度異常驚人。作為遊戲行業巨頭的盛大遊戲為何要選擇思華科技?這個問題同樣困擾著我。相比「出奇制勝」,我和團隊選擇了更穩健的做法,在設計盛大 G雲 2.0網路過程中,結合系統架構的通用性和易用性,同時針對遊戲行業的痛點,例如網路延時、彈性擴容、安全等,進行定製化的架構設計。新的網路架構主要要著眼於以下幾點:

標準且開放化:無論是物理網路還是虛擬化網路,必須採用業界相對標準的組網模型和網路協議,兼顧開放性和互通性,實現網路的模塊化設計,為今後平台的演進提供標準化模型;

靈活擴展性:需要引入 Overlay VxLAN技術替代原有的 VLAN來更加靈活的支持雲主機對於網路的要求,包括:熱遷移、租戶隔離、多租戶等;

高性能:對於虛擬化網路 Overlay,必須滿足遊戲場景下對網路延時的苛刻要求。VPC網路需要滿足租戶各雲主機(虛機、物理機)之間高吞吐、低延時的網路互通要求;

高可靠性:無論是 Underlay網路,還是 SDN控制器,必須考慮單點故障和 HA等機制,從而保障整個網路 7 x 24小時高可靠性要求;

解耦合:需要考慮控制和轉發平面的解耦合,以及虛擬化網路和物理設備的解耦,以便實現雲主機的靈活接入,熱遷移等功能;

自動化:引入 SDN控制器,實現對租戶網路 VPC的集中管理,支持物理網路和虛擬化網路的快速部署和靈活擴展;

在我看來,提供一個切實可行的,能滿足盛大遊戲現有網路架構緊迫需求的方案才是此次合作的制勝法寶。發現需求、滿足需求比沒頭沒腦的創造一個解決方案要好得多。

3

ExpressNET方案在盛大混合雲平台的應用實踐

盛大遊戲 G雲 2.0整體網路部署架構

經過需求分析和論證工作,我和團隊最終決定,引入以盛科 SDN白牌交換機為網路承載(同時支持華為等數據中心交換機),思華科技 ExpressNET為控制平面的方案。該方案沒有僵化地採用純 OpenFlow的方式,而採用了支持 VxLAN的數據中心交換機和開放 API相結合方式,由網路設備提供出足夠靈活的 API供思華的 SDN控制器(ExpressNET)調用,思華 Express NET整體架構如下圖所示:

盛大 G雲 2.0 整體網路部署架構如下圖所示:

思華 ExpressNET網路平台為雲主機、裸機提供了必要的實體和虛擬網路環境,包括但不限於:VPC內部二三層東西訪問、南北向公網訪問、虛機和物理機訪問、跨雲跨 IDC訪問等,同時以 VPC為單元對租戶進行安全隔離、公網 QoS限制。整個網路架構主要包含了下列組件及其功能特點說明:

由可編程標準化網路硬體設備(例如盛科 E系列,華為 CloudEngine系列等)組成 Clos IP Fabric:其承擔了整個底層網路(underlay)功能,為上層的虛擬化網路提供了堅實的網路基礎,同時作為 VxLAN的端點,提供高性能的 VTEP隧道終結。該架構具有運維簡單、等價多路徑、水平擴容和可編程化特點,已被互聯網公司,數據中心和傳統企業 IT所廣泛接受;

位於各計算節點和 Neutron節點的思華 ExpressNET分散式控制器:作為思華 ExpressNET尤為重要的虛擬化網路的控制平面,提供二層、三層網路、DHCP、NAT、QoS、ARP proxy等功能,各功能採用 App plugin的方式實現,易於擴展。採用分散式控制器的好處在於消除了單點故障,性能有保障,同時兼顧了 SDN的設計理念,將控制和轉發平面進行了解耦;

位於 Neutron節點的思華 ExpressNET分散式控制器:該控制器負責通過廠商自定義 RPC或者標準的 NetConf協議對 Underlay網路設備進行管控,從而打通虛擬和物理網路的控制平面,真正做到虛實網路的結合與聯動;

位於各計算節點的 OpenVswitch(OVS):以 OpenFlow流表的形式提供了高效的網路轉發平面,並支持 Intel DPDK擴展,滿足今後對性能的進一步要求;

採用 VxLAN隧道封裝技術提供租戶 VPC虛擬化網路:不僅實現了虛機到虛機的二 /三層網路連通,同時實現了 VPC內虛機到裸機的二 /三層直通,以及 G雲到用戶線下 IDC的直通,各 VPC安全隔離;

考慮到 Host VxLAN性能的限制,採用 VxLAN offloading技術將 VxLAN加 /解封裝上移到物理交換機 ToR上,不僅提高了網路吞吐、降低了網路延時,同時將寶貴的主機計算資源預留給雲主機。

為何選擇思華 ExpressNET架構做網路部署

網路設計之初,分析了 OpenStack 原生 Neutron網路架構上的一些缺陷和不足,在兼容 Neutron ML2 Framework的基礎上,參考了市面上已有的開源項目,引入了思華 ExpressNET全面替換原生 Neutron網路的方案,從而彌補了原生方案的不足,主要體現在以下幾個方面:

1. ExpressNET 以 OpenFlow流表實現分散式 DHCP取代集中式的 DHCP:

OpenStack原生模型設計會在 Neutron節點上造成大量的資源佔用和單點故障風險,例如有 100個租戶,每個租戶有 100個子網,那麼在 Neutron節點上就要維持 100 x 100 = 10,000個 DHCP進程,消耗大量 CPU資源,並且增加了維護和排障難度。

思華 ExpressNET解決方案利用 OVS OpenFlow流表將 DHCP功能分散到各個計算節點實現,不僅有效的避免單點故障,同時減少了對計算資源的消耗,簡化了系統部署,降低了運維排障難度。

2. ExpressNET以 OpenFlow流表方式實現的分散式 vRouter和 DNAT替代原生 Neutron的 vRouter模型:

OpenStack原生的 Neutron有兩種 vRouter模型:

一種是早期版本的集中式 vRouter實現,該模型下所有的三層流量都會經過位於 Neutron節點的虛擬路由器(通過網路 NameSpace實現),不僅增加了網路單點故障、限制了網路吞吐,同時加大了網路延時,如下圖所示:

隨後 OpenStack提出了分散式 vRouter即 DVR的概念,在各計算節點上為租戶創建多個 NameSpace並安裝相應路由作為租戶本地化的 vRouter,雖然該方案在一定程度上解決了集中式模型的一些問題,但由於其依舊採用 NameSpace的實現方式,不僅耗費計算節點大量的 CPU資源,公網 IP地址(用於 Floating IP NameSpace),同時並未降低網路延時和排障難度,如下圖所示:

而在盛大的案例中,思華 ExpressNET擁有 L2/L3和 DNAT App plugin,使得位於各計算節點的本地控制器提供路由和地址轉換等控制平面功能,並結合 OVS OpenFlow流表實現轉發平面功能,不僅有效的解決了集中式路由帶來的諸多問題,同時降低了複雜度、提高了網路彈性,釋放了本地計算資源,減少了公網 IP地址浪費以及降低了網路延時,如下圖所示:

3. ExpressNET支持多公網網段(Multiple Elastic IP Pool):

原生的 OpenStack無法很好的支持多外網功能,導致平台無法使用多個公網 IP網段,從而增加了網路實際部署難度。如下圖所示,當申請了多個公網網段後,由於 OpenStack的限制,無法讓虛機 VM1申請預設公網網段 Pool 1以外的地址段,如 EIP Pool 2 & Pool 3(每個虛機一個公網 EIP):

ExpressNET取消該限制並增加相應的保護機制,使得平台可以將任何可用的公網地址段與分散式的路由器相關聯,極大的降低了對 IDC網路的需求。如下圖所示,在平台管理員創建完額外的外網及網段後(External Network 2 & 3),租戶可以在控制台中從 EIP Pool 1, 2 &3中隨機挑出一個公網 IP,綁定到其指定的虛機或者物理機上。

4. ExpressNET擴展 OpenStack 網路功能,支持 VPC與線下 IDC互聯互通:

盛大案例中必須要考慮用戶雲上資源和原有 IDC的互聯互通,典型的應用場景是各工作室或者技術部門既有在原平台中的 legacy系統,又有新業務在 G雲 2.0上開展,同時新舊系統需要二層或者三層網路直通而不經過 NAT。如下圖所示,思華 ExpressNET方案利用分散式虛擬路由器和底層 Underlay網路設備,實現了雲上 VPC與雲下 IDC不經過 NAT轉換的網路直通,雲上的虛機或者物理機可以直接訪問盛大原有 legacy系統的 IP,不僅滿足了用戶原有的使用習慣,降低了上雲的複雜度,同時保證了網路的延續性和透明性。

5. ExpressNET支持跨 IDC的 VPC Peering:

雖然該需求目前在盛大雲平台中並不是非常強烈,但是伴隨著多地 IDC服務的提供,部分平台使用者希望將分散在各地 IDC的 VPC進行互通,這也是很多公有雲例如 AWS、阿里雲所推出的 VPC Peering網路服務。相應的解決方案可以按照以前 AWS或者阿里雲以用戶 VPC為單位,部署相應的軟體 VPN網關,實現 VPC的互聯互通,但是缺點是用戶參與度過高,部署方案複雜,性能受限。參考了最新的阿里雲和 AWS的 VPC Peering高速互聯方案,依託盛大原有的內網資源,思華 ExpressNET通過在虛擬路由器中引入成熟的靜動態路由協議,結合外部網路設備,打造了一張高性能、高擴展性的 DCI(數據中心互連)網路。數據中心之間的網路設備藉助成熟的 BGP-EVPN技術實現控制平面,依舊採用 VxLAN作為轉發平面以保證整個設計的一致性。

網路平台改造成效

通過引入思華科技 ExpressNET SDN解決方案後,盛大遊戲 G雲 2.0網路平台收穫了以下的顯著成效:

高度自動化:整個物理和虛擬化網路實現了自動化管理、運維和監控,提升了平台效率、減少了人為操作故障;

高度靈活和開放:通過將軟體和硬體、轉發和控制平面解耦,提供了一張靈活的租戶虛擬化 Overlay VPC網路,同時不被硬體網路設備商綁定,支持多種網路設備而無需改動上層 overlay網路設計;

高性能:通過軟體和硬體協同工作,將網路硬體設備先天性能優勢發揮到極致;

高可靠性:通過思華分散式的 SDN控制器,消除了單點故障,保障了平台 7 x 24穩定運行。

4

寫在最後

在盛大遊戲的案例中,SDN帶來的好處不僅僅是數據中心、也不僅僅是基礎架構,而是包括盛大遊戲各個場景的服務和功能,都能在通用的策略框架下實現高效、可靠、安全地運營,實現無縫的移動性、無縫的工作負載遷移。

隨著盛大 G雲 2.0的不斷深化運營和各個系統上線,網路方面也將陸續面臨一些新的需求和挑戰,例如裸機網路的優化,分散式 SNAT的需求,NFV,VPC內的服務鏈(Service Function Chain),與容器網路的融合等等。因此,我們也將在未來結合自身的研發經驗,結合諸如 OpenStack等開源軟體社區、白牌 SDN交換機等,以思華 ExpressNET為基礎為盛大構建一個可持續演進、高質量的網路架構。

作者介紹

張琳,思華科技美國公司雲計算和網路架構師,擁有近 18年運營商和大型企業 IT基礎架構、雲計算和網路方面的諮詢、設計和實施相關經驗。加入思華之前,在美國 Juniper Networks從事專業技術服務工作 5年,為美國 Tier 1 運營商,包括 Verizon、AT&T、Google等提供專業的網路技術服務。曾就職於 IBM Global Service,Dimension Data公司從事大型 IT諮詢和架構設計工作。擁有多項行業技術認證,包括 Cisco CCIE #11122,Juniper JNCIE #300,VMWare VCP,IBM Accredited IT Architect等。

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

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


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

這篇推送,只有幾張圖
Atlassian:一家沒有銷售團隊,不靠融資做到百億美元市值的技術公司

TAG:InfoQ |