当前位置: 首页 > 科技观察

三种云原生存储方案的优缺点及应用场景分析

时间:2023-03-12 11:38:43 科技观察

1.简介IT业务发展迅猛,业务数据快速增长,业务需求瞬息万变,流量高峰和低谷不可预测。因此,现有的传统车身应用架构无法满足当前的业务需求。在此背景下,容器技术应运而生。基于容器云的数字化技术,提升用户服务质量;提高运维效率;降低IT建设成本,提高资源利用率;它可以帮助用户采用新技术并快速推出新服务。随着越来越多的企业应用上云并选择使用容器化,容器服务在不同云厂商间的业务增长迅猛。容器服务逐渐成为云原生时代的新基础设施和云资源入口的最佳利用。容器可以随时销毁。当容器消失时,数据也会消失。因此,容器数据的持久化是必不可少的。同时,尤其是视频、5G、直播、大型金融服务商等突发应用的大量只读容器的弹性扩容,对资源弹性的要求非常高,数据存储需要具有极强的弹性和极快的可扩展性。二、云原生存储遇到的问题问题如下:1、易用性:存储服务部署、运维复杂,云原生化程度低,与主流编排缺乏融合平台。2.高性能:应用IO访问量大,IOPS要求高,延迟低,性能成为应用运行效率的瓶颈。3、高可用:云原生存储已经应用于生产环境,需要高可靠/高可用,无单点故障。4.敏捷:PV的快速创建和销毁,平滑的扩缩容,PV随Pod迁移的快速迁移等3.云原生存储解决方案3.1本地磁盘3.1.1本地磁盘架构3.1.2本地磁盘的优缺点优点:1.性能好,数据可靠。由于磁盘与应用系统之间的I/O路径最短,本地磁盘可以提供最好的性能。同时,RAID提供了一定程度的可靠性保证,可以避免单个磁盘故障造成的数据丢失。2.简单。将硬盘插入服务器的硬盘插槽,使用HBA卡或软件创建RAID,划分逻辑卷,格式化成某种文件系统,挂载到容器中。缺点:1.由于容器的动态特性,pod会漂移到其他节点,导致pod无法使用上一个节点磁盘上的数据。2、本地盘无法提供节点级别的高可用。当物理节点发生故障时,应用程序无法恢复到其他节点,因为数据存储在故障节点上。3、本地盘的敏捷性不能满足业务需求。业务使用的存储空间受本地磁盘大小限制。如果达到磁盘空间上限,将难以扩展。部署RAID也是一个非常耗时的操作,很难在短时间内部署大量的应用系统。4、后期运维工作量大,维护难度大。3.1.3应用场景无状态服务,应用服务pod固定场景。IO密集型应用服务,尤其是对磁盘网络IO敏感的应用服务。3.2集中存储NFS3.2.1NFS系统架构NFS是C/S架构,分为NFS客户端和NFS服务器两部分。两者不直接通信,通过RPCbind服务传递信息。NFS客户端和服务器基于TCP/IP协议进行通信。3.2.2集中存储的优缺点优点:1.使用方便。2.方便部署非常快捷,维护非常简单。3.兼容Linux系统和Windows系统。4、通讯基于TCP/IP协议,具有良好的适用性和兼容性。5、远程共享数据,解决数据高可用问题。缺点:1.集中式存储虽然可以为单个业务系统提供高性能保障,但是当面临大量业务并发访问时,存储控制器成为性能瓶颈。如果要满足大量业务的性能需求,需要使用多套集中式存储系统,存储系统的管理成本也会急剧上升。2、另外,由于中心化存储诞生于几十年前,设计时并没有考虑到敏捷性和运维的便利性,无法应对短时间内大量卷的并发创建和销毁,不能满足业务系统的需求。敏捷性要求。3.2.3应用场景多个不同的应用系统共享同一个文件目录。pod漂移后,数据不会丢失,pod所在节点也不需要固定。3.3云原生分布式存储OpenEBS3.3.1OpenEBS系统架构1.Openebs主要分为两部分:OpenEBS控制层和OpenEBS数据引擎。2.数据引擎是OpenEBS的核心,负责代表它们所服务的有状态工作负载对底层持久存储执行读写操作。3、控制层主要负责与KubernetesCSI交互,管理volume的生命周期;与Prometheus/Grafana、遥测和监控存储集成。3.3.2分布式存储的优缺点OpenEBS优点:容器附加存储的声明式配置。使用同步数据复制的持久性和高可用性。OpenEBS可以通过Jiva、cStor和Mayastor存储引擎保证数据复制同步和高可用性。使用快照和克隆的数据保护。cStor存储引擎支持快照和克隆,快照数量没有限制。通过备份和恢复进行灾难恢复。通过OpenEBSVelero插件,实现数据备份和恢复。使用Prometheus指标和Grafana仪表板的可观察性。OpenEBS提供与存储相关的指标,例如卷IOPS、吞吐量、延迟和数据模式。缺点:结构复杂,不易使用,需要较强的技术和运维能力;数据一致性问题。对于数据一致性要求比较高的应用场景,分布式存储的性能可能会稍微弱一些。因为是分布式结构,数据同步是个大问题。虽然现在的技术在进步,但是还不如传统的存储设备。可以肯定的方法。3.3.3OpenEBS应用场景StatefulServices的数据持久化。快照、服务数据的克隆。业务数据容灾。四、如何选择容器云存储1、容器服务是集群架构吗?一个独立的非集群服务,可以使用本地存储。本地存储io不上网络。集群服务需要共享目录,应该使用NAS存储或者分布式存储来解决。2.数据存储类型容器存储以块和文件类型为容器服务提供存储资源。ContainerPod根据业务需求选择块存储和文件存储。3.业务数据的重要性数据的保密性。存储加密数据。数据安全。数据存储支持快照、备份。数据迁移和复制。数据存储支持数据迁移和数据复制。数据容灾。4.容器服务特性容器服务是有状态服务还是无状态服务。通常,有状态服务需要持久化数据;其次,存储需要支持动态创建存储。容器的生命周期以及它开始和停止运行的频率。高启停频率的系统会带来数据持久化的挑战,因为一些存储系统并不是为了处理容器存储资源的频繁快速供应和回收而设计的。五、结语随着云原生时代的到来,越来越多的业务系统将采用云原生架构。存储系统作为承载业务稳定运行的核心部件,在云原生架构下也面临着新的挑战。同时,数据库和存储系统本身也受到云原生架构的影响,逐渐发展出云原生数据库和云原生存储系统。未来,我们可以看到越来越多的云原生数据库和云原生存储出现在数据中心,成为广泛应用的技术。