一种云原生应用管理系统及方法技术方案

技术编号:36810658 阅读:13 留言:0更新日期:2023-03-09 00:42
本发明专利技术实施例提供一种云原生应用管理系统及方法,涉及容器部署领域,云原生应用管理系统包括:控制端,发送云原生资源的配置信息、参数值的调整配置信息和分发配置信息;模板实例生成器,基于云原生资源所需的各初始模板、参数值的调整配置信息形成模板实例;接口适配器,将云原生资源的配置信息、参数值的调整配置信息和分发配置信息转化成与所要下发的云原生资源相匹配的版本;接口适配器应用程序接口,创建资源模板实例的描述;将资源模板实例的描述以及模板实例形成分发资源;kubernetes集群管理模块,用于在所属集群内部署云原生资源形成相应的应用。通过一个控制端,实现将应用的多个云原生资源部署到多个集群形成应用。用的多个云原生资源部署到多个集群形成应用。用的多个云原生资源部署到多个集群形成应用。

【技术实现步骤摘要】
一种云原生应用管理系统及方法


[0001]本专利技术涉及容器部署,具体涉及一种云原生应用管理系统及方法。

技术介绍

[0002]在项目向容器迁移过程中,越来越多的项目需要迁移到容器化平台,容器化平台的kubernetes集群越来越多,当越来越多的项目和项目部署到越来越多的kubernetes集群时,同时随着业务依赖的资源种类越来越多,新的功能在逐步的增多,导致一个云原生的应用程序包需要非常多的资源类型去部署,同时配合上多个机房,数量又会翻倍非常多,人工维护非常困难,容易出错,学习这些资源的成本也非常的高,此时就需要一种能够简洁高效的管理项目部署到多个集群的系统,以解决上述的问题,提高效率。
[0003]现有的技术方案中一种情况是开发kubernetes的crd或者准入控制器,定义一种新的kubernetes资源,新的kubernetes资源中处理多个kubernetes原生的资源,将这种自定义的资源部署到k8s集群,在集群中创建这种资源,这种资源实际上会将业务使用到的kubernetes原生的资源重新实现,一同处理,用来完成一个业务在一个集群的部署。
[0004]在实现本专利技术过程中,申请人发现现有技术中至少存在如下问题:
[0005]现有的方案无法处理在一个控制端部署业务到多个集群的情况。

技术实现思路

