一种实现容器运行时数据存储的方法及装置制造方法及图纸

技术编号:18894008 阅读:48 留言:0更新日期:2018-09-08 10:44
本申请实施例提供了一种实现容器运行时数据存储的方法及装置,其中,该方法包括:获取用户端定义的目标数据卷的属性信息;所述目标数据卷的属性信息包括存储空间大小以及存储性能;从多种存储资源池中查找到满足所述存储性能的存储资源池,并申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间;其中,不同存储资源池对应的存储性能不同;将与申请的所述存储空间对应的目标数据卷挂载到待运行容器上。本申请实施例提高了容器运行时数据存储的效率。

Method and device for realizing data storage in container running time

The present embodiment of the application provides a method and an apparatus for realizing container run-time data storage, wherein the method includes: acquiring attribute information of a user-defined target data volume; the attribute information of the target data volume includes storage space size and storage performance; and searching for a satisfying location from a plurality of storage resource pools A storage resource pool for storage performance is described, and a storage space corresponding to the size of the storage space in the storage resource pool is applied; the storage performance corresponding to the different storage resource pools is different; and the target data volume corresponding to the requested storage space is mounted on the pending container. The application example improves the efficiency of data storage when the container runs.

【技术实现步骤摘要】
一种实现容器运行时数据存储的方法及装置
本申请涉及计算机
,具体而言,涉及一种实现容器运行时数据存储的方法及装置。
技术介绍
在当今云计算迅猛发展的大背景下,虚拟化技术是构建云架构的关键技术之一,保证了云计算平台的高可靠性和高性能,最大化提升云计算平台的硬件资源利用率。容器就是一种轻量级虚拟化技术,通过封装软件的运行环境,实现基于运行平台的虚拟化。虽然容器和传统虚拟化技术相比,具备轻量级,高效,易移植等特点,但每个容器应用单元退出后,对应的运行时环境也相应释放,无法对容器运行期间的数据进行保存。因此,容器需要挂载数据卷来对容器运行期间的数据进行保存,配合容器应用,即实现容器数据持久化。现有技术中,当虚拟机上的容器应用管控模块需要维护大规模容器的编排和管理时,通常需要管理员根据经验预先在虚拟机上定义好大量的数据卷,每个数据卷具有对应的存储空间大小以及存储性能等属性信息;当用户需要运行容器时,获取用户需要使用的数据卷的属性信息,在预先定义的大量数据卷中查找是否存在客户端需要的数据卷,如果存在匹配的数据卷,则将加载容器镜像,运行容器,并将该匹配的数据卷挂载到容器中,实现容器应用的数据持久化。可见,现有技术需要管理员根据经验提前静态的设置并维护大量的数据卷,当有用户需要运行容器时,通过遍历的方式查找满足用户需求的数据卷。这种方式使得容器运行时数据存储效率低下,且有可能在遍历所有数据卷后,仍然查找不到满足用户需求的数据卷。
技术实现思路
有鉴于此,本申请实施例的目的在于提供一种实现容器运行时数据存储的方法及装置,以提高容器运行时数据存储的效率。第一方面,本申请实施例提供了一种实现容器运行时数据存储的方法,该方法包括:获取用户端定义的目标数据卷的属性信息;所述目标数据卷的属性信息包括存储空间大小以及存储性能;从多种存储资源池中查找到满足所述存储性能的存储资源池,并申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间;其中,不同存储资源池对应的存储性能不同;将与申请的所述存储空间对应的目标数据卷挂载到待运行容器上。第二方面,本申请实施例提供了一种实现容器运行时数据存储的装置,包括:获取模块,用于获取用户端定义的目标数据卷的属性信息;所述目标数据卷的属性信息包括存储空间大小以及存储性能;申请模块,用于从多种存储资源池中查找到满足所述存储性能的存储资源池,并申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间;其中,不同存储资源池对应的存储性能不同;挂载模块,用于将与申请的所述存储空间对应的目标数据卷挂载到待运行容器上。本申请实施例根据用户端定义的目标数据卷的属性信息,首先从多种存储资源池中查找到满足属性信息中指示的存储性能的存储资源池,并在存储资源池中动态申请一块与所述属性信息中指示的存储空间大小对应的存储空间,然后将与申请的存储空间对应的目标数据卷(也即指示了申请的存储空间位置的数据卷)挂载到待运行容器上。可见,本申请实施例不需要提前静态的设置并维护大量的数据卷,而是当有用户需要运行容器时,直接动态申请相应的数据卷,从而避免了再去遍历查找满足条件的数据卷,也节省了在查找不到满足条件的数据卷时还需要人为干预的成本,提高了容器运行时数据存储的效率。并且,由于无需提前静态的设置并维护大量的数据卷,降低了维护成本,并提高了存储空间的利用率。为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本申请实施例所提供的一种实现容器运行时数据存储的方法流程图;图2示出了本申请实施例所提供的一种实现容器运行时数据存储的场景示意图之一;图3示出了本申请实施例所提供的一种实现容器运行时数据存储的场景示意图之二;图4示出了本申请实施例所提供的第一种实现容器运行时数据存储的装置结构示意图;图5示出了本申请实施例所提供的第二种实现容器运行时数据存储的装置结构示意图;图6示出了本申请实施例所提供的第三种实现容器运行时数据存储的装置结构示意图;图7示出了本申请实施例所提供的第四种实现容器运行时数据存储的装置结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。参见图1所示,本申请一种实施例所提供的实现容器运行时数据存储的方法,可以应用于容器应用运行平台,具体应用于容器应用运行平台中的服务器,包括以下步骤S101~S103:S101,获取用户端定义的目标数据卷的属性信息;该目标数据卷的属性信息包括存储空间大小以及存储性能。这里的目标数据卷可以理解为供容器使用的特殊目录,在本申请实施例中用于表征一块存储空间位置。在具体实施中,当有容器应用加载到服务器时,服务器会查看容器应用中设置的用户对该容器应用的配置需求,其中包括该容器应用需要的目标数据卷的属性信息,从而确定该容器运行中产生的数据在存储时所需的存储空间大小以及存储性能。这里,存储性能可以分级表示,比如分为快速、中速或者慢速,存储性能的高低一方面与容器应用本身的业务功能相关,比如有些容器应用产生的数据量大,对存储性能的要求较高,有些容器应用产生的数据量小,对存储性能的要求较低。另一方面,存储性能的高低也可以与平台服务费用相关,若用户选择的存储性能较高,则平台收取的服务费用也较高。S102,从多种存储资源池中查找到满足存储性能的存储资源池,并申请一块在该存储资源池中的、与存储空间大小对应的存储空间;其中,不同存储资源池对应的存储性能不同。这里的存储资源池是指可以进行写入数据以及读取数据的存储空间,可以包括实体的存储设备,比如固态硬盘、磁盘等,也可以包括虚拟化存储资源池,比如云存储平台。在具体实施中,可以根据预先设置的存储资源模板与存储性能之间的映射关系,确定与用户端定义的存储性能对应的存储资源模板;其中,不同的存储资源模板绑定了用于提供存储空间的不同存储资源池;该存储资源模板中定义了能够执行的多种功能的存储接口,当服务器获取到用户端定义的目标数据卷的属性信息后,就会根据目标数据卷的属性信息中记录的存储性能找到对应的存储资源模板,调用该存储资源模板中定义的存储接口执行相关操作。其中,不同功能的存储接口用于被调用后执行不同操作。在S102中,存储资源模板中定义的多种功能的存储接口中包括创建数据卷存储接口;通过调用确定的存储资源模板中的所述创建数据卷存储接口,向对应的存储资源池申请目标数据卷。其中,不同本文档来自技高网...

