天翼雲新一代V5雲主機,Kvm之生,Xen之死!

天翼雲開發者社群發表於2022-04-02


天翼雲釋出了新一代V5雲主機,基於intel 最新發布的Intel® Xeon Skylake V5 CPU的物理機及 KVM虛擬化 提供的全新雲主機系列。計算效能較上一代(V4 CPU+Xen虛擬化)提升15%左右,可以更高效的進行單、雙精度浮點運算,適用於對計算效能有強需求的各種場景。

這裡重點要提的是採用了虛擬化平臺KVM!曾經的真愛!

記得2012年剛到雲公司的時候,領導佈置安排了在自己的筆記本上部署KVM虛擬化平臺的活,於是,按照網上的教程一步一步的完成了部署,並開通了虛擬機器。

那時候,一切都是剛起步,阿里雲依然在默默的埋頭研發自己的公有云平臺,而我們的資源池已然上線,採用的是cloudstack+vmware/xen相對成熟的商用平臺。

但採用openstack作為雲作業系統,大規模部署KVM虛擬化平臺,提供低成本的雲服務,是我們當時的夢想。

KVM開原始碼用c語言編寫,讀懂不太容易,為此公司還招聘了c語言高手和有kvm測試經驗的測試人員。

可一切都是在美好中開始,也在美好中快速結束。

時光飛逝!雲端計算以超乎人們想象的速度高速發展!

今天,似乎又回到了起點,華為的合營資源池採用的正是6年前我們構想的openstack+kvm的架構。

廢話少說,現在的問題是為何華為、阿里、還有aws將經過十幾年執行檢驗的成熟可靠的xen架構轉向kvm架構?

新舊架構的更替往往比我們想想的要快!

讓我們來扒一扒xen為何而死掉?

為什麼Xen會死掉?

10年來,CPU已經從單核逐步走向了雙核、四核、甚至是幾十核心。NUMA技術,TB級記憶體也基本成為現代伺服器的標配,眾多廠商和Linux社群在記憶體和CPU排程和管理上做了大量的工作,而Xen Hypervisor採用獨立的CPU和記憶體排程管理、核心實現還停留在Linux 2.4時代。經過了10年的發展後,根本無力去同步這麼多的更新,我們今天會發現Xen已經落後的太多了,比如:

1.  Xen只能提供2M物理頁面,而DPDK需要1G的連續實體記憶體,這是DPDK不能支援Xen的最主要原因。

2.  KSM是核心中的一種記憶體共享機制,在2.6.36版本的核心中開始引入,說白了就是一種記憶體共享機制,有助於騰出更多的可用實體記憶體,提高實體記憶體的使用率,Xen顯然不支援。

3. 多核(>128 CPU)排程: 雖然宣稱能支援最大192+ core, 但是實際我們發現如果在128 core的4P伺服器上建立大規格虛擬機器並在其中使用高精度時鐘,導致虛擬機器頻繁陷入陷出排程cpu,Xen就會出現嚴重問題,這顯然是Xen沒有經過大規模商業實踐的表現。

4. 我們再來看看資料中心的情況,AWS新一代的C5已經進入25GE核心交換時代了。Xen其實在處理10GE轉發的時候就已經慘不忍睹,而且更重要的是,沒有進一步的技術最佳化空間,Xen社群其實10年前就知道相關問題了,一直都在做些不痛不癢的最佳化,不去從根本上解決問題,一副好牌在手,最終卻出局了......

Xen何去何從

AWS轉用KVM後Xen專案計劃進軍嵌入式應用程式

思傑(Citrix)高階技術總監表示: 甲骨文都已經走KVM路線了,Xen如果能圈住甲骨文和亞馬遜的話,還是可行的。而現在,Xen已經被逼上絕境了。但 Xen是一個可重用技術元件,很高興地看到Xen在新領域裡成長,例如邊緣計算、汽車、航空和航天等新使用案例。

 Xen具靈活性、小巧體積和獨立於作業系統等特徵,Xen非常適合上述不斷髮展的領域。 即將上線的邊緣裝置達數十億,管理程式的壽命可能還是很長的,管理程式的未來也可能是美好的。

科普一下什麼是DPDK?

簡單說,DPDK在網路卡驅動之上,socket介面之下,提供了一種應用直接訪問網路卡的介面。基於DPDK實現使用者態網路協議棧,就成為可能。並且使用者態協議棧可以避免中斷,避免不必要的上下文切換,可以作到真正的zero-copy。這些在雲端計算,大資料場景下越發重要。

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014251/viewspace-2885473/,如需轉載,請註明出處,否則將追究法律責任。

相關文章