一种容器持久存储挂载方法技术

技术编号:19215470 阅读:31 留言:0更新日期:2018-10-20 06:38
本申请涉及一种容器持久存储挂载方法,属于计算机技术领域,该方法包括:接收容器创建请求,所述容器创建请求包括待创建的容器的容器标识;根据所述容器创建请求读取预先存储的配置文件,所述配置文件包括卷目录地址和卷映射到所述待创建容器中的映射地址;建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系;创建具有所述容器标识的容器,所述容器提供的数据通过所述绑定关系与所述卷目录地址指示的数据同步变化;可以解决容器实例中部分数据的持久性存储问题,实现了容器中的数据能够保存到本地文件系统中。

【技术实现步骤摘要】
一种容器持久存储挂载方法
本专利技术涉及一种容器持久存储挂载方法,属于计算机

技术介绍
为了实现写时复制(copy-on-write),容器会使用一种名为叠加(overlay)文件系统的特性。即需要对根镜像进行修改时,容器会利用这一特性,将变更内容写入到独立区域并“覆盖”原有内容。这种修改通常都是瞬时的,也就是说,通常情况下,当容器删除时,这些修改也将不复存在。因此,容器默认是没有永久存储的。为了解决存储问题,像Docker这样的工具,提供了新的特性来获得更加持久化的存储:Docker卷和数据容器。但由于Docker使用的是本地存储,不支持Cinder共享存储。
技术实现思路
本专利技术的目的在于提供一种可以实现容器中的数据能够保存到本地文件系统中的技术方案。为达到上述目的,本专利技术提供如下技术方案:所述方法包括:接收容器创建请求,所述容器创建请求包括待创建的容器的容器标识;根据所述容器创建请求读取预先存储的配置文件,所述配置文件包括卷目录地址和卷映射到所述待创建容器中的映射地址;建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系;创建具有所述容器标识的容器,所述容器提供的数据通过所述绑定关系与所述卷目录地址指示的数据同步变化。可选地,所述配置文件还包括功能启动标识,所述建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系,包括:根据所述功能启动标识确定是否启动卷挂载功能;在所述功能启动标识指示启动所述卷挂载功能时,建立所述绑定关系。可选地,所述建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系,包括:检测是否存在根据所述卷目录地址和所述容器标识确定的目标目录;在不存在所述目标目录时,创建所述目标目录;建立所述目标目录与所述映射地址之间的绑定关系。可选地,所述检测是否存在根据所述卷目录地址和所述容器标识确定的目标目录之后,还包括:在存在所述目标目录时,创建立所述目标目录与所述映射地址之间的绑定关系。可选地,所述创建具有所述容器标识的容器之后,还包括:为所述容器创建网络;将所述网络附加到所述容器上。可选地,所述创建具有所述容器标识的容器之后,还包括:根据创建所述容器的过程生成容器创建日志;根据所述容器创建日志分析创建过程的缺陷,对所述创建过程进行优化,得到优化后的创建过程,所述优化后的创建过程用于在下一次创建容器时使用。可选地,所述根据所述容器创建请求读取预先存储的配置文件,包括:获取所述容器所运行的虚拟机的虚拟机标识;从至少一个配置文件中确定所述虚拟机标识对应的配置文件;读取所述虚拟机标识对应的配置文件。可选地,所述根据所述容器创建请求读取预先存储的配置文件之前,还包括:接收容器创建需求;根据所述容器创建需求生成所述配置文件;其中,所述容器创建需求用于指示在创建容器时创建所述容器的存储功能;或者,所述容器创建需求用于指示在创建容器时不创建所述容器的存储功能。本专利技术的有益效果在于:通过在创建容器时读取预先存储的配置文件,根据该配置文件建立容器与卷目录地址和映射地址之间的绑定关系,实现了本地文件系统到Docker容器的映射,使容器中的数据能够保存到本地文件系统中,有效解决了容器实例中部分数据的持久性存储问题。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,并可依照说明书的内容予以实施,以下以本专利技术的较佳实施例并配合附图详细说明如后。附图说明图1是本申请一个实施例提供的用于容器持久存储挂载的云平台整体部署架构的结构示意图;图2是本申请一个实施例提供的容器持久存储挂载方法的流程图;图3是本申请一个实施例提供的容器持久存储挂载方法的流程图。图4是本申请一个实施例提供的建立绑定关系的方法的流程图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。图1是本申请一个实施例提供的用于容器持久存储挂载的云平台整体部署架构的结构示意图,如图1所示,该云平台至少包括:身份验证服务110、镜像服务120、计算服务130、网络管理服务140、可视化组件150。身份验证服务110,用于为整个云平台提供一个统一的、完整的身份认证、服务目录以及令牌和访问策略服务。镜像服务120,用于为虚拟磁盘镜像提供目录和资源库,并且还可以保存镜像文件的元数据。计算服务130,用于提供按需创建虚拟机的服务。网络管理服务140,用于为计算服务130创建的虚拟机实例提供网络功能。可视化组件150,用于为云平台中的实例和服务提供图形化的用户界面(UserInterface,UI)界面。在整个云平台,Docker将取代默认的KVM交换机(KeyboardVideoMouse,KVM)作为一个新的虚拟机管理程序。由Docker创建的容器实例是一个轻量级的虚拟机实例。Docker镜像通过使用DockerSave保存成TAR包,并放到镜像服务120上进行管理。创建容器的时候,系统从镜像服务120下载容器的镜像,然后使用DockeLoad加载并启动容器镜像。创建虚拟机实例是卷管理模块的基础,而计算服务130作为整个云平台最核心的组件,主要是负责的正是这一部分,而整个云的其他组件用来服务计算服务130。图2是本申请一个实施例提供的容器持久存储挂载方法的流程图,本实施例以该的方法应用于图1所示的云平台中,且各个步骤的执行主体计算服务130(卷管理模块)为例进行说明。该方法至少包括以下几个步骤:步骤201,接收容器创建请求,容器创建请求包括待创建的容器的容器标识。步骤202,根据容器创建请求读取预先存储的配置文件,该配置文件包括卷目录地址和卷映射到待创建容器中的映射地址。步骤203,建立容器标识、卷目录地址和映射地址之间的绑定关系。步骤204,创建具有容器标识的容器,该容器提供的数据通过绑定关系与卷目录地址指示的数据同步变化。综上所述,本实施例提供的容器持久存储挂载方法,通过在创建容器时读取预先存储的配置文件,根据该配置文件建立容器与卷目录地址和映射地址之间的绑定关系,实现了本地文件系统到Docker容器的映射,使容器中的数据能够保存到本地文件系统中,有效解决了容器实例中部分数据的持久性存储问题。此外,开发人员可以在宿主机上直接修改其中的文件,以此来改变容器中相关服务的特性。图3是本申请另一个实施例提供的容器持久存储挂载方法的流程图,本实施例以该的方法应用于图1所示的云平台中,且各个步骤的执行主体计算服务130(卷管理模块)为例进行说明。该方法至少包括以下几个步骤:步骤301,接收容器创建请求。其中,容器创建请求包括待创建的容器的容器标识。步骤302,根据容器创建请求读取预先存储的配置文件。卷管理模块可以从配置文件库中读取配置文件,从而得到卷目录地址和映射地址。可选地,在不同虚拟机中创建的容器可以对应不同的配置文件,此时,卷管理模块获取容器所运行的虚拟机的虚拟机标识;从至少一个配置文件中确定虚拟机标识对应的配置文件;读取虚拟机标识对应的配置文件。可选地,容器的配置文件可以是由用户设置的。此时,卷管理模块接收容器创建需求;根据容器创建需求生成配置文件;其中,容器创建需求用于指示在创建容器时创建容器的存储功能;或者,容器创建需求用于指示在创建本文档来自技高网...