【技术保护点】
1.一种实现容器运行时数据存储的方法,其特征在于,该方法包括:获取用户端定义的目标数据卷的属性信息;所述目标数据卷的属性信息包括存储空间大小以及存储性能;从多种存储资源池中查找到满足所述存储性能的存储资源池,并申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间;其中,不同存储资源池对应的存储性能不同;将与申请的所述存储空间对应的目标数据卷挂载到待运行容器上。

【技术特征摘要】
1.一种实现容器运行时数据存储的方法,其特征在于,该方法包括:获取用户端定义的目标数据卷的属性信息;所述目标数据卷的属性信息包括存储空间大小以及存储性能;从多种存储资源池中查找到满足所述存储性能的存储资源池,并申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间;其中,不同存储资源池对应的存储性能不同;将与申请的所述存储空间对应的目标数据卷挂载到待运行容器上。2.根据权利要求1所述的方法,其特征在于,所述查找到满足所述存储性能的存储资源池,包括:根据预先设置的存储资源模板与存储性能之间的映射关系,确定与所述存储性能对应的存储资源模板;其中,不同的存储资源模板绑定了用于提供存储空间的不同存储资源池;所述存储资源模板中定义了多种功能的存储接口,不同功能的存储接口用于被调用后执行不同操作;所述多种功能的存储接口中包括创建数据卷存储接口;所述申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间,包括:通过调用确定的存储资源模板中的所述创建数据卷存储接口,向对应的存储资源池申请所述存储空间。3.根据权利要求2所述的方法,其特征在于,所述目标数据卷的属性信息还包括容器运行结束后是否销毁所述目标数据卷的指示信息;所述多种功能的存储接口中还包括删除数据卷存储接口和卸载数据卷存储接口;所述方法还包括:若所述指示信息指示销毁所述目标数据卷,则在检测到所述容器运行结束后,调用所述删除数据卷存储接口,删除所述目标数据卷及所述目标数据卷对应的存储空间中保存的数据;若所述指示信息指示不销毁所述目标数据卷,则在检测到所述容器运行结束后,调用所述卸载数据卷存储接口,将所述目标数据卷从运行结束后的容器上卸载,并保留所述目标数据卷对应的存储空间中的数据。4.根据权利要求2或3所述的方法,其特征在于,所述多种功能的存储接口中还包括目录路径存储接口;所述方法还包括:在所述容器运行过程中,若接收到用户端发送的容器运行数据查询请求,调用所述目录路径存储接口,向所述用户端发送所述目标数据卷对应的存储空间的访问路径,以使得所述用户端根据所述访问路径查询所述容器运行数据。5.根据权利要求2所述的方法,其特征在于,所述存储资源池包括虚拟化存储资源池。6.根据权利要求1所述的方法,其特征在于,所述申请一块在该存储资源池中的、与所述存储空间大小对应的存储空间,包括:在确定所述用户端具有访问所述存储资源池的权...

【专利技术属性】
技术研发人员:杜辉
申请(专利权)人:新华三云计算技术有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1