【ESSD技术解读-04】ESSD Auto PL规格,引领IO性能弹性新方向
简介: 阿里云 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性能弹性新方向的更多相关文章
- DLL技术应用04 - 零基础入门学习Delphi47
DLL技术应用04 让编程改变世界 Change the world by program 利用DLL实现窗体重用 利用 Delphi 的 DLL 功能,不但能够实现过程和函数重用,而且还可以实现窗体 ...
- 分布式架构和微服务CI/CD的范本技术解读
随笔分类 - 分布式架构--http://www.cnblogs.com/hujihon/category/858846.html (ZooKeeper.activemq.redis.kafka)的分 ...
- Switch分销技术解读
Switch分销技术解读 来源:环球旅讯|2009-03-13 当Switch在海外成熟运作近40年后,该业务终于进入中国市场.但对于中国业者来说,知道Switch的人很少,了解Switch的人更少. ...
- 性能达到原生 MySQL 七倍,华为云 Taurus 技术解读【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- Cube 技术解读 | Cube 小程序技术详解
本文为<Cube 技术解读>系列第三篇文章,之前上线的<支付宝新一代动态化技术架构与选型综述>与<Cube卡片技术栈解读>欢迎大家回顾. 魔方卡片(Cube)已在「 ...
- JAVA NIO 中的 zerocopy 技术提高IO性能
关于一篇更详细更好的介绍 ZeroCopy技术的文章,可参考:JAVA IO 以及 NIO 理解 这篇文章介绍了 zerocopy技术来提高Linux平台上的IO密集型的JAVA应用程序的性能. ze ...
- 阿里云全球首次互联网8K直播背后的技术解读
3月28日,云栖大会·深圳峰会现场,阿里云发布并现场演示了阿里视频云最新8K互联网直播解决方案.这是全球发布的首个8K视频云解决方案,也是全球首次8K互联网视频直播. 视频地址:https://v.q ...
- POLARDB v2.0 技术解读
点击观看“POLARDB 2.0 升级发布会”:https://yq.aliyun.com/live/1136 回顾POLARDB 1.0 POLARDB 1.0 主要的改进包括采用了计算存储分离的架 ...
- 唱吧DevOps的落地,微服务CI/CD的范本技术解读----最大的难点并不是实际业务代码的编写,而是服务的监控和调试以及容器的编排
1.业务架构:从单体式到微服务 K歌亭是唱吧的一条新业务线,旨在提供线下便捷的快餐式K歌方式,用户可以在一个电话亭大小的空间里完成K歌体验.K歌亭在客户端有VOD.微信和Web共三个交互入口,业务复杂 ...
- 唱吧DevOps的落地,微服务CI/CD的范本技术解读
1.业务架构:从单体式到微服务 K歌亭是唱吧的一条新业务线,旨在提供线下便捷的快餐式K歌方式,用户可以在一个电话亭大小的空间里完成K歌体验.K歌亭在客户端有VOD.微信和Web共三个交互入口,业务复杂 ...
随机推荐
- 分析项目中ANR问题
简介 之前接手的老项目,从接手到现在也没怎么去维护过,突然测试那边给我提了一个ANR的BUG,由于从别人手中接手,并且此项目也不是经常需要维护,所有对项目代码并不是特别熟悉,因此解决此问题还是比较麻烦 ...
- FFmpeg命令行之ffplay
一.简述 ffplay是以FFmpeg框架为基础,外加渲染音视频的库libSDL构建的媒体文件播放器. 二.命令格式 在安装了在命令行中输入如下格式的命令: ffplay [选项] ['输入文件'] ...
- dubbo 泛化调用场景下,如何调用下游的泛型对象入参
dubbo泛化调用时,除了java原生的collection,map泛型对象,业务自定义的泛型对象是不支持泛化调用的,无法正确的填充下游数据对象.两种解法: 泛化调用的时候把泛型具体类型的全限定类路径 ...
- WinAppSDK / WinUI3 项目无法使用 SystemEvents 的问题
SystemEvents 是一个开发 win32 窗口项目很常用的类,其中封装了一些常用的系统广播消息.在 WinUI3 项目中,SystemEvents 事件经常无法触发,简单排查了一下原因. Sy ...
- 学习笔记-安装kafka集群
官网地址:https://kafka.apache.org/ 1.下载解压 #下载 wget https://mirror.bit.edu.cn/apache/kafka/2.6.0/kafka_2. ...
- QT之数据显示
引言 目前,为了提高数据校对的效率,使用合理的显示工具完成具体的数据处理,可以加速设计中调试的速度,这也是自行设计上位机的意义所在.数据处理在LabVIEW中是比较简单的,直接调用即可.在QT中可能需 ...
- KingbaseES V8R6 空闲事务会话超时自动终止机制
背景 如果会话在事务中停留的时间过长,则允许自动终止空闲会话.可以由配置参数idle_in_transaction_session_timeout 事务处于空闲状态的时长,它有助于防止被遗忘的交易事务 ...
- wordpress自建博客站,在页脚添加网站总访问次数
wordpress自建博客站,在页脚添加网站总访问次数 笔者使用的主题是 GeneratePress 版本:3.1.3 打开footer.php编辑 <div style="text- ...
- iNeuOS工业互联网操作系统,“低代码”表单开发应用过程(一)
iNeuOS工业互联网操作系统,"低代码"表单开发应用过程(一) 目 录 1. 概述... 2 2. "低代码"表单开发应用过程 ...
- 开启新时代,承接新使命,开放原子开源大赛OpenHarmony创新赛正式启航!
开放原子开源大赛OpenHarmony创新赛,正式启动啦! "OpenHarmony创新赛"是开放原子全球开源大赛下开设的创新赛道,面向企业.个人.高校师生等广大开发者,聚焦O ...