简介: 将企业级存储和云的特点进行完美的融合是云上企业级存储的目标,它打开存储更多新的维度,在保障用户业务永续的同时,帮助用户更好的进行业务创新。本文属ESSD技术解读的总篇,总体介绍ESSD 云盘创新融合了云和企业级存储的特性,以服务为中心,为用户提供了更便捷、更智能的存储服务体验。
前言
提到企业级存储,大家印象最深的是“高稳定”、“高性能”、“丰富的企业级特性”等关键词;而说到云计算,大家会想到“大规模”、“全球部署”、“弹性”、“服务化”、“智能化”、“即时开通"、“按量付费”这些鲜明特征。如果把两者结合,会产生什么样的新存储形态呢?云上企业级存储的目标就是将企业级存储和云的特点进行完美的融合,打开存储更多新的维度,在保障用户业务永续的同时,帮助用户更好的进行业务创新。
以块存储为例,常见的企业级解决方案是存储区域网络(Storage Area Network,简称 SAN),通过专用网路连接存储阵列和业务主机,提供存储统一管理和共享,并实现高性能低延迟的数据访问。但 SAN 存在成本高、运维复杂、可扩展性差等不足,而这些问题恰恰是云技术最擅长的方面。为此,阿里云推出了基于 ESSD 云盘的云上企业级存储,帮助用户更好的满足当前数字化转型和创新的需要。ESSD 企业级云盘
ESSD 云盘为用户提供高可用、高可靠、高性能的块级随机访问服务,并提供原生快照数据保护和跨域容灾等丰富的企业特性。它于 2016 年启动项目, 基于盘古 2.0 分布式存储底座,采用 RDMA 和 NVMe SSD 全用户态 IO 技术,并结合阿里 10 多年分布式存储自研技术积累, 在 2017 年首次亮相阿里“双11”购物节,承载数据库和中间件等核心业务部分峰值流量,取得了惊艳的表现;于是在 2018 年开始在阿里内部大规模推广使用,并开始开放给部分外部客户使用,都取得了非常积极的反馈;在 2019 年 ESSD 云盘大规模商业化,率先带领云盘进入了微秒时代; 2020 年推出普惠型规格 ESSD PL0,让中小客户也能获取 ESSD 全闪技术的红利;到 2021 年 9 月,ESSD 云盘已经在 59 个可用区规模售卖, 95% 的阿里云头部客户选择使用 ESSD, 成为最受欢迎的云盘产品。
作为云产品服务,ESSD 云盘提供服务化、安全、智能的运维管控服务,帮助用户屏蔽了底层复杂的硬件和系统运维,以声明式开放 API 方便用户构建上层的业务系统。同时,ESSD 云盘服务随着云的基础设施在全球部署输出,无论是中心区域、还是本地云、边缘云,更好的满足用户多样化的部署需求。ESSD 云盘为用户提供了三大方面的数据服务: 高稳定、高性能、高弹性的数据访问服务, 轻量、实时、弹性的原生快照数据保护服务,随时随地、容灾多活服务。
在最基础的数据访问方面,ESSD 云盘提供了 9 个 9 的高可靠和 5 个 9 的高可用,并提供端到端的数据保护,百微秒低延迟和百万 IOPS,支持自定义密钥加密、在线扩容和秒级性能变配。并且在近期发布按业务负载性能自动弹性伸缩的 ESSD Auto PL 云盘,支持 NVMe 标准协议和共享访问, 以及满足安全合规物理隔离的专属集群。
在基础数据访问服务之上,ESSD 云盘还为用户提供了原生快照服务,帮助用户更便捷的做好数据保护。它提供灵活的快照策略,并且在快照期间不影响前端 IO 读写性能, 能够秒级完成快照的创建、回滚和克隆,支持多块云盘创建一致性组快照和应用一致性快照, 提供快照跨区域复制,并且满足云原生和容器场景通过快照大规模批量创建云盘进行实时访问的需求。
除了快照数据保护,为了更好满足用户多地域容灾多活的需求,ESSD 云盘新推出了异步复制服务,让用户“零”门槛起步,利用阿里云全球部署的基础设施和网络专线,实现异地容灾架构。未来还会为用户提供同步复制、跨区多活等更多容灾服务。
ESSD 云盘以服务为中心,结合云和企业级存储的特性,构建云上企业级存储服务。下面我们选取 ESSD 云盘最新发布的产品和功能特性,为大家做更详细的解读。
ESSD Auto PL 高弹性 IO
ESSD Auto PL 云盘的推出是为了应对很多用户面临的问题:无法准确预估业务峰值,在性能配置上难以做好精准规划。如果性能配置预留过高,会造成日常资源的大量闲置浪费;而如果性能预留不足,业务突发洪峰会造成业务受损。ESSD Auto PL 云盘希望帮助用户解决这个困境,它支持性能指定配置的同时,支持按业务负载自动伸缩,单盘性能可以自动提升到最高 100 万 IOPS,为不可预期的突发访问提供安全便捷的性能自动配置。在打开自动性能伸缩的情况下,用户只需按实际发生超出预先配置性能的读写次数付费,保障业务稳定运行的同时,最大化节省用户的资源配置开销。
作为业界第一个支持性能容量解耦同时支持性能按负载弹性伸缩的云盘,ESSD Auto PL 需要解决很多技术上的挑战:比如如何快速感知业务的负载变化,如何动态按需申请释放资源支持性能伸缩,如何快速平衡负载调度等等。经过反复打磨,ESSD Auto PL 云盘可以做到 10 毫秒级别的业务负载感知和预测,在秒级别完成动态队列调度和并发度调整,对单个云盘细粒度切分能够让它均衡使用整个后端存储集群的资源并快速动态调整。不止于此,我们还解决另外两个问题来扫除用户的顾虑:1. 通过对集群容量-性能水位的实时监控预测和分钟级跨集群调度均衡,来满足用户大批量云盘负载同时升高,可能超出单集群性能上限的情况;
2. 通过多级 QoS 隔离和优先级管理,包括硬件卸载的队列动态分发,IO 打标和执行代价评估重排等方法,避免在多租户场景下因为弹性提升带来多租户间的性能干扰。
通过这些技术,我们希望 ESSD Auto PL 云盘简化用户的性能配置,更好助力用户平滑度过业务的尖峰时刻。
NVMe 和 共享访问
随着闪存技术的迅速发展和普及,存储介质已经不再是存储的瓶颈,而介质之上的软件处理成为最大瓶颈。NVMe 协议是针对高性能设备新推出的数据访问协议,相比传统的 SCSI 协议,它更加简捷轻量,同时提供了丰富的扩展特性。 这次 ESSD 云盘支持用户使用 NVMe 协议更高效的访问数据,同时基于 NVMe Persistent Reservation 标准实现了云盘共享访问。
很多主流的商业数据库比如 Oracle RAC, SAP HANA 等需要使用磁盘共享访问来实现高可用, NVMe Persistent Reservation 为共享访问和权限管理提供了安全、轻量的支持,大幅缩短故障切换时间。同时,ESSD 云盘还利用了硬件卸载技术将 NVMe 虚拟化延迟降低 30%, 并采用自研的 Solar-RDMA 网络协议支持高效数据传输,并能够秒级完成网络多路径的故障切换。
轻量、实时、弹性的原生快照数据保护
ESSD 云盘提供原生快照为用户提供便捷的数据保护服务,本次发布除了新增多盘一致性快照组和应用一致性快照外,还对快照体验进行了极致的升级优化,体现在“轻”、“快”、“弹”三个方面。
“轻”: 在快照创建期间不影响 IO 读写性能。很多用户担心创建快照影响 IO 性能,只在业务低谷期才进行快照数据保护。我们对分布式快照算法和实现进行了大量优化,让用户可以抛开影响性能的顾虑,随时进行数据保护。从下图的实测数据可以看到,对 2 块正在大量写入的 ESSD 云盘创建一致性快照时,前台写入的延迟不变;我们也实测了另外 2 家友商的快照表现,会发现 IO 延迟增加接近 1-3 倍。
“快”: ESSD 云盘快照可以在秒级内完成创建、回滚和克隆,满足用户实时数据保护和 DevOps 快速编排上的需要。
“弹”: 随着云原生和容器技术的普及应用,用户希望能够在短时间内拉起大量容器 Pod,我们对快照批量克隆云盘并进行实时数据访问做了大量优化,能够让用户在分钟级拉起数千个 Pod 快速启动运行。
异步复制,跨域容灾
数据是企业的核心资产,现实世界总会发生非人力可及的灾难,导致数据中心大面积停服,甚至造成数据丢失。数据异地容灾是企业级客户的普适需求,传统的容灾方案往往需要用户自建容灾中心、购买专线、以及投入大量人力运维和测试验证,投入成本大、周期长。而云计算服务在全球部署的基础设施天然为用户构建了随时随地的容灾能力。ESSD 云盘这次推出了异步复制服务,帮助用户“零”门槛,随时按需进行跨地域数据容灾。
在 ESSD 云盘异步复制技术设计实现上,我们对云盘一致性组复制算法做了很多创新优化, 保证主从云盘组的时序强一致性和多重交叉校验, 主盘前台读写性能无损; 同时在数据传输链路,确保最小增量数据复制,利用多路并发调度压缩复制时间周期,并对网络健康状况进行实时检测和切换;用户在控制台轻点几下鼠标,即可随时开通异步复制服务,只需按实际使用量来付费。
ESSD 专属集群
部分云上用户希望对数据实施物理隔离以满足行业规范需要, ESSD 专属集群既能让用户享有云上的统一运维和软硬件持续迭代的优势,又可以独占集群满足物理资源隔离和定制化的需要。
全新一代高性能 ESSD PL-X 云盘
ESSD 的高性能和丰富企业特性得到很多用户的喜爱,我们也从和用户的互动交流中学习很多,不断打磨迭代来带给用户更好的云盘体验。很多用户都反馈希望 ESSD 在性能方面能更进一步,能够满足他们最苛刻性能场景的需求。我们也一直朝这个方向努力,这里提前给大家带来一个好消息,全新一代的高性能 ESSD PL-X 云盘即将发布邀测。
ESSD PL-X 云盘相比之前性能最强的 ESSD PL-3 云盘,4K 数据写端到端延迟降低 70%,只有 30 us; IOPS 提升 3 倍,最高达到 300 万; 而吞吐从 4GB/s 提升到 15GB/s。 相比其他友商的高性能云盘, ESSD PL-X 性能对比优势更加明显。
ESSD PL-X 云盘采用了最新的高速 RDMA 网络和持久性内存技术,对数据链路进行深度优化,并通过创新的高并发读写一致性协议,极致压缩了协议串行化开销。同时考虑到持久性内存的单位成本要比 SSD 高一个数量级, ESSD PL-X 云盘融合持久性内存和 NVMe SSD 存储介质,采用智能分层数据存储管理,为用户带来最高的性价比。从我们当前的 FIO 实测数据看,ESSD PL-X 云盘 4K 单路写端到端延迟只有 25.44 微秒, 这个延迟分解下来: 主机端虚拟化延迟 10.6 us,RDMA 网络传输 13us, 存储后端处理仅 1.8 us。
我们还测试 ESSD PL-X 在数据库场景下的表现,在 32 核 64 GB 内存的云服务器上部署 MySQL 8.0.18 社区版,通过 sysbench 压测多家本地盘和云盘的性能表现,可以从下图看到,ESSD PL-X 云盘在纯写纯读场景下性能都超出其它本地盘和云盘。同时由于 ESSD 云盘支持 16KB 原子写,满足 MySQL 关闭 double write 来更好的提升性能。我们还期望通过不断优化持久化内存的弹性缓存算法来进一步提升性能,从右下图可以看到,随着持久化内存作为读 cache 命中率的提升,MySQL 读性能还会不断攀升。总结
ESSD 云盘创新融合了云和企业级存储的特性,为用户提供了更便捷、更智能的存储服务体验。我们相信,未来存储不再是大家印象中的笨重的“铁盒子”,云上企业级存储以服务为中心,打开存储更多维度,让存储变得更加柔性和智能。ESSD 云盘新的产品功能发布朝这个方向迈出了一大步,“稳定安全高性能,普惠智能新存储”,我们在路上!
原文链接
本文为阿里云原创内容,未经允许不得转载。