掌桥专利:专业的专利平台
掌桥专利
首页

一种在容器应用中动态匹配存储类的方法及系统

文献发布时间:2023-06-19 10:16:30



技术领域

本发明涉及容器技术领域,具体涉及一种在容器应用中动态匹配存储类的方法及系统。

背景技术

IT领域的变革日新月异,随着业务数据的急速增长、云计算的急剧扩张,传统的应用架构已经无法满足日益增长的需求。容器技术在这个背景之下应运而生,容器支持敏捷设计、开发和部署;支持在生产/开发测试环境中非常容易地扩展,因此它们逐渐成为分布式、云计算的首选解决方案。容器架构提供了更好的方式来构建现代化的应用程序,大多数企业已经开始以容器形式进行生产环境的应用托管。

容器中数据的存储是临时性的,当容器消失的时候,数据也会随之消失,后来就有了持久化存储的支持。在Kubernetes平台上,容器集群中同时多个容器运行,常常需要这些容器共享数据存储,来保证数据的安全性。Kubernetes平台抽象出存储卷以解决存储方面的问题。

Kubernetes平台抽象出来的存储卷具有明确的生命周期,与挂载它的容器集群相同。因此,存储卷比容器集群中运行的任何容器的存活周期都长,在容器重新启动时数据也会得倒保留。当然,当容器集群不再存在时,存储卷也将不存在。Kubernetes平台可以支持许多类型的存储卷,容器集群也能同时使用任意数量的存储卷。

容器云平台通过对接Kubernetes平台的持久存储卷,支持对存储卷的生命周期管理,来完成容器化应用所需要的数据存储卷映射。持久卷添加时,主要支持插件配置、持久存储卷配置和节点亲和性几部分配置。其中,存储卷的插件类型有Ceph RDB、NFS Share、Ceph Filesystem、iSCSI等类型,对每一种类型插件配置的数据项均包含存储容量、厂商标称性能指标(读写速率等)。

目前,容器集群中存储的声明和挂载是在容器集群创建之前,卷的类型(如SAN、NAS、Ceph等)和规格(读写速率、容量等)固定,存在如下缺陷:

(1)容器应用的部署和运维人员不容易直观确定所需的存储类的类型和规格;

(2)随着业务变化,存储类的类型和规格无法平滑调整,需要进行应用停机变更。

发明内容

为解决现有技术的不足,本发明实施例提供了一种在容器应用中动态匹配存储类的方法及系统。

第一方面,本发明实施例提供的在容器应用中动态匹配存储类的方法包括以下步骤:

实时获取容器应用当前的数据读写速率及数据增长率;

将所述数据读写速率及所述数据增长率输入机器学习模型,计算未来设定时间段内所述容器应用需要的数据读写速率及数据的增长量;

根据未来设定时间段内所述容器应用的数据读写速率及数据的增长量,确定满足未来需求的存储类。

优选地,根据未来设定时间段内所述容器应用需要的数据读写速率及数据的增长量,确定满足未来需求的存储类包括:

根据未来设定时间段内所述容器应用需要的数据读写速率及数据的增长量,从容器云平台中注册的存储类集合中获取满足未来需求的存储类。

优选地,在获取满足未来需求的存储类之后,所述方法还包括:

若所述容器初始存储类的类型与满足未来需求的存储类类型不同,则获取满足未来需求的存储类更新到容器。

优选地,将与所述容器应用匹配的存储类更新到容器包括:

使用满足要求的存储类创建对应的存储卷;

同步所述容器初始存储类对应的存储卷与满足未来需求的存储类对应的存储卷进行数据同步;

将所述容器初始存储类对应的存储卷与容器应用解绑定并将与满足未来需求的存储类对应的存储卷与容器应用绑定;

保留所述容器初始存储类对应的存储卷一段时间,用于故障容灾,之后进行销毁,释放数据。

第二方面,本发明实施例提供的在容器应用中动态匹配存储类的系统,其特征在于,包含以下模块:

获取模块,用于实时获取容器应用当前的数据读写速率及数据增长率;

