近年來,隨著公有云的規模逐步擴大,業界各種大數據業務架構日益增多,部分客戶對IAAS層的存儲性能提出了更高的要求。本地盤憑借著大帶寬、低時延、免占母機帶寬等天然優勢在一些大數據型業務場景下備受客戶青睞。
但隨著云和數據中心的單個CPU核數越來越大,物理盤又無法單獨做拆分,導致單個虛擬機實例的核數也隨之增多,每個虛擬機對應均要占用一個PCIe槽位。
基于以上問題,為了更加靈活的為客戶提供各種規格的本地盤,騰訊云硬件導入團隊對多種方案進行了討論驗證,并決定從業界中找尋出可以支持SR-IOV的NVMe SSD,經過對不同供應商的深度調研與比對,最終選出憶聯進行技術方案的測試和驗證工作。
最終,經過騰訊云服務器與供應鏈NPI團隊、騰訊云服務器虛擬化團隊、憶聯公司一起配合努力,在騰訊云的實驗室機房進行了長達兩個月的全面測試驗證工作,驗證結果表明SR-IOV特性在公有云場景下可以帶來一定的價值。
一、SSD之SR-IOV的簡單介紹
1、SR-IOV
先簡單介紹一下SR-IOV,SR-IOV(Single-Root I/O Virtualization,單根 I/O虛擬化)是一種基于硬件的虛擬化解決方案,通過利用PF和VF的屬性,將一個設備虛擬出多個PCIe設備,利于虛擬機操作,從而大大減輕宿主機的CPU負荷,提高性能和可伸縮性,幫助系統解決虛擬機SSD盤的QoS問題,可支持更多數量的虛擬機業務。
傳統虛擬化系統使用Hypervisor(或者VMM)軟件對虛擬機進行管理,軟件層既消耗CPU資源,又有較深的調用棧,使得PCIe設備的性能優勢無法徹底發揮。而SR-IOV可以實現多個虛擬機共享物理資源,且bypass Hypervisor(或者VMM)軟件層,使得虛擬機可以使用到NVMe SSD的高性能。
對比傳統虛擬化系統,在有SR-IOV技術的云業務虛擬機應用場景下,VM可直接與VF通信,不需要Hypervisor接入IO處理,節約 vCPU資源的同時,又可以實現不同VF之間性能相互隔離,互不影響。
*傳統虛擬機與SR-IOV虛擬機對比
可以總結得出SR-IOV優勢在于:
1,實現SR-IOV之后,VMM把中斷交給虛擬機處理,提高了I/O性能;
2,虛擬機直接和PCIe設備交互,bypass掉中間的Hypervisor/VMM層,減輕物理主機CPU負擔,使之有能力承載更多虛擬機;
3,SR-IOV虛擬化技術可以減少客戶所需PCIe設備數量,進而節省PCIe插槽;
4,SR-IOV可以與其他的I/O虛擬化技術進行結合,提供一個更加完整的兼具高性能和安全性的解決方案;
比如,當前一塊NVMe SSD容量可以達到十幾TB,而IOPS可以達到100萬以上,延時也降低到了微秒級,SR-IOV可以使NVMe SSD直接被上層多個VM所用,SSD的性能優勢也可以直接被上層應用感知到。
如下圖,在虛擬化分區方式場景下,通過SR-IOV技術將一片PCIe 4.0 7.68TB SSD(綁定16個CPU核)配置為2個容量為3.84TB VF(綁定8個CPU)。
*虛擬化分區方式場景
二、憶聯SSD技術驗證
1、性能測試驗證
目前,SR-IOV在虛擬化中的應用較為成熟,被廣泛應用于網卡以及對網絡性能、傳輸速度要求極高的應用場景中。而基于SR-IOV的SSD許多廠商已做過多種嘗試,比如定義namespace后進行上層虛擬機的關聯,多家SSD廠商都已支持。但如何做到1塊物理SSD硬盤基于SR-IOV虛擬化成幾塊虛擬SSD硬盤后,依然能保障QoS的性能隔離和性能保障,是其中最大的挑戰。
據悉,憶聯在早期規劃SR-IOV特性時就從控制器層面做了很多優化設計,基于硬件能力規劃了QoS的能力,可以做到多塊虛擬SSD硬盤之間性能隔離。
為了驗證QoS的能力,我們在1分8的場景下,進行了充分的性能測試驗證,從以下數據顯示:
*1分8場景
在SR-IOV特性上,憶聯的QoS能力依然表現不俗,隔離效果明顯,基本可以做到在業務使用場景下相互之間并無影響,確保使用SR-IOV以后,也依然可以保障虛擬SSD盤的大帶寬、低時延。
2、產品化驗證——可靠性驗證
滿足性能的同時,在產品化過程中SR-IOV是否可以滿足高可靠性也同樣重要。例如在對命令支持方面,虛擬化SSD盤和物理SSD盤有何區別?在物理盤掉電之后,數據是否會丟失?物理盤掉盤異常之后, SR-IOV配置如何快速保留和恢復?
因此,憶聯在設計SR-IOV之初,為了保障產品的高性能與高可靠性,對業務使用流程上的需求也進行了全面的考慮與分析,使得憶聯的SR-IOV特性得以在各種業務流程和異常場景中都有應對的方案和措施。
具體測試流程及驗證結果如下:
*配置流程
通過以上測試驗證,我們可以比較明確憶聯的SR-IOV在新盤接入,盤片掉電恢復,異常換盤三種場景下均有比較高的可靠性保障方案。
三、SR-IOV未來可期
未來,隨著單臺服務器的CPU核數增加,網卡帶寬增加到100G,單個SSD硬盤容量越來越大,使用SR-IOV提供各種容量規格的本地盤的必要性也越來越高。
一方面,本地盤場景下使用大容量SSD盤的SR-IOV特性,可以減少小容量NVMe SSD的數量,有效降低單臺服務器的TCO;
另一方面,使用SR-IOV技術可以讓底層的NVMe SSD盤資源跟隨上層碎片化的CPU核數進行更靈活的售賣,提升整體的售賣率,降低單臺虛擬機的成本。
未來,憶聯會繼續在NVMe SSD的SR-IOV特性方面進行更深入的探索和投入,助力用戶推進NVMe SSD盤的SR-IOV在更多場景下的應用,并基于用戶的實際應用需求場景,持續提供有競爭力的產品和服務,幫助用戶創造更多價值。
地址:深圳市南山區記憶科技后海中心B座19樓
電話:0755-2681 3300
郵箱:support@unionmem.com