简介: 阿里云 ESSD 为云服务器 ECS 提供低时延、持久性和高可靠的块存储服务,成为云厂商全闪块存储的业界标杆。存储团队推出了 ESSD Auto PL 新的云盘规格,把性能与容量解耦,提供 IO 性能按需供给两大关键特性。AutoPL 具备的灵活性和弹性能力降低了 IT 规模规划难度和因规划不当带来的风险,本文详细介绍了Auto PL 新产品特性、揭秘背后的技术原理。

前言

作为 IaaS 最重要的核心组件之一,阿里云 ESSD 为云服务器 ECS 提供低时延、持久性和高可靠的块存储服务,成为云厂商全闪块存储的业界标杆。随着越来越多的企业上云和核心应用上云,以及容器和 Serverless 架构的蓬勃发展,对块存储 IO 性能的弹性能力提出了新的挑战和需求。阿里云存储团队在这种背景下推出了 ESSD Auto PL 新的云盘规格,把性能与容量解耦,提供 IO 性能按需供给两大关键特性。本文结合块存储典型业务场景,介绍 Auto PL 新产品特性、揭秘背后的技术原理。

云存储的IO弹性需求和业务痛点

随着云原生技术的发展,越来越多的企业基于云计算的虚拟化、弹性扩展及蓬勃发展的云原生技术的分布式框架,容器技术、编排系统、持续交付及快速迭代,构建起大规模、弹性扩展强、丰富的云上分布式业务场景;新的计算形态逐步往短周期、轻量化等方向发展,对块存储 IO 性能弹性提出了更多需求(性能通常用 IOPS :Input/Output Operations per Second 和吞吐 BPS :Bytes per Second 来描述),以下是比较常见的业务痛点:

  • VM/容器批量启动:计算实例启动时,系统盘短时间内消耗大量 IOPS 和吞吐 BPS
  • 业务高峰:客户业务面临不可预期的突发场景,需要云盘以及 VM 具备短时的突发性能需求的弹性扩展能力
  • 周期性任务处理:OLAP/批处理在可预见的时间内周期性的提交海量任务,需要云盘具备突发的弹性扩展能力

传统的块存储产品采用性能/容量耦合的产品设计,用户通过购买云盘容量获取相应的 IOPS/BPS 性能上限,通过云盘扩容同时获得磁盘容量和 IO 性能。ESSD 支持 PL0/1/2/3 多种性能的档位(PL:performance level),不同 PL 等级有不同 IO 性能上限,客户可通过云盘变配功能提升 PL 等级,从而得到更高的 IOPS/BPS 性能上限。云原生业务充分利用云的弹性能力,业务需求上量有个较长的时间周期,通常会预留部分存储性能余量。此外,相当部分云上业务流量存在明显的波峰波谷行为,大部分时间处于业务低负载期,且业务高峰期和峰值难以准确预估。典型的 IO 流量突发型业务可能在一定时间内出现一个或多个突发 IO 流量,突发时间短、突发性能峰值高,常见于互联网秒杀等突发业务场景,对性能规划提出了新的挑战:如果性能配置预留过高,会造成日常资源的大量闲置浪费;而如果性能预留不足,业务突发洪峰会造成业务受损。总而言之,通过云盘扩容/变配进行较为精准的性能规划变得非常困难。

ESSD Auto PL

针对以上业务痛点,阿里云推出了 ESSD Auto PL 产品规格,支持性能按需配置和按需突发两个模式,支持 1000 IOPS/GB 的超高单位容量性能上限。性能按需配置主要面向可预期的周期性 IO 流量场景,用户在新建 ESSD Auto PL 时除了选择存储容量,还可单独配置额外的 IO 性能上限,实现了 IO 性能与容量解耦。针对可预期的 IO 洪峰,用户可根据业务需求灵活调整 IO 性能,提供可预期的应对能力。

对于难以预期的突发业务洪峰,Auto PL 支持性能按需突发模式,提供最大单盘 100W IOPS,4GB/s 的极限 IO 性能,云盘根据实际性能需求自动调整,无需进行 IO 性能预测和规划,充分利用了 ESSD 分布式存储的弹性能力,彻底解决了突发流量下的性能规划问题。该功能采用后付费模式,用户只需按实际发生超出预先配置性能的读写次数付费, 保障业务稳定运行的同时,最大化节省用户的资源配置开销。以某大型互联网电商某突发流量场景为例,该业务原来使用 ESSD PL1,性能上限为 50000 IOPS,350MB/s,在业务突发流量场景,有 2.3% 的云盘打满 PL1 性能上限影响业务,且业务峰值时间较短,流量峰值无法准确预估。传统的需要采用 ESSD PL2 来满足业务突发流量,采用 ESSD Auto PL 并开启按需突发模式,业务存储 TCO 下降 49%。

Auto PL 仍然兼容了 ESSD PL1 的基准性能,标准的 Auto PL 云盘性能表现与 ESSD PL1 完全一致,实现存量客户 & 业务场景无缝切换。另外 ESSD Auto PL 在业界首次同时支持性能按需配置和性能按需突发两种功能,并且可叠加使用,用户可根据实际 IO 流量模型灵活配置。