计算模块,用于将所述数据读写速率及所述数据增长率输入机器学习模型,计算未来设定时间段内所述容器应用需要的数据读写速率及数据的增长量;

确定模块,用于根据未来设定时间段内所述容器应用的数据读写速率及数据的增长量,确定满足未来需求的存储类。

本发明实施例提供的在容器应用中动态匹配存储类的方法及系统具有以下有益效果:

基于机器学习模型预测容器应用在未来时间周期内对容器应用的读写速率和容量需求,并根据该读写速率和容量需求,确定满足未来需求的存储类,降低了直观确定所需的存储类的类型和规格的难度,实现了存储类的类型和规格的平滑调整。

具体实施方式

以下结合具体实施例对本发明作具体的介绍。

本发明实施例提供的在容器应用中动态匹配存储类的方法包括以下步骤:

S101,实时获取容器应用当前的数据读写速率及数据增长率。

S102,将数据读写速率及数据增长率输入机器学习模型,计算未来设定时间段内容器应用需要的数据读写速率及数据的增长量。

作为一个具体的实施例,该未来设定时间段为14天。

S103,根据未来设定时间段内容器应用的数据读写速率及数据的增长量,确定满足未来需求的存储类。

其中,存储类的核心是包含数据的目录,容器集群中的各个容器都可以访问该目录。同一品牌的存储器代表一个类型的存储类,特定类型的存储类可以决定这个目录如何形成的,并能决定它支持何种介质,以及目录中存放什么内容。使用存储类时,容器集群的声明中需要提供存储类的类型和存储类挂载的位置。容器中的进程能看到由它们的容器镜像和卷组成的文件系统视图。容器镜像位于文件系统层次结构的根部,并且存储类的任何存储卷都挂载在镜像内的指定路径上。

可选地,根据未来设定时间段内容器应用需要的数据读写速率及数据的增长量,确定满足未来需求的存储类包括:

根据未来设定时间段内所述容器应用需要的数据读写速率及数据的增长量,从容器云平台中注册的存储类集合中获取满足未来需求的存储类。

作为一个具体的实施例,通过监控容器对存储类的读写速率(是否接近或达到读写速率上限)以及统计单位时间内存储容量的增长(如保留14天数据时容器存储类是否将达到存储容量上限),为判定当前存储类是否满足需求,或容器云平台中是否有其它存储类满足需求提供依据。

可选地,在获取满足未来需求的存储类之后,该方法还包括:

若所述容器初始存储类的类型与满足未来需求的存储类类型不同,则获取满足未来需求的存储类更新到容器。

可选地,将与容器应用匹配的存储类更新到容器包括:

使用满足要求的存储类创建对应的存储卷;

同步所述容器初始存储类对应的存储卷与满足未来需求的存储类对应的存储卷进行数据同步;

将所述容器初始存储类对应的存储卷与容器应用解绑定并将与满足未来需求的存储类对应的存储卷与容器应用绑定;

保留所述容器初始存储类对应的存储卷一段时间,用于故障容灾,之后进行销毁,释放数据。

本发明实施例提供的在容器应用中动态匹配存储类的方法,通过实时获取容器应用当前的数据读写速率及数据增长率,将数据读写速率及数据增长率输入机器学习模型,计算未来设定时间段内容器应用需要的数据读写速率及数据的增长量,根据未来设定时间段内容器应用的数据读写速率及数据的增长量,确定满足未来需求的存储类,降低了直观确定所需的存储类的类型和规格的难度,实现了存储类的类型和规格的平滑调整。

本发明实施例还提供一种在容器应用中动态匹配存储类的系统,其特征在于,包含以下模块:

获取模块,用于实时获取容器应用的数据读写速率及数据增长率;

计算模块,用于将所述数据读写速率及所述数据增长率输入机器学习模型,计算未来设定时间段内所述容器应用需要的数据读写速率及数据的增长量;

确定模块,用于根据未来设定时间段内所述容器应用的数据读写速率及数据的增长量,确定满足未来需求的存储类。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 一种在容器应用中动态匹配存储类的方法及系统
  • 一种应用容器中应用程序调用方法、装置及存储介质
技术分类

06120112481629