一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018

KVM Forum是由Linux基金會組織的高端技術論壇會議,主要爲社區各個維護者,開發人員,和用戶提供一個討論Linux虛擬化技術發展趨勢以及挑戰的交流場所。參會人員都集中在KVM虛擬化相關領域,是KVM社區最爲重要和權威的大會。

概述

2018年度的KVM Forum於10月24-26日在英國愛丁堡召開。本次會議吸引了衆多技術專家參與會議。同時,參會公司聚集了各家雲廠商以及Red Hat、Intel、IBM、AMD等系統和硬件廠商。

先來看看KVM Forum的超高人氣。

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018

第一天的keynote被圍得水泄不通。

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018

滿滿當當的就餐區

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018

本屆大會總共有51個主題演講,覆蓋虛擬化各個領域,比如:熱遷移、嵌套虛擬化、ARM虛擬化、設備直通、輕量虛擬化、安全及性能優化等方面。

熱門議題

從議題數量和現場效果來看,以下三個領域比較受到關注:

嵌套虛擬化
虛擬化性能優化
熱遷移
嵌套虛擬化
簡單來說,嵌套虛擬化就是解決如何在虛擬機裏嵌套運行虛擬機的問題。作爲近期新起的熱門話題,嵌套虛擬化相關演講在本次KVM Forum上多達4個。

會議介紹了半虛擬化(para-virtualization)VMCS,半虛擬化MSR-bitmap和時鐘優化方面的技術,可以提升嵌套時vCPU之間的切換性能,幫助KVM更好地運行在虛擬機裏。

另外,會議還涉及了嵌套虛擬化的中斷虛擬化性能優化,以及嵌套虛擬化對PowerPC處理器的支持。

可以看到,嵌套虛擬化技術在商用中初步取得了一定的成果,但在安全性上帶來的挑戰仍然是大家提問的熱點。

虛擬化性能優化
事實上,虛擬化的性能優化在近幾年的KVM Forum中都比較受關注。在去年的大會上,阿里雲高級技術專家張揚就對消息傳遞類業務在KVM上的性能比較差的問題,虛擬時鐘開銷的問題,以及消息中間件在KVM看到的性能下降等問題提出過有效的解決方案。

此次,相關的演講涵蓋了vCPU優化,內存優化,和I/O優化。vCPU優化包含了半虛擬化(para-virtualization)方面的優化,如PV TLB shootdown,PV IPI性能優化;內存優化涉及了virtio-mem引入半虛擬化接口,支持內存熱插拔等等;I/O優化介紹了vHost Virtio-net 網絡接收隊列的零頁拷貝(zero copy)。

熱遷移
彈性調度和動態伸縮是雲技術的核心特性。然而,它們都非常依賴底層熱遷移的技術性能完善。同時,通過熱遷移還可以很大程度降低物理故障對客戶的影響。在本屆大會上,熱遷移相關的演講全部人氣高漲。

在過去的一年,阿里雲虛擬化團隊對熱遷移領域大量投入,獲得了大量寶貴的經驗。本次參會的3個議題也全都關於熱遷移。在此,我們爲大家展開詳細介紹。

阿里雲在KVM Forum 2018

今年的KVM Forum,熱遷移的相關主題演講一共有五個,阿里雲佔了其中之三。

《Cloudatlas: Ways to Make Live Migration Easy and Expectable》
演講者:阿里雲高級技術專家 張超;阿里雲技術專家 謝峯

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018
阿里雲高級技術專家 張超

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018
阿里雲技術專家 謝峯

如何平衡熱遷移資源佔用與性能開銷,同時最小化熱遷移對客戶的業務影響,是所有公有云廠商都面臨的挑戰。阿里雲創新性地利用機器學習的方法來預測熱遷移的代價以及虛擬機的負載,從而確定一個合理的熱遷移的時機和策略,最終提升遷移成功率以及降低熱遷移對用戶的影響。

