双十一丝般顺滑体验背后:阿里云洛神网络虚拟化系统揭秘
摘要: 摘要:2017年12月20日在北京云棲大會上,阿里云高級技術(shù)專家梵葉在計算與網(wǎng)絡(luò)分論壇上做了主題分享《雙十一絲般順滑體驗背后:阿里云洛神網(wǎng)絡(luò)虛擬化系統(tǒng)揭秘》。為大家介紹了洛神系統(tǒng)的發(fā)展過程,系統(tǒng)架構(gòu),高可用性設(shè)計和虛擬交換機等重要組件。
摘要:2017年12月20日在北京云棲大會上,阿里云高級技術(shù)專家梵葉在計算與網(wǎng)絡(luò)分論壇上做了主題分享《雙十一絲般順滑體驗背后:阿里云洛神網(wǎng)絡(luò)虛擬化系統(tǒng)揭秘》。為大家介紹了洛神系統(tǒng)的發(fā)展過程,系統(tǒng)架構(gòu),高可用性設(shè)計和虛擬交換機等重要組件。首次向外界全面揭開洛神網(wǎng)絡(luò)虛擬化系統(tǒng)的神秘面紗。本文是這次講演的文字整理。
客觀的說,今年雙11的體驗還是不錯的。我自己作為例子,之前幾年的雙11的0點時候,我自己的購物車的一波提交,一般瞬間進入了排隊狀態(tài),但今年我的體驗明顯不同,一波就成功了。雙11的底層技術(shù),實際上是建立在網(wǎng)絡(luò)產(chǎn)品的基礎(chǔ)之上的,接下來,我要給大家分享的主題就是,雙11的這一切,我們是如何做到的。我會把阿里巴巴雙11上云叫做大象在云上跳舞。為啥說是大象呢,因為雙11的量是在是太大了,想要完美支持雙11真的不是容易的事情,尤其是雙11零點的峰值。大家都知道AWS的ELB的預(yù)熱,面對這樣的峰值挑戰(zhàn)一定是無力的。
這里有幾個數(shù)字分享給大家。首先是關(guān)于兩個結(jié)果的,一個是100%的流量比例都是在云上的,一個是32.5萬筆每秒的交易峰值。這個交易峰值是什么概念呢,大家知道么,2009年的時候第一次雙11,交易峰值是200筆每秒,在這個大量的交易下,云網(wǎng)絡(luò)穩(wěn)如泰山。另外三個關(guān)于極限性能的值,一個是單一網(wǎng)絡(luò)的ECS數(shù)量,這個是10w臺。之前我剛好到深圳拜訪一個客戶,這個客戶是自己在家里用Openstack搭云網(wǎng)絡(luò)玩的,這個客戶剛好給我吐槽,說自己搞了100個計算結(jié)點,結(jié)果控制器就跪了。另外一個是160G的負載均衡實例的帶寬,我相信這個值已經(jīng)超過了絕大多數(shù)的硬件負載均衡器。最后一個是10分鐘擴容上千臺ECS。這個舉個例子,這個彈性的擴容能力在鹿晗曝光戀情的當天發(fā)揮了重要的作用。
不是所有的云計算公司都有機會承受雙11的洗禮,可能除了阿里云以外的任何一個云計算廠商都沒有經(jīng)歷過這樣的體驗。但盡管阿里巴巴是一個非常極致和奇葩的客戶,但除了阿里巴巴之外,阿里云上面還有數(shù)以百萬計的客戶,滿足一個客戶的需求,服務(wù)一個客戶也許總是容易的,可以為這個客戶完全定制系統(tǒng),但同時服務(wù)百萬級的客戶,則絕對不是一件容易的事情。
阿里云網(wǎng)絡(luò)產(chǎn)品是如何滿足用戶的呢,從表面來看,我們實際上就是靠一套基于API的SDN調(diào)度系統(tǒng),來創(chuàng)建和刪除資源來保證的。而這些產(chǎn)品的背后,就是洛神系統(tǒng)。洛神系統(tǒng)來源于中國的古典神話,我們希望我們的網(wǎng)絡(luò)產(chǎn)品,和河運的槽道一樣,能夠通暢的連接資源。
當用戶越來越依賴于云上,那么用戶一定希望,云上的感受不是僅僅是業(yè)務(wù)的使用,而是不斷提升的可視化,可運維性和不斷的附加值的產(chǎn)生。
這個就是第三代洛神,智能洛神。
好的,接下來,我們來看下,現(xiàn)在的洛神架構(gòu)是如何支撐這些豐富的特性的。和傳統(tǒng)的SDN的架構(gòu)一樣,洛神的系統(tǒng)架構(gòu)也做了控制和轉(zhuǎn)發(fā)的分離。數(shù)據(jù)面位于左下角,在洛神的數(shù)據(jù)面里面包含了常見的計算節(jié)點上面的虛擬交換機,這個是數(shù)據(jù)包在計算結(jié)點上面的第一道關(guān)卡。除此之外的數(shù)據(jù)面的重要的角色是網(wǎng)關(guān),網(wǎng)關(guān)在洛神中有兩個主要功能,一個是承載常見的網(wǎng)絡(luò)功能虛擬化單元,也就是我們常說的NFV。另外一個連接兩張不同平面的網(wǎng)絡(luò),例如連接公網(wǎng)和線下的IDC。
整體來看,數(shù)據(jù)平臺,控制平臺和運營平臺組成了洛神系統(tǒng)。當然,洛神系統(tǒng)也不僅僅只是支撐了阿里云的網(wǎng)絡(luò)產(chǎn)品,阿里云云產(chǎn)品的底層網(wǎng)絡(luò),都是由洛神系統(tǒng)來提供支撐。大家可能比較清楚的是阿里云整體的虛擬化協(xié)議棧飛天系統(tǒng)
洛神就是其中的虛擬網(wǎng)絡(luò)組件。
接下來我來詳細給大家分享下洛神系統(tǒng)的主要的關(guān)鍵設(shè)計。我們認為,對于公共云服務(wù)的底層技術(shù),穩(wěn)定性和可用性是優(yōu)先級最高的,因此我先來介紹下洛神系統(tǒng)在可用性方面的設(shè)計。
在只有一個云機房的情況下,我們是沒有辦法做到跨機房的容災(zāi)的。但是對于數(shù)據(jù)面和控制面的關(guān)鍵結(jié)點都是集群部署的,單臺服務(wù)結(jié)點的問題不會對用戶產(chǎn)生任何的影響,同時vm的宿主機當出現(xiàn)宕機等嚴重問題的時候,可以在機房范圍內(nèi)進行遷移,遷移本身也不會對vm的網(wǎng)絡(luò)屬性和連通性產(chǎn)生任何的影響。
當?shù)诙€云機房,第三個云機房建設(shè)起來的時候,每個云機房里面都會部署集群的網(wǎng)關(guān)和控制器結(jié)點,而且隨著機房的增多,會自動在云機房里面形成環(huán)形的備份關(guān)系。當一個新的機房建設(shè)起來,洛神系統(tǒng)部署之后,會自動加入到這個備份鏈里面。這樣,當某一個機房的關(guān)鍵結(jié)點由于異常出現(xiàn)問題的時候,都可以自動在秒級切換到備份機房,由備份機房的洛神系統(tǒng)來提供服務(wù)。這個就盡可能保證了首先單臺設(shè)備的故障不會引發(fā)影響,而某個機房的所有結(jié)點發(fā)生問題,也可以在很快的時間內(nèi)恢復(fù)用戶的業(yè)務(wù)。
洛神系統(tǒng)可用性的另外一個重要的設(shè)計是在于運營平面,而運營平面本身也是洛神系統(tǒng)智能和數(shù)據(jù)化的關(guān)鍵設(shè)計。大家如果把洛神系統(tǒng)看成一個整體的交換機,那么從特性上來看,洛神系統(tǒng)是一個支持流跟蹤的交換機,具有各種豐富的策略。洛神系統(tǒng)的下面是物理網(wǎng)絡(luò)的設(shè)備和交換機,通過洛神系統(tǒng)的流標記的能力和基于policy的策略,可以同時在物理網(wǎng)絡(luò)和虛擬網(wǎng)絡(luò)里面具備流的染色,特定報文的鏡像,采樣,trace等的能力,流量采集的數(shù)據(jù)等等,這些動作產(chǎn)生的日志,都會通過SLS采集到j(luò)storm做實時計算,如果流量有異常,會產(chǎn)生報警和日志給到管理員,部分報警可以觸發(fā)故障的自動處理和恢復(fù)。還有一部分數(shù)據(jù)也會離線同步到ODPS,進行更豐富的計算,進而產(chǎn)生數(shù)據(jù)報表和用戶畫像給到用戶,也可以給到用戶一張炫酷的大屏。這個本質(zhì)上就是數(shù)據(jù)化的能力。
介紹完了可用性的關(guān)鍵設(shè)計,接下來我們看下數(shù)據(jù)面的虛擬交換機。做過虛擬交換機的同學(xué)都知道,虛擬交換機在云網(wǎng)絡(luò)里面是分布最為廣泛的,每臺宿主機上面都有一個虛擬交換機,虛擬交換機是vm進出網(wǎng)絡(luò)的第一道門。在洛神系統(tǒng)里面,虛擬交換機因為其分布式的角色,承擔了大部分的復(fù)雜業(yè)務(wù)邏輯。網(wǎng)關(guān)作為多租戶的設(shè)備,復(fù)雜業(yè)務(wù)邏輯的風險一定是更大的,所以這個是虛擬交換機的第一個關(guān)鍵設(shè)計。
看完了vswitch我們來看下整體的數(shù)據(jù)面。洛神系統(tǒng)支撐的網(wǎng)絡(luò)產(chǎn)品,今年發(fā)布了好幾個性能的值,包括ECS性能等,都還是滿高的,很多友商也緊跟著發(fā)布了類型的性能。現(xiàn)在來看洛神系統(tǒng)的數(shù)據(jù)面,其實最簡單的比喻,就是洛神系統(tǒng)的數(shù)據(jù)面,本身就是一臺巨大的交換機。
回到之前的管理10w臺物理機的問題上,其實洛神解決這個問題的方案也不復(fù)雜。單個網(wǎng)絡(luò)里面放10W臺虛擬機,最大的問題是虛擬機的位置表的規(guī)模的問題。很多的SDN解決方案都是將配置直接下發(fā)到vswitch的,這種解決方案當vm遷移或者新建,銷毀的時候,帶來的配置的變化的量是巨大的。
點擊查看原文
總結(jié)
以上是生活随笔為你收集整理的双十一丝般顺滑体验背后:阿里云洛神网络虚拟化系统揭秘的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入Spring Boot:利用Arth
- 下一篇: 阿里云消息队列Kafka商业化:支持消息