Auto PL技术解析

作为第一个支持性能容量解耦同时支持性能按负载弹性伸缩的云盘, ESSD Auto PL 需要解决很多技术上的挑战:比如如何快速感知业务的负载变化,如何动态按需申请释放资源支持性能伸缩,如何快速平衡负载调度等等。经过反复打磨,ESSD Auto PL 云盘设计了细粒度的云盘切分机制,能够让它均衡使用整个后端存储集群的资源并快速动态调整;通过集群容量/性能水位实时监测和调度、多级 QoS 隔离等保障 IO 性能突发引入的流量冲击和多租户 IO 干扰等问题。

云盘细粒度切分

ESSD Auto PL 支持最大 1000 IOPS/GB,远超 Nand SSD 单位容量的 IOPS 性能。每一块 ESSD 云盘的 LBA 地址空间会被划分为多个条带组,条带组的 IO 被分布式算法打散,分别被不同的存储节点处理,以充分利用 RDMA 网络和高性能存储能力。ESSD Auto PL 设计了细粒度的地址空间管理机制,让小容量云盘也可以充分打散到多个存储节点,实现更大范围的 IO 调度能力,同时大范围的 IO 调度能力也可以降低存储集群单机热点和部分 IO 长尾延迟。

多租户隔离和IO优先级管理

EBS 作为典型的多租户服务,突发高吞吐/高 IOPS 流量潜在会影响低负载租户的 IO 延迟,100W IOPS IO Burst 极致性能对隔离能力提出了更高的要求。ESSD 支持实例和云盘两层 QoS,实例 QoS 提供多虚拟机之间的 IO 隔离能力,上限与用户购买实例的 vCPU 核数强相关,部分小规格实例支持存储 credit burst 能力,可累积闲时 IO quota 提供最大 30 分钟的性能突发能力;云盘 QoS 提供实例内各云盘的性能上限,与云盘规格相关。从 VM 发出的 IO 从链路上依次通过云盘、实例两级 QoS,并进行 Burst IO 流量打标,确保在流量拥塞场景下全链路能准确识别 Burst 流量,保证非 Burst 流量得到优先处理。针对 Burst IO 流量引起的系统局部热点和 IO 阻塞,实现了IO 流量 10 毫秒级别的业务负载感知和预测,再秒级别完成动态队列调度和并发度调整,结合硬件卸载的队列动态分发机制、避免在多租户场景下因为弹性提升带来多租户间的性能干扰。

多集群性能水位负载均衡

极致的 IO 性能弹性对性能 SLA 引入了新的挑战,特别是 IO 突发性能极限 100W IOPS 引入了更大的流量拥塞风险,为此 ESSD 设计了新的多集群性能水位负载均衡机制。新的智能均衡调度机制由集群/存储节点/IO 线程多级调度组成,根据云盘性能配置,实时监控组件 IO 负载,实现集群内秒级 IO 负载均衡、分钟级别集群间流量调度,当集群/存储节点间流量出现显著性能水位差异时,实时触发云盘热迁移,解决用户大批量云盘负载同时升高的性能争抢问题。

总结

ESSD AutoPL 作为未来 ESSD 的主售产品,覆盖面积为当前所有弹性计算面对的行业和客户。AutoPL 具备的灵活性和弹性能力降低了 IT 规模规划难度和因规划不当带来的风险,将会受运维人员或IT资源采购人员青睐。无论是阿里云新增客户,还是存量客户,ESSD AutoPL 都可以作为 ESSD PL1 的替代产品进行购买。AutoPL 为客户的业务突发增长提供了既经济实惠、又简单便利的使用体验,期待大家广泛使用 AutoPL 产品,并且给我们提宝贵的反馈,帮助我们做得更好。我们将继续通过技术创新来提高 ESSD 的性能和服务质量保障能力,提高用户使用体验,为客户提供永不停机的计算服务。

作者:阿里云存储 郗鉴

原文链接

本文为阿里云原创内容,未经允许不得转载。