【技术保护点】
1.一种容器持久存储挂载方法,其特征在于,所述方法包括:接收容器创建请求,所述容器创建请求包括待创建的容器的容器标识;根据所述容器创建请求读取预先存储的配置文件,所述配置文件包括卷目录地址和卷映射到所述待创建容器中的映射地址;建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系;创建具有所述容器标识的容器,所述容器提供的数据通过所述绑定关系与所述卷目录地址指示的数据同步变化。

【技术特征摘要】
1.一种容器持久存储挂载方法,其特征在于,所述方法包括:接收容器创建请求,所述容器创建请求包括待创建的容器的容器标识;根据所述容器创建请求读取预先存储的配置文件,所述配置文件包括卷目录地址和卷映射到所述待创建容器中的映射地址;建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系;创建具有所述容器标识的容器,所述容器提供的数据通过所述绑定关系与所述卷目录地址指示的数据同步变化。2.如权利要求1所述的方法,其特征在于,所述配置文件还包括功能启动标识,所述建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系,包括:根据所述功能启动标识确定是否启动卷挂载功能;在所述功能启动标识指示启动所述卷挂载功能时,建立所述绑定关系。3.如权利要求1所述的方法,其特征在于,所述建立所述容器标识、所述卷目录地址和所述映射地址之间的绑定关系,包括:检测是否存在根据所述卷目录地址和所述容器标识确定的目标目录;在不存在所述目标目录时,创建所述目标目录;建立所述目标目录与所述映射地址之间的绑定关系。4.如权利要求3所述的方法,其特征在于,所述检测是否存在根据所述卷目录地址和所述容器标识确定的目标目录之后,还包括:...

【专利技术属性】
技术研发人员:李新明刘斌
申请(专利权)人:中科边缘智慧信息科技苏州有限公司
类型:发明
国别省市:江苏,32

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

1