[发明专利]一种k8s容器云平台中CRD应用集成调用方法与装置有效
| 申请号: | 202211290188.9 | 申请日: | 2022-10-21 |
| 公开(公告)号: | CN115357369B | 公开(公告)日: | 2023-03-24 |
| 发明(设计)人: | 郑焕波;陈光;李勇;程宏才;曾令仿;王宏升;赵瑞芳 | 申请(专利权)人: | 之江实验室 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/445 |
| 代理公司: | 杭州浙科专利事务所(普通合伙) 33213 | 代理人: | 孙孟辉;杨小凡 |
| 地址: | 311100 浙江省杭*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 k8s 容器 平台 crd 应用 集成 调用 方法 装置 | ||
本发明公开了一种k8s容器云平台中CRD应用集成调用方法与装置,基于k8s的CRD模块,定义容器应用资源对象,包括控制信息和资源信息;构建其他CRD资源注册机制,注册其他CRD资源信息,并保存对其控制器信息,刷新并读取控制器信息,通过反射的方式运行其他CRD资源的控制器,使得用于运行控制器的最小单元上,能够运行多个其他CRD资源的控制器;将控制器部署到K8s中,用户提交控制信息和已注册的其他CRD资源的资源信息,系统根据控制信息执行控制逻辑,根据资源信息提交相应计算任务到k8s容器云平台中,已注册的其他CRD资源的控制器对计算任务进行处理;从而达到减少了资源的占用的目的。
技术领域
本发明涉及k8s容器云平台及其CRD技术领域,尤其是涉及一种容器云平台k8s中CRD应用集成调用方法与装置。
背景技术
kubernetes(简称k8s)是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。Kubernetes的出现极大的简化了大型系统的部署及运维难度。目前是业界已得到大规模应用,成为容器编排引擎的第一选择。同时随着当下云原生理念的流行,kubernetes作为云原生操作系统,已成为云原生应用的首选运行平台。
云原生应用运行在kubernetes中,用户可基于内置的deployment、statefulset等进行部署。同时考虑应用的多种多样性,kubernetes提供了CRD(CustomResourceDefinition自定义资源定义)解决方案,用于应对不适合通过内置资源进行部署的应用。用户可通过CRD来进行自定义资源,然后通过自定义的资源来部署应用。
目前在kubernetes上部署的CRD应用越来越广泛,应用之间的调用也越来越频繁,特别是pipline以及DAG模式的应用,大都需要用kubernetes中的其他资源来进行任务处理。基于kubernetes的CustomResourceDefinition技术来实现应用的部署,每个CRD不仅要给出CustomResourceDefinition的定义还要运行contorller程序,一个contorller程序在kubernetes中一般运行于一个pod中,这些contorller程序的功能大都相似,通过kubernetes client与api server进行交互,监控运行资源的状态并做出调整。部署的CRD应用越多,占用的计算资源就越多,同时也增加了维护的成本。
发明内容
为解决现有技术的不足,通过接口拓展的方式实现对被调用方的资源控制,通过注册的机制实现CRD controller的集中管理,最终在kubernetes中需要部署多个自定义资源时,实现降低维护成本、减少资源占用的目的,本发明采用如下的技术方案:
一种k8s容器云平台中CRD应用集成调用方法,包括如下步骤:
步骤S1:构建容器CRD应用系统,基于容器编排引擎k8s的自定义资源定义CRD模块,定义容器应用ContainerApplication资源对象,容器应用ContainerApplication资源对象包括控制信息和资源Resource信息,资源Resource信息用于引用其他CRD资源;定义容器应用的控制器ContainerApplication-controller,根据控制信息的类型控制计算任务的执行步骤,根据资源Resource信息调用其他CRD资源完成计算任务;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于之江实验室,未经之江实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211290188.9/2.html,转载请声明来源钻瓜专利网。





