用细粒度规划将存储性能发挥到极致
时间:2022-04-21 12:09:02 | 来源:行业动态
时间:2022-04-21 12:09:02 来源:行业动态
达到存储设备的性能极限,这个目标并不难实现。放开所有约束,让产品性能得到最大的发挥就可以了。但是公有云上并不是资源独享,一部分用户将应用性能占用到了极限,就意味着另一部分用户的应用性能被抢占。因此,在公有云上,更需要精打细算着,将性能发挥到极致。而将存储性能发挥到极致,就意味着需要付出更多辛劳,对存储进行更加的细粒度规划,才能让每位公有云用户,都可以在规划的资源范围内,获取到最大的应用处理能力。下面我们就通过实际的存储性能测试,来查看一下阿里云是如何将存储性能发挥到极致的。
在本次测试中,我们除了继续沿用19年公有云测试时采用的实例规格为ecs.g6.large的2C4GB计算型云主机外,还选用了实例规格为ecs.g6.3xlarge的12C24GB计算型云主机,采用Linux下的Fio测试工具分别对阿里云高效云盘、SSD云盘、ESSD云盘这三种不同类别的云盘做为系统盘,按照默认存储容量(40GB)、最小容量(20GB)、指定容量(100GB)这三种不同大小容量,对系统盘读、写和时延性能进行测试。
之所以会选用ecs.g6.3xlarge的12U24G计算型云主机进行测试,是因为2C4GB云主机的最大存储带宽被限定在1.0Gbps,难以满足阿里云SSD以上规格的云盘带宽传输需求。在后面我们将会对这些性能规划进行更深入的分析。下面我们先来实地测试一下,阿里云云盘的存储性能是否与标称结果相符。
阿里云云盘存储性能测试结果如下:
高效云盘、SSD云盘、ESSD云盘20、40、100G IOPS测试结果图表
高效云盘、SSD云盘、ESSD云盘20、40、100G 带宽测试结果图表
为了方便对数据进行对比,我们将高效云盘、SSD云盘、ESSD云盘20、40、100G IOPS和带宽测试结果制成图表,其中红色代表测试中写的性能、黄色代表测试中读的性能,蓝色代表阿里云给出的存储性能标称数值。标称数值可在建立云主机,选择云盘参数时,通过查看云盘性能指标链接进行查看。在本次测试中,也将部分云盘性能指标截图,以方便读者进行查看。
云盘性能指标截图
通过红、黄、蓝三个颜色数据的对比我们可以看出,无论是在IOPS性能还是在存储带宽性能测试中,随着云盘容量与类型的变化,IOPS和存储带宽性能也呈现出阶梯状的增长。并且测试结果数据始终与阿里提供的标称数据略高或者持平。
在对阿里云2C4GB内存的ecs.g6.3large云主机进行读、写带宽测试同时,我们也验证了,阿里云在企业级定位的实例规格族上对存储性能建立了实例维度的隔离性,根据实例规格的不同,分配的可处理IOPS与存储带宽也各不相同。这样的设计,可以保证在多个虚拟机部署在同一台物理机上时,之间的存储IO性能不会相互影响,保障多租户模式下,各自都能获得稳定一致、可预期的性能。这一点,目前在国内厂商中,阿里云也是唯一一家如此设计的厂商,国外厂商中,AWS、Azure、GCP等都采用了类似的产品设计。这种设计,对企业级客户核心系统上云是非常友好的,充分避免了云计算性能领域常被人诟病的noisy neighbor现象。
从测试云主机进行顺序读、写的带宽测试中也可以证实。当采用实例规格为ecs.g6.large的2C4GB计算型云主机,对20G容量SSD云盘进行测试时,存储带宽成绩只能达到ecs.g6.large标称的最大存储带宽125MiB/s(1.0Gbps)。而采用12C24GB内存的ecs.g6.3large云主机进行测试时,就可以达到阿里云SSD云存储所标称的130MiB/s。
2C4GB云主机20G容量SSD存储带宽测试结果截图
最后,我们还对阿里云高效云盘、SSD云盘、ESSD云盘这三种不同类别云盘的时延性能进行了测试。测试结果表明,由于阿里云云盘具备很好的IOPS处理性能,即便是IOPS性能较低的高效云盘,在最小20G容量时的平均时延最高结果也仅为505.96微秒,100G ESSD云盘的随机写时延性能更可以达到150微秒以下。完全可以满足一些对高时延比较敏感的数据库应用需求。