×

SR-IOV在SSD中的应用

hqy hqy 发表于2024-12-02 15:24:38 浏览16 评论0

抢沙发发表评论

mportant;">近年来,随着云的规模逐步扩大,业界各种大数据业务架构日益增多,部分客户对IAAS层的存储性能提出了更高的要求。本地盘凭借着大带宽、低时延、免占母机带宽等天然优势在一些大数据型业务场景下备受客户青睐。

但随着云和数据中心的单个CPU核数越来越大,物理盘又无法单独做拆分,导致单个虚拟机实例的核数也随之增多,每个虚拟机对应均要占用一个PCIe槽位。

基于以上问题,为了更加灵活的为客户提供各种规格的本地盘,对多种方案进行了讨论验证,并决定从业界中找寻出可以支持SR-IOV的NVMe SSD,经过对不同供应商的深度调研与比对进行技术方案的测试和验证工作。


一、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特性上,SSD的QoS能力依然表现不俗,隔离效果明显,基本可以做到在业务使用场景下相互之间并无影响,确保使用SR-IOV以后,也依然可以保障虚拟SSD盘的大带宽、低时延。


2产品化验证——可靠性验证

满足性能的同时,在产品化过程中SR-IOV是否可以满足高可靠性也同样重要。例如在对命令支持方面,虚拟化SSD盘和物理SSD盘有何区别?在物理盘掉电之后,数据是否会丢失?物理盘掉盘异常之后, SR-IOV配置如何快速保留和恢复?

因此,在设计SR-IOV之初,为了保障产品的高性能与高可靠性,对业务使用流程上的需求也进行了全面的考虑与分析,使得SSD的SR-IOV特性得以在各种业务流程和异常场景中都有应对的方案和措施。

具体测试流程及验证结果如下:

通过以上测试验证,我们可以比较明确SSD的SR-IOV在新盘接入,盘片掉电恢复,异常换盘三种场景下均有比较高的可靠性保障方案。


三、SR-IOV未来可期

未来,随着单台服务器的CPU核数增加,网卡带宽增加到100G,单个SSD硬盘容量越来越大,使用SR-IOV提供各种容量规格的本地盘的必要性也越来越高。

一方面,本地盘场景下使用大容量SSD盘的SR-IOV特性,可以减少小容量NVMe SSD的数量,有效降低单台服务器的TCO;

另一方面,使用SR-IOV技术可以让底层的NVMe SSD盘资源跟随上层碎片化的CPU核数进行更灵活的售卖,提升整体的售卖率,降低单台虚拟机的成本。



打赏

本文链接:https://www.kinber.cn/post/3987.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客