1. 程式人生 > >“雲中論道”之——華山論劍 ,唯快不破:秘笈分享

“雲中論道”之——華山論劍 ,唯快不破:秘笈分享

帶寬 華山 上進 同步 rss 高性能 left 多核 中國

“雲中論道”技術課堂第二課開講時間到~ 這次我們邀請到的是來自微軟開源技術中心的高級產品經理,人稱“驀然汐來”。她將為我們介紹,近一年來微軟開源技術中心在Linux上的進一步努力下,運行於Hyper-V之上的Linux的性能有了哪些新的重大提升;在雲的論劍中,如何保持快速度、高性能。全新秘笈,馬上為大家揭曉!

本文作者介紹:

花名“驀然汐來”,現任微軟中國雲計算與企業產品工程部開源技術中心高級產品經理,負責微軟虛擬化平臺 Hyper-v 和公有雲 Azure 對於開源技術和產品的支持,包括 FreeBSD, Linux,虛擬設備,容器等。加盟微軟前,曾就職於英特爾9年,在數字家庭部門和開源技術中心擔任技術和管理工作。她擁有中國科學院計算技術研究所的碩士學位。


隨著雲計算的新一波浪潮,作為雲計算基礎架構的虛擬化技術再次成為熱門。說起虛擬化,VMWare,KVM, XEN和Hyper-V都是目前主流的平臺。對於Hyper-V的介紹,大多如此: “Hyper-V是微軟的一款虛擬化產品,大部分國內的VPS服務商使用這個架構,主要是因為其專為Windows定制,管理起來較為方便。目前的Hyper-V也支持Linux,只不過性能損失比較嚴重。”

時至今日,Hyper-V作為微軟在戰略高度全力推進的公有雲Azure的基礎虛擬化平臺,此種說法依然成立嗎?Linux在Hyper-V和Azure上只是“象征性”地能跑跑而已嗎?

微軟作為軟件巨頭早已悟到“華山論劍,到底誰最快;天下武功,唯快不破” 的道理。

自2009年微軟把支持Hyper-V的虛擬驅動貢獻給Linux內核後,兩萬多行代碼已構建了完整的Linux虛擬機功能,包括高性能的網絡和存儲,時間同步,熱遷移,虛擬硬盤大小動態調整,熱備份,動態內存等等 (詳情請見:https://technet.microsoft.com/en-us/library/dn531031.aspx)。

微軟開源技術中心近一年在Linux上進一步的工作更讓運行於Hyper-V之上的Linux的性能有了新的重大提升,下面我們就具體學習下這都有什麽秘笈啊。

  • VMBUS協議的優化:

- 宿主機/虛擬機信號優化

- 虛擬機端:可擴張的中斷傳送機制

- 多通道的支持,獲取高性能I/O

  • 虛擬機驅動的優化

- vRSS(virtual Receive Side Scaling, 虛擬接收方擴展)。這是 Windows Server? 2012 R2 中的一項功能,可讓您將虛擬網絡適配器的負載分散在虛擬機中的多個虛擬處理器上。多核虛擬機中的接收方網絡處理通常受到這一事實的制約:單個虛擬處理器需要為來自虛擬網絡適配器的所有中斷提供服務。 虛擬接收方縮放使網絡適配器能夠將其網絡處理負載分散在多核虛擬機中的多個虛擬處理器上,因此解決了這一問題。

- TSO (TCP Segmentation Offload)。利用網卡對TCP數據包分片,減輕CPU負荷。

- 同時來自於微軟開源技術中心的Linux開發者們也進行了各種調優,比如為NUMA節點分配發送和接收的緩沖,清理發送和接收的路徑,批處理多個RNDIS數據包等等。

果您仍質疑微軟對於Linux的承諾,那麽我們來看看事實勝於雄辯的數據吧。在10Gb的公有雲Azure中,Linux(內核版本:4.1.0-rc6-next-20150604)虛擬機的表現和Windows(版本:Windows Server 2012 R2)虛擬機並駕齊驅。

技術分享

註釋: Azure D14 虛擬機CPU配置: 16 vCPUs of E5-2660 0 @ 2.20GHz, on two NUMA nodes

擁抱開源的微軟對於Linux的支持和優化不止於此。在2015年,微軟針對運行於Azure的Linux實現了遠程直接內存訪問(RDMA, Remote Direct Memory Access),從而提供給Azure中兩臺Linux虛擬機高速低延遲的網絡連接。這一技術對於大規模並行計算機集群特別有用。Azure中A8和A9的虛擬機使用Infiniband網絡提供基於Hyper-V的RMDA虛擬化來獲得接近於“裸機”的性能 – 小於3微秒的延遲以及大於32Gbps的帶寬。

技術分享

目前Azure鏡像市場的SUSE Linux服務器企業版(SLES12) 提供對於Azure Linux RDMA的支持,也敬請期待更多的發行版和版本以及該版本落地於中國。技術分享

如果您正關註微軟提交到Linux內核的代碼,您也會驚喜地發現微軟已經準備開始在Hyper-V上支持PCI Express網卡設備的直通和SR-IOV (Single-root I/O virtualization,單根I/O虛擬化)。網卡直通支持虛擬機繞過Hypervisor層,直接訪問物理I/O設備,從而獲得最高的性能。但是在同一時刻,物理I/O設備只能被一個虛擬機獨享;SR-IOV是Intel在2007年提出的解決虛擬化網絡I/O的硬件技術方案,該技術不僅能夠繼承網卡直通的高性能優勢,而且同時支持物理I/O設備的跨虛擬機共享。

微軟開源技術中心的Linux開發者們繼續精益求精的潛修苦練,敬請您期待我們在2016年再給大家奉獻上新的秘笈及數據。

最後,小編還有一個呼籲:

立即訪問http://market.azure.cn

“雲中論道”之——華山論劍 ,唯快不破:秘笈分享