[0006]本专利技术实施例提供一种云原生应用管理系统及方法,通过一个控制端,实现将应用的多个云原生资源部署到多个集群,形成相应的应用。
[0007]为达上述目的,一方面,本专利技术实施例提供一种云原生应用管理系统,所述云原生应用管理系统包括控制端、模板实例生成器、各kubernetes集群共用的接口适配器和接口适配器应用程序接口、设置于每个kubernetes集群内的kubernetes集群管理模块,其中:
[0008]所述控制端,用于发送云原生资源的配置信息、参数值的调整配置信息和分发配置信息,所述云原生资源的配置信息包括:将kubernetes资源模板实例对应的云原生资源与所要下发的kubernetes集群进行绑定标记;所述参数值的调整配置信息包括:适应性调整后下发到不同kubernetes集群的云原生资源对应的kubernetes资源模板实例的参数值;
[0009]所述模板实例生成器,用于基于云原生资源所需的各初始模板、以及接收到的所述参数值的调整配置信息,形成相应的模板实例;所述模板实例包括kubernetes资源模板实例;
[0010]所述接口适配器,用于将所述云原生资源的配置信息、所述参数值的调整配置信息和所述分发配置信息转化成与所要下发的云原生资源相匹配的版本;
[0011]所述接口适配器应用程序接口,用于根据所要下发的云原生资源的版本,在容器编排管理工具kubernetes上创建模板实例的描述;所述模板实例的描述包括:kubernetes资源模板实例的描述;将所述kubernetes资源模板实例的描述、与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息和所述分发配置信
息、以及所述模板实例形成分发资源;向创建云原生资源的各kubernetes集群管理模块发送云原生资源创建请求、与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息、以及所述分发资源;
[0012]所述kubernetes集群管理模块,用于在接收到云原生资源创建请求后,接收与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息、以及所述分发资源,在所属的kubernetes集群内部署云原生资源形成相应的应用。
[0013]另一方面,本专利技术实施例提供一种云原生应用管理方法,包括:
[0014]通过控制端发送云原生资源的配置信息、参数值的调整配置信息和分发配置信息,所述云原生资源的配置信息包括:将kubernetes资源模板实例对应的云原生资源与所要下发的kubernetes集群进行绑定标记;所述参数值的调整配置信息包括:适应性调整后下发到不同kubernetes集群的云原生资源对应的kubernetes资源模板实例的参数值;
[0015]通过模板实例生成器基于云原生资源所需的各初始模板、以及接收到的所述参数值的调整配置信息,形成相应的模板实例;所述模板实例包括kubernetes资源模板实例;
[0016]通过接口适配器将所述云原生资源的配置信息、所述参数值的调整配置信息和所述分发配置信息转化成与所要下发的云原生资源相匹配的版本;
[0017]通过接口适配器应用程序接口根据所要下发的云原生资源的版本,在容器编排管理工具kubernetes上创建模板实例的描述;所述模板实例的描述包括:kubernetes资源模板实例的描述;将所述kubernetes资源模板实例的描述、与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息和所述分发配置信息、以及所述模板实例形成分发资源;向创建云原生资源的各kubernetes集群管理模块发送云原生资源创建请求、与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息、以及所述分发资源;
[0018]通过kubernetes集群管理模块接收到云原生资源创建请求后,接收与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息、以及所述分发资源,在所属的kubernetes集群内部署云原生资源形成相应的应用;其中,每个kubernetes集群内均设置kubernetes集群管理模块。
[0019]上述技术方案具有如下有益效果:云原生应用管理系统包括控制端、模板实例生成器、各kubernetes集群共用的接口适配器和接口适配器应用程序接口、设置于每个kubernetes集群内的kubernetes集群管理模块,通过控制端发送云原生资源的配置信息、参数值的调整配置信息和分发配置信息;模板实例生成器自接收到控制端发送的参数值的调整配置信息,基于云原生资源所需的各初始模板形成相应的模板实例;接口适配器在接收到控制端发送的模板实例生成器所采用的云原生资源的配置信息、参数值的调整配置信息和分发配置信息后转化成与所要下发的云原生资源相匹配的版本;接口适配器应用程序接口根据所要下发的云原生资源的版本,在容器编排管理工具kubernetes上创建模板实例的描述;将kubernetes资源模板实例的描述、与所要下发的云原生资源相匹配版本的云原生资源的配置信息、参数值的调整配置信息和分发配置信息、以及模板实例形成分发资源;kubernetes集群管理模块,用于在接收到云原生资源创建请求后,接收与所要下发的云原生资源相匹配版本的云原生资源的配置信息、参数值的调整配置信息、以及分发资源,在所属的kubernetes集群内部署云原生资源形成相应的应用。通过一个控制端可以将业务的多
个云原生资源部署到多个集群。
附图说明
[0020本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种云原生应用管理系统,其特征在于,所述云原生应用管理系统包括控制端、模板实例生成器、各kubernetes集群共用的接口适配器和接口适配器应用程序接口、设置于每个kubernetes集群内的kubernetes集群管理模块,其中:所述控制端,用于发送云原生资源的配置信息、参数值的调整配置信息和分发配置信息,所述云原生资源的配置信息包括:将kubernetes资源模板实例对应的云原生资源与所要下发的kubernetes集群进行绑定标记;所述参数值的调整配置信息包括:适应性调整后下发到不同kubernetes集群的云原生资源对应的kubernetes资源模板实例的参数值;所述模板实例生成器,用于基于云原生资源所需的各初始模板、以及接收到的所述参数值的调整配置信息,形成相应的模板实例;所述模板实例包括kubernetes资源模板实例;所述接口适配器,用于将所述云原生资源的配置信息、所述参数值的调整配置信息和所述分发配置信息转化成与所要下发的云原生资源相匹配的版本;所述接口适配器应用程序接口,用于根据所要下发的云原生资源的版本,在容器编排管理工具kubernetes上创建模板实例的描述;所述模板实例的描述包括:kubernetes资源模板实例的描述;将所述kubernetes资源模板实例的描述、与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息和所述分发配置信息、以及所述模板实例形成分发资源;向创建云原生资源的各kubernetes集群管理模块发送云原生资源创建请求、与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息、以及所述分发资源;所述kubernetes集群管理模块,用于在接收到云原生资源创建请求后,接收与所要下发的云原生资源相匹配版本的所述云原生资源的配置信息、所述参数值的调整配置信息、以及所述分发资源,在所属的kubernetes集群内部署云原生资源形成相应的应用。2.根据权利要求1所述的云原生应用管理系统,其特征在于,所述云原生应用管理系统还包括模板管理器,用于生成云原生资源所需的各初始模板;所述模板管理器包括kubernetes资源模板管理器、istio模板管理器、应用软件模板管理器和应用辅助软件模板管理器,其中:所述kubernetes资源模板管理器,用于生成部署在kubernetes集群之上的云原生资源内置资源的各初始模板,在所述部署在kubernetes集群之上的云原生资源内置资源的初始模板内配置生成云原生资源所需的各参数;所述istio模板管理器,用于生成创建istio内置资源的各初始模板,在所述istio内置资源的初始模板内配置生成istio内置资源所需的各参数;所述应用软件模板管理器,用于生成运行云原生资源的应用软件的各初始模板,在所述运行原生资源的应用软件的初始模板内配置生成软件运行所需的参数;所述应用辅助软件管理器,用于生成应用软件的辅助软件的各初始模板,在所述辅助软件的初始模板内配置生成辅助软件运行所需的参数。3.根据权利要求2所述的云原生应用管理系统,其特征在于,所述模板实例生成器,还用于自所述模板管理器接收云原生资源所需的各初始模板;所述模板实例生成器,具体用于:接收所述控制端发送的云原生资源内置资源相应的第一参数值,基于所述第一参数值、以及所述部署在kubernetes集群的云原生资源内置资源的初始模板,形成云原生资源
模板实例;接收所述控制端发送的istio的内置资源相应的第二参数值,基于所述第二参数值创建所述istio内置资源的初始模板,形成创建istio的内置资源的模板实例,所述istio的内置资源用于对云原生资源进行微服务管理;接收所述控制端发送的生成运行云原生资源的应用软件所需的第三参数值,基于所述第三参数值、所述运行云原生资源的应用软件的初始模板,形成运行云原生资源的应用软件的模板实例,所述应用软件用于部署并运行所述云原生资源;接收所述控制端发送的辅助软件的第四参数值,基于所述第四参数值、所述辅助软件的初始模板,形成辅助软件的模板实例,所述辅助软件用于辅助运行云原生资源的应用软件;其中,所述参数值的调整配置信息包括所述第一参数值、所述第二参数值、所述第三参数值、所述第四参数值。4.根据权利要求3所述的云原生应用管理系统,其特征在于,所述接口适配器应用程序接口,具体用于:接收所述云原生资源模板实例、所述创建istio的内置资源的模板实例、所述运行云原生资源的应用软件的模板实例和所述辅助软件的模板实例;根据所述kubernetes资源模板实例的描述、与云原生资源下发匹配版本的所述云原生资源的配置信息、与云原生资源下发匹配版本的所述参数值的调整配置信息、所述创建istio各内置资源的模板实例,创建istio各内置资源;根据所述kubernetes资源模板实例的描述、与云原生资源下发匹配版本的所述云原生资源的配置信息、与云原生资源下发匹配版本的所述参数值的调整配置信息、所述运行云原生资源的应用软件的模板实例,创建运行云原生资源的应用软件;根据所述kubernetes资源模板实例的描述、与云原生资源下发匹配版本的所述云原生资源的配置信息、与云原生资源下发匹配版本的所述参数值的调整配置信息、所述辅助软件的模板实例,创建相应的辅助软件;根据所述kubernetes资源模板实例的描述、与云原生资源下发匹配版本的所述云原生资源的配置信息、与云原生资源下发匹配版本的所述参数值的调整配置信息、所述云原生资源模板实例、所述云原生资源的配置信息和所述参数值的调整配置信息,形成下发到各kubernetes集群的分发资源。5.根据权利要求4所述的云原生应用管理系统,其特征在于,所述kubernetes集群管理模块,还用于:接收修改本kubernetes集群内的云原生资源的请求,对本kubernetes集群内的所述云原生资源进行修改;接收删除本kubernetes集群内云原生资源的请求,将本kubernetes集群内的所述云原生资源删除。6.一种云原生应用管理方法,其特征在于,包括:通过控制端发送云原生资源的配置信息、...

【专利技术属性】
技术研发人员:王洪磊
申请(专利权)人:新浪技术中国有限公司
类型:发明
国别省市:

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

1