共计 2592 个字符,预计需要花费 7 分钟才能阅读完成。
什么是云原生存储
云原生是一种开发和运行软件应用程序的新范式,它交融了云计算、容器化、Serverless 和微服务等技术趋势。云原生存储是一种旨在用于云原生环境的存储技术。
云原生存储平台能够存储管理有状态应用程序的数据,并解决 Kubernetes 或其它基于云原生环境的基础设施中始终存在的数据存储挑战问题。分布式架构中的对象存储能够基于古代对象存储、块存储或传统磁盘驱动器提供数据存储服务。
云原生利用和传统利用并没有一个规范的划分界线,其形容的是一种技术偏向,即越合乎以下特色的利用越云原生化:
- 利用容器化
- 服务网格化
- 申明式 API
- 运行可弹性扩大
- 自动化的 DevOps
- 故障容忍和自愈
- 平台无关,可移植的
云原生利用是一簇利用特色能力的汇合,而实现了这些能力的利用在可用性、稳定性、扩展性、性能等外围能力都会有大幅的优化。优异的能力代表了技术的方向,云原生利用正在引领各个应用领域实现云原生化,同时也在粗浅扭转着应用服务的方方面面。存储作为利用运行的基石,也在服务云原生化过程中遇到了更多的需要与挑战。
云原生存储的次要特点
云原生存储的要害个性如下:
高可用性
云原生存储必须在高需要中可用。存储系统须要具备即便在事件失败时也能拜访数据的性能——无论是在传输零碎、存储介质、控制器还是其余组件中。存储高可用性的 3 个因素:
- 在其它存储设备上,保护数据的复制正本。
- 在任何故障状况下,冗余设施都会解决故障转移。
- 故障组件能够修复和复原。
以下几个是掂量高可用性的指标:
- 复原工夫指标 (RTO) – 从故障到服务复原的工夫。
- 复原点指标 (RPO):最新的数据正本有多近?它会影响在产生故障时可能失落的大部分数据。
- 失常运行工夫百分比:服务启动和可用总工夫的百分比。
- 均匀故障间隔时间 (MTBF):故障产生的频率。
- 均匀复原工夫 (MTTR):服务从故障中复原所需的工夫。
可扩展性
云原生存储能够轻松灵便扩大。存储系统的可扩展性能够从 4 个维度来定义:
- 客户端可扩展性:有能力减少拜访存储系统的客户端和用户的强度。
- 吞吐量可扩展性:可能以更高的吞吐量运行,以 MB/ s 或 GB/ s 为单位,或通过同一接口每秒同时进行大量操作。
- 容量可扩展性:具备在单次部署中减少存储系统的存储容量的能力。
- 集群可扩展性:能够依据须要通过增加更多组件来减少存储组件。
存储性能
云原生存储应该反对可预测的、可扩大的性能,服务水平通常从以下角度进行掂量。
- 实现读 / 写操作的工夫。
- 每秒最大存储操作数。
- 数据的吞吐量,以 MB/s 或 GB/s 为单位存储或检索。
一致性
云原生存储应该反对如下的一致性:
- 在写、更新或删除操作之后,读操作应该返回正确和更新的数据。
- 零碎“强一致性”:批改数据返回实现后,从客户端读取立马可能读取最新的数据,相比弱一致性。
- 零碎“最终一致性”:批改数据返回实现后,从客户端读取可能不是读取最新的数据,要过一会可能能力读取到最新的数据。
在一致性零碎中,读取提早能够被视为复原点指标 (RPO),因为这代表了组件故障时数据失落最多的状况。
耐用性
云原生存储应该是长久的,须要爱护数据免受任何失落。不仅仅是可拜访性,存储系统要确保数据能够长期存储。一些因素会影响存储系统的耐用性:
- 数据保护层,例如可用的多个数据正本。
- 冗余级别——本地冗余、近程站点冗余、私有云可用区冗余以及区域冗余。
- 存储介质的耐用个性——例如 SSD、旋转磁盘、磁带。
- 零碎可能检测因为组件故障、流量溢出等导致的损坏,并主动重建或复原损坏的数据。
动静部署
动静部署是云原生存储系统的最终现实规范,能够依据须要疾速部署或配置,也能够通过多种形式进行部署和实例化,其中包含:
硬件部署:部署在数据中心的物理存储设备。应用此部署模型来构建标准化组件,这些组件无需非凡配置即可增加到集群中、须要时进行替换和删除。
软件部署:存储组件被定义为软件组件部署在硬件、设施或云实例上。无论是本地环境还是云环境,云原生软件解决方案通常都能够装置。一些软件定义的存储系统被构建为容器,并且能够应用容器编排主动部署。
云服务:这些云服务能够由私有云提供商治理并作为服务交付,形象了底层存储实现。用户能够通过应用 Web 界面或 API,配置新实例或额定存储。
云原生存储解决方案
云原生存储的最佳解决方案定义如下:
私有云存储
私有云能够提供一系列云原生存储选项,包含对象存储(例如 Amazon S3 或 青云 QingCloud 对象存储)、基于云的文件共享以及附加到计算实例的托管磁盘。
公有云存储
每当公司构建公有云时,他们通常会偏向于抉择具备简略可扩展性、高可靠性和便利性个性的商业云存储服务商。大多数服务商提供部署反对和经营与保护 (O&M) 服务。随着云原生存储需要的增长,公有云基础设施供应商提供了最成熟的云原生接口,容许本地资源耗费云存储。
自行保护的存储服务
公司能够在外部构建的存储服务类型次要有 2 种:块存储和简略文件存储。
Ceph RBD 和存储区域网络 (SAN) 被认为是绝对成熟的块存储解决方案,然而因为它们的复杂性,通常须要专门的反对和保护团队。
决定要创立本人的分布式存储系统的公司能够抉择 GlusterFS、NFS 和 CephFS 等服务做文件存储。NFS 绝对成熟,但不足以解决高性能利用需要。GlusterFS 和 CephFS 通常无奈满足要害工作应用程序所需的性能和可靠性。
本地云原生存储的一个新趋势是 S3 兼容存储——反对 S3 API 的本地存储设备。
本地存储
云原生应用程序中也有很多用例应用分布式存储服务意义不大,比方云原生零碎中的边缘设施或组件,应用本地存储的 2 种常见状况:
数据库:云原生应用程序依然应用传统数据库,包含 SQL 和 NoSQL。在许多状况下,云原生存储提供数据库所需的吞吐量和高性能。因而,数据库这时可能曾经被设置为冗余,从而无需高可用性。
缓存:在大多数状况下,组件应用本地存储作为长期信息的缓存,不须要长久化以爱护数据。长期存储是容器应用的最常见示例,当容器敞开时它会被擦除。
直播预报
云原生存储仍然面临很多挑战,10 月 28 日(本周四)19:30,青云直播间将邀请 QingStor 高级软件工程师杨兴祥线上分享【云原生时代须要什么样的存储系统】,带大家理解在以后云原生环境下,什么是云原生存储、为什么须要云原生存储,将对市场支流的几个云原生存储计划进行具体介绍,重点分享 QingStor 的云原生存储及利用实际。
本文由博客一文多发平台 OpenWrite 公布!