[发明专利]使用外部存储加载容器集群应用数据时的数据存储方法有效
申请号: | 202011637786.X | 申请日: | 2020-12-31 |
公开(公告)号: | CN112799588B | 公开(公告)日: | 2022-10-21 |
发明(设计)人: | 吴江法;李逸锋;王一钧;蔡锡生;古强;王玉虎 | 申请(专利权)人: | 深圳软通动力信息技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F9/455;G06F16/13 |
代理公司: | 杭州汇和信专利代理有限公司 33475 | 代理人: | 董超 |
地址: | 518003 广东省深圳市罗湖区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 外部 存储 加载 容器 集群 应用 数据 方法 | ||
本发明公开了一种使用外部存储加载容器集群应用数据时的数据存储方法,包括以下步骤:(1)、计算节点获取应用容器集群pod对应的外部存储地址下的目录;(2)、计算节点将应用产生的数据存储至对应的外部存储地址下的目录,并在目录中建立标识文件;(3)、计算节点获取新的应用容器集群pod对应的外部存储地址下的目录,并检测新的应用容器集群pod对应的外部存储地址下的目录及其任意上级、下级目录中是否包含标识文件,若包含标识文件,则不允许将新的应用产生的数据放入任意一级目录。本发明解决了现有技术加载容器集群应用时存在的数据冲突的问题。
技术领域
本发明涉及云数据资源管理方法领域,具体是一种使用外部存储加载容器集群应用数据时的数据存储方法。
背景技术
目前,云平台主机中应用的安装是将应用容器化为容器集群pod,并通过容器编排引擎将应用以容器集群pod的形式,调度至容器编排引擎管辖的计算节点,由计算节点作为应用对应的容器集群pod的宿主机,其中常用的容器编排引擎有Google开源的容器编排引擎Kubernetes(简称k8s)。
用户使用容器编排引擎k8s运行应用时,需要向容器编排引擎k8s提交应用的声明文件,并在该声明文件中指定应用的元数据,由容器编排引擎k8s根据元数据将应用对应的容器集群pod调度至计算节点。若用户需要持久化运行应用时,则提交的声明文件的元数据还需要包含使用的外部存储的元数据,而外部存储的元数据一般保存于静态pv存储卷中,该静态pv存储卷是与应用对应的容器集群pod之间有绑定关系的用于保存外部存储元数据的逻辑卷。
容器编排引擎k8s每个计算节点分别运行有kubelet进程,该kubelet进程负责管理被调度至对应计算节点的容器集群pod的生命周期,当需要持久化运行应用时,在计算节点还需要安装外部存储的csi插件,由csi插件在计算节点运行负责静态pv存储卷挂载的csi进程,并由csi插件在容器集群pod启动前,将容器集群pod依赖的静态pv存储卷挂载到容器集群pod在计算节点中对应的保存数据的目录中。
具体的,计算节点运行的kubelet进程获取到应用对应的容器集群pod的元数据后,检测该容器集群pod是否需要挂载外部存储,若需要,则kubelet进程会请求该外部存储对应的csi插件进程,启动存储挂载流程。挂载流程以网络附属存储nas为例,若用户指定应用使用网络附属存储nas作为外部存储,则csi插件首先从用户提交的元数据中获取应用外部存储的元数据,如网络附属存储nas挂载地址的网络目录为:7.16.0.20:/data/test,由csi插件在容器集群pod启动前,将7.16.0.20:/data/test挂载到宿主机,挂载成功后,拉取容器集群pod的容器镜像(即应用的元数据)并运行,运行时产生的数据存储至网络目录7.16.0.20:/data/test。
而当应用对应的容器集群pod需要被删除并重新调度到其他计算节点时,kubelet进程则会请求csi插件,触发取消挂载的流程,将原计算节点上的网络附属存储nas取消挂载。而另一个计算节点的kubelet进程又会请求其节点上的csi插件,将同一个网络附属存储nas重新挂载。
在用户清除应用的元数据,表示要真正删除应用后,所有pod(应用可能多副本)的所有相关nas挂载都会被取消挂载。容器编排引擎k8s会根据用户设置的存储的回收策略,判断是否要回收存储。当用户设置要回收存储时,容器编排引擎k8s会调用csi插件,触发删除存储的逻辑。
如用户设置当删除应用的元数据时,希望清除应用产生的业务数据,回收网络附属存储nas的存储空间,则k8s会在用户将pvc删除时调用csi插件,执行删除存储数据的逻辑,由于用户的应用元数据都被保留在7.16.0.20:/data/test这个挂载地址的网络目录,当触发上述删除逻辑后,csi插件会删除7.16.0.20:/data/test下的所有文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳软通动力信息技术有限公司,未经深圳软通动力信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011637786.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种发动机机体、发动机及机械设备
- 下一篇:一种防止车辆逃逸方法及装置