【ESSD技术解读-04】ESSD Auto PL规格,引领IO性能弹性新方向的更多相关文章

  1. DLL技术应用04 - 零基础入门学习Delphi47

    DLL技术应用04 让编程改变世界 Change the world by program 利用DLL实现窗体重用 利用 Delphi 的 DLL 功能,不但能够实现过程和函数重用,而且还可以实现窗体 ...

  2. 分布式架构和微服务CI/CD的范本技术解读

    随笔分类 - 分布式架构--http://www.cnblogs.com/hujihon/category/858846.html (ZooKeeper.activemq.redis.kafka)的分 ...

  3. Switch分销技术解读

    Switch分销技术解读 来源:环球旅讯|2009-03-13 当Switch在海外成熟运作近40年后,该业务终于进入中国市场.但对于中国业者来说,知道Switch的人很少,了解Switch的人更少. ...

  4. 性能达到原生 MySQL 七倍,华为云 Taurus 技术解读【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  5. Cube 技术解读 | Cube 小程序技术详解

    本文为<Cube 技术解读>系列第三篇文章,之前上线的<支付宝新一代动态化技术架构与选型综述>与<Cube卡片技术栈解读>欢迎大家回顾. 魔方卡片(Cube)已在「 ...

  6. JAVA NIO 中的 zerocopy 技术提高IO性能

    关于一篇更详细更好的介绍 ZeroCopy技术的文章,可参考:JAVA IO 以及 NIO 理解 这篇文章介绍了 zerocopy技术来提高Linux平台上的IO密集型的JAVA应用程序的性能. ze ...

  7. 阿里云全球首次互联网8K直播背后的技术解读

    3月28日,云栖大会·深圳峰会现场,阿里云发布并现场演示了阿里视频云最新8K互联网直播解决方案.这是全球发布的首个8K视频云解决方案,也是全球首次8K互联网视频直播. 视频地址:https://v.q ...

  8. POLARDB v2.0 技术解读

    点击观看“POLARDB 2.0 升级发布会”:https://yq.aliyun.com/live/1136 回顾POLARDB 1.0 POLARDB 1.0 主要的改进包括采用了计算存储分离的架 ...

  9. 唱吧DevOps的落地,微服务CI/CD的范本技术解读----最大的难点并不是实际业务代码的编写,而是服务的监控和调试以及容器的编排

    1.业务架构:从单体式到微服务 K歌亭是唱吧的一条新业务线,旨在提供线下便捷的快餐式K歌方式,用户可以在一个电话亭大小的空间里完成K歌体验.K歌亭在客户端有VOD.微信和Web共三个交互入口,业务复杂 ...

  10. 唱吧DevOps的落地,微服务CI/CD的范本技术解读

    1.业务架构:从单体式到微服务 K歌亭是唱吧的一条新业务线,旨在提供线下便捷的快餐式K歌方式,用户可以在一个电话亭大小的空间里完成K歌体验.K歌亭在客户端有VOD.微信和Web共三个交互入口,业务复杂 ...

随机推荐

  1. 崩溃bug日志总结2

    目录介绍 1.1 java.lang.ClassNotFoundException类找不到异常 1.2 java.util.concurrent.TimeoutException连接超时崩溃 1.3 ...

  2. OpenLayers绘制热力图 代码记录

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 做地图开发,往往需要掌握专题地图制作的技能.今天用OpenLayers6来做一个热力图的效果. 页面效果: 代码部分: <!DOCT ...

  3. 蓝牙HFP协议推荐的语音丢包补偿算法浮点实现的定点化

    最近在做蓝牙的宽带语音通话.相对于蓝牙窄带语音,主要变化是把采样率从8k变到16k,以及编解码器从CVSD变成mSBC(modified SBC,改进的SBC)等.蓝牙语音通话相关的HFP(Hand ...

  4. [HTML、CSS]知识点

    [版权声明]未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://blog.csdn.net/m0_69908381/article/details/130176402 出自[进步* ...

  5. FPGA中的时钟域问题

    FPGA中的时钟域问题 一.时钟域的定义 所谓时钟域,就是同一个时钟驱动的区域.这里的驱动,是指时钟刷新D触发器的事件,体现在verilog中就是always的边沿触发信号.单一时钟域是FPGA的基本 ...

  6. ZYNQ7000系列学习之TF卡读写(2)

    ZYNQ读写实验(2) 1.实验原理 在TF卡读写实验1中,已经将每一个步骤都做完了,但是最后得到的结果是错误的.那个时候由于TF没有格式化,显示的是错误信息.在格式化后,再次实验,得到了预期的结果. ...

  7. NFNet:NF-ResNet的延伸,不用BN的4096超大batch size训练 | 21年论文

    论文认为Batch Normalization并不是网络的必要构造,反而会带来不少问题,于是开始研究Normalizer-Free网络,希望既有相当的性能也能支持大规模训练.论文提出ACG梯度裁剪方法 ...

  8. KingbaseESV8R6延迟提交参数

    前言 队列理论在我们生活中的应用随处可见,例如我们去食堂打饭需要排队,我们生活中随处可见排队的场景. 在计算机领域中,性能诊断等地方使用队列理论的案例也很多.服务器硬件分为动态设备和静态设备.CPU和 ...

  9. 直播预告丨OpenHarmony标准系统多媒体子系统之音频解读

    今晚19点,OpenHarmony开源开发者成长计划知识赋能第五期"掌握OpenHarmony多媒体的框架原理"的第四节直播课,即将开播! 深开鸿资深技术专家苑春鸽老师,将在Ope ...

  10. 2020东京奥运会奖牌榜可视化分析(Pyechart)

    数据获取和处理 从网页中获取各国的奖牌数量和排名以及奖牌类型(json格式). #奖牌榜数据 url = 'https://app-sc.miguvideo.com/vms-livedata/olym ...