阿里雲虛擬化團隊設計了一個完備的系統來執行熱遷移任務的執行。在演講中,提到了機器學習算法部分,阿里雲使用FFT來判斷是否是週期性負載VM,並對週期性負載VM算出週期然後進行預測,對於沒有明顯週期性負載的VM,團隊採用ARIMA和LSTM兩個時間序列模型來做迴歸預測,通過以上三種算法的結合可以快速並準確地預測出95%以上VM在未來24小時的負載趨勢,從而找到一個最優的遷移時間。

本次演講涉及了大量的算法研究,現場聽衆對使用案例、方案原理、預測效果等非常細節的實現問題進行了進一步的提問。有一位行業專家現場說:這是真正在解決公有云廠商關心的問題。

《A Perfect Solution for Live Migration with Pass-through Devices》
演講者:阿里雲技術專家 徐權

該演講直擊了現有直通設備熱遷移的問題:即如何傳輸設備DMA的內存和如何保存和恢復設備的狀態。

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018
阿里雲技術專家 徐權

演講深入分析了現有的一些方法和存在的問題。比如Intel在82599網卡上,在虛擬機內部設備驅動引入self emulation layer,模擬設備DMA寫操作,和恢復保存設備狀態。但由於特定的設備驅動才能工作,而且設備本身設計的缺陷(寄存器只讀,在恢復中無法100%恢復),並不能很好地解決問題。而如果從新的硬件和設備驅動的角度切入,在成本投入上是巨大的,而且增加了軟件的維護成本。

阿里雲擴展了virtio硬件的功能,如感知虛擬機熱遷移,提供設備bitmap記錄設備DMA訪問內存,以及設備所有的寄存器能夠動態地保存和恢復,同時修改現有的熱遷移和VFIO軟件框架。這樣能最大限度地利用現有設備驅動,很好地支持Windows和Linux虛擬機,並不需要單獨維護各個版本的設備驅動,大大降低了成本。

演講結束後,現場有十幾位專家的技術提問。會後徐權還和Linux 社區VFIO maintainer Alex Wiliamson多次討論如何改進現有的VFIO來支持直通設備熱遷移的通用框架。

《Live Migration Support for GPU with SRIOV: Challenges and Solution》
阿里雲與AMD聯合演講,阿里雲演講者:阿里雲高級技術專家 鄭曉

GPU的熱遷移支持是業界的難點。首先,GPU硬件的調度與上下文切換是以millisecond 爲單位的,是CPU的好幾個數量級,由此會引發GPU任務的搶佔問題。再者,GPU在雲計算領域的拓展是最近幾年出現的熱點,而GPU硬件本身對於虛擬化熱遷移的支持尚未完善,比如GPU對local memory的dirty track,對non local memory的dirty track的硬件支持等。這些都爲GPU的熱遷移帶來很多挑戰。

一文帶你領略虛擬化領域頂級技術會議KVM Forum 2018
阿里雲高級技術專家 鄭曉

演講中提到了GPU 任務在遷移途中的時效性,搶佔問題,比如GPU硬件本身在尚未支持framebuffer dirty track的時候,如何通過hypervisor的措施,通過系統軟件的方法來彌補,以及GPU本身上下文的切換需要處理的細節等等。

所有上面提到的問題在阿里雲與AMD聯合開發的第一天就開始考慮與設計。其中有衆多獨有的創新點。例如,在某些型號GPU硬件不支持dirty track的時候,通過軟件的方式來跟蹤GPU的Framebuffer dirty page;在Service downtime等關鍵性能指標不符合預期的時候,如何把數據從6秒優化到了0.35秒左右;功能方面,從單機遷移完善到多機多卡遷移;在穩定性方面,從一開始的做一次就宕機,到後續連續上千次的壓力測試……

此外,演講還加入了現場的Live Demo,從使用體驗上面來說,已經可以做到GPU渲染任務的流暢遷移。

該演講得到了高度關注。會後,部分頂級硬件廠商還與演講者詳細討論了更多的熱遷移細節和性能指標。

小結

參加完本次KVM Forum,我們深刻感覺到,如何解決實際生產環境中遇見的現實問題,正受到業界越來越多的重視。

通過參會,促進了我們和虛擬化業界的交流,也讓團隊獲取了大量信息和寶貴經驗,這些都可以幫助我們更好地提升,並且不斷打磨提升彈性計算產品的底層能力。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章