云定义存储(CDS: Cloud Defined Storage)正式发布
在 2021 年中秋与国庆之际,阿里云存储团队发布了全新的云定义存储 CDS。
这次发布的 CDS 1.0 版本,基于阿里云飞天操作系统和分布式存储底座盘古,是业界首次同时支持对象存储服务 OSS、块存储服务 EBS、日志服务 SLS和灾备服务 HBR,特别是通过盘古全新的QoS框架支持对象存储服务 OSS 和块存储服务 EBS 服务融合部署在同一套物理服务器上面。这次发布的存储服务与公共云上规模化的存储服务做到了代码版本基本一致,弥合了以往混合云版本和公共云版本差距比较大的问题,让客户能够享受到和公共云基本一致的功能。
阿里云存储团队为什么要发布 CDS? CDS 和现在传统的存储阵列、分布式存储、软件定义存储的区别在哪里?阿里云存储团队如何看将来存储的发展趋势?在这里,我们 CDS 研发团队的核心技术负责人们会通过一系列的技术文章为大家揭开围绕着阿里云 CDS 的种种谜团。
为什么要开发云定义存储?
业务的需求
从阿里云存储在 2016 年底成立混合云存储 HCS(Hybrid Cloud Storage)部门以来,内外部业务对规模配置灵活和功能有竞争力的分布式存储产品的需求一直都不少。当时综合考虑产品研发的投入,阿里云在混合云市场尚且缺乏经验,以及国内市场参与厂商比较多和竞争激烈等多方面因素,我们制定的策略是以专有云集成的分布式存储、阵列、灾备一体机等结合起步,先进入传统存储市场的不同细分领域试水,为阿里云了解和摸索这个市场,储备经验和弹药。
自 2018 年开始,随着 IT 基础设施云化的节奏加快,基于云的基础架构或者数据中心已经成为政企客户的首选方案,给新的存储厂商特别是软件定义存储厂商带来了巨大的市场机会,同时随着阿里云在混合云市场的发展,对阿里云存储在混合云场景输出的要求越来越高涨,于是存储团队在 2019 年开始正式启动相关产品的规划、设计和开发。
艰难的决策
在把目标聚焦在分布式存储和 SDS 的方向以后,通过分析和研究,我们发现国内 SDS 产品的的同质化很严重,我们如果脱离公共云技术栈另起炉灶搞一个类似的产品难以构建持久的核心竞争力,同时从技术和工程角度讲,公共云和专有云两套产品架构并行开发,会造成巨大资源浪费,很多相似特性都需要在不同产品上重新做一遍,而且由于架构约束还不能保证都能支持。最后我们决策启动混合云分布式存储 SDS 的自研,技术上坚持公共云和混合云 CDS 共享同一套技术和代码,保持公共云存储服务的弹性、扩展能力和服务托管的差异化竞争力,同时积极补齐企业存储的高级特性。因此混合云 CDS 的架构、功能和用户体验都是和公共云保持一致的, 这也是我们这里所说的云定义存储的“云定义”的由来。
接下来,我们依次介绍一下软件定义存储的特点、云定义存储和软件定义存储的区别。
软件定义存储
软件定义存储的起源
软件定义存储(SDS:Software Defined Storage)的说法最早见于 2012 年 VMware 和 EMC 推动软件定义数据中心(SDDC:Software Defined Data Center)的一系列市场战役,后续一众数据中心/服务器/存储厂商也跟进了这个定义,大家的策略是为了应对越来越明显的企业上云的诉求,以及 AWS/Azure 云计算厂商带来的压力和竞争,于是面向云计算重新定义了企业数据中心和存储的路径和方向。当年 SDS 最热的一段历史过程如下图所示:
软件定义存储的关键特征
软件定义存储有很多特征,业界比较公认的有三大特征:抽象(abstract),池化(pool)和自动化(automate)。这些特征背后的驱动力是企业上云和企业 ICT 基础设施云化。
- 抽象,软硬解耦,管控解耦:云计算厂商和云化的数据中心大量使用了标准化/商业化的服务器来替代EMC/NetApp/IBM 等的专有硬件存储设备,大规模采购、存储/服务器分别招标等促使存储软件和硬件解耦。数据面和管控面解耦,也帮助客户通过统一的管控面来管理不同厂商的不同硬件(数据面)。
- 池化和横向扩展:为了提高资源利用效率,使用存储虚拟化技术池化各种存储和数据烟囱。
- 自动化:通过开发 API,让软件来控制存储资源和服务的增删改查,比人机界面的效率更高,业务弹性伸缩能力更强。
软件定义存储与传统存储阵列/软件的区别
SDS 和传统存储阵列在硬件耦合、节点/控制器扩展方式和规模、交互和管理接口各个层面都有区别:
值得一提的区别是,SDS 的“软件定义”在国外特别强调的是 SDS 是 API/SDK 丰富,可以软件编程驱动,而传统存储更多的人机交互接口,管理员驱动为主。
云定义存储是什么
云定义存储 CDS 是一个全新的软件定义存储,既能够在定制的 CDS 存储服务器上软硬一体优化输出,也有支持 X86 到各个信创平台的软件输出模式。其中最核心的关键词是“云定义”,总结下来有六大能力:
- 云原生(Cloud Native)
CDS 不是重新开发的产品,它是把阿里云公共云的各种存储服务,按照产品规划和市场需求逐步导入发布到统一的 CDS 存储平台,在内部 CDS 里的存储服务例如 OSS 的代码和特性和公共云完全一致;对外部,CDS 集成的各种云存储服务从控制台(GUI)、命令行(CLI)到 Open API/SDK 都和公共云一致,降低了原有阿里云客户和合作伙伴使用和集成的难度。
与此同时,CDS 还天然支持公共云的分层架构:云-区域(Region)-可用区(AZ)-集群(Cluster)。
- 云规模(Cloud Scale)
相对绝大部分分布式存储或者 SDS 厂商,阿里云 CDS 的最大优势就是 CDS 这些代码都是经历了阿里云公共云百万级客户和阿里巴巴集团各种业务(例如双十一)的打磨和验证的,支撑了超大规模和复杂业务的压力。以CDS 的 OSS 存储服务为例,单个桶在生产环境能够支持万亿对象,达到 EB 级容量。
- 云服务(Cloud Service)
CDS 在同一存储平台上同时提供多种云存储服务(一般最常见的有块存储和对象存储服务),支持多租户。前台可以像公共云那样客户自助服务(Self Service),后台可以客户自主运维也可以托管运维(本地驻场或者远程),各种基本存储服务通过 CDS 云管套件统一管控和运维、通过盘古统一数据底座,同时可以选择开通高级存储服务例如日志服务、灾备服务、数据管理和分析服务等。
与此同时,为了加速企业上云,阿里云存储在公共云和 CDS 上同步发布企业存储的功能,例如基于 EBS 的企业级块存储 ESSD ,基于 HBR 的容灾备份功能。
- 云连通(to Cloud)
存储数据在 CDS 和 CDS 以外的云之间通过网络受控的安全的流动。
- 云部署(on Cloud)
CDS 直接部署在云环境里作为云存储服务对外提供服务,这里的云环境可以是公共云、本地云、边缘云和专有云等各种云架构。
- 混合多云(Hybrid Multi Cloud)
除了外部客户的需求,阿里巴巴集团内部也有很多业务单元在对外输出产品或者服务的时候都有对存储的需求,综合这些需求,他们或者他们的客户都有避免被某个供应商锁定的诉求,混合多云已经成为标配。在这里,混合多云有两种不同解读:一种是阿里云的混合多云,包括阿里云公共云、混合云、本地云、边缘云计算等等;另外一种是阿里云和其他的云计算服务商。
CDS 基于统一的盘古 2.0 分布式存储混合多云实现了混合多云、云连通等多态云部署:
重新定义的特性发布模式
阿里云 CDS 不仅重新定义了混合云的 SDS 的新基线,同时也重新定义了阿里云存储产品和特性研发的工程模式,从 CDS 1.0 开始,已经在 CDS 平台发布的云存储服务单品会被要求公共云和混合云场景准同时发布。与此同时,混合云输出特别是无公网连接的场景,依赖客户或者驻场服务人员的技术能力;阿里云 CDS 产品重点打磨智能运维、RAS、和自动诊断能力,这些能力也同时反哺到公共云存储服务中,提高系统运维效率,增强系统稳定性。
CDS 重新定义的工程模式大大加速了混合云存储版本发布的能效,在本财年 CDS 的下一版本里,云存储网关、新的企业级快存储 ESSD 和文件存储 NAS 等重要产品和特性将快速推出。
展望
阿里云 CDS 是一个云定义的存储平台,当前 CDS 1.0 版本支持了多款阿里云存储产品和数据服务(包括块存储 EBS、对象存储 OSS、日志服务 SLS 和灾备服务 HBR)。在接下来的技术连载里我们会逐步介绍 CDS 里平台和管控服务、盘古、EBS、OSS、SLS 等各个产品和关键模块的特点。
阿里云 CDS1.0 的发布,代表着阿里云存储开始以一个原汁原味的云存储的形态进入混合云存储市场,来满足日益增长的云计算的需求。作为国内公共云的领先者,同时又是混合云市场的挑战者,我们有坚定的信心和决心,和高校的专家、友商同行一起推动中国存储技术的发展。
原创作品:阿里云存储 慈湖
系列文章传递门:
- 【CDS技术揭秘系列 总篇】阿里云的云定义存储来了https://developer.aliyun.com/article/792044?spm=a2c6h.13148508.0.0.3eef4f0ecyZOjQ
- 【CDS技术揭秘系列 01】阿里云CDS-OSS容灾大揭秘https://developer.aliyun.com/article/792000?spm=a2c6h.13148508.0.0.3eef4f0ecyZOjQ