System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法技术_技高网

一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法技术

技术编号:41694888 阅读:2 留言:0更新日期:2024-06-19 12:30
本发明专利技术公开了一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,包括:S1:租户k8s集群内,virtual node替换k8smaster的真实node节点;S2:k8s operator控制虚拟节点的创建、更新和删除,实现多租户多集群管理;S3:每一个virtual node对应个真实的边缘k8s集群;S4:边缘集群接入到provider支撑组件,由provider组件管理边缘集群的资源对象,并提供接口给virtual kubelet调用,实现多集群的应用部署。本发明专利技术基于声明式API定义多集群应用部署规则,通过kube‑scheduler调度策略和virtual kubelet实现应用的多集群部署,利用virtual kubelet和k8s操作人员实现了一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,使其具有极大的自动化能力和良好的隔离性。

【技术实现步骤摘要】

本专利技术涉及云计算,特别涉及一种面向serverless kubernetes的多租户多集群管理与应用部署方法。


技术介绍

1、serverless是云原生时代的一种新兴的软件架构模式,旨在让用户不需要关注服务器运行所需的计算资源,从而专注于业务逻辑的开发,提高业务构建和交付的效率。kubernetes简称k8s,在容器云原生领域,serverless kubernetes是serverless方式对传统kubernetes的革新,是对未来kubernetes演进方向的一种探索,不同于标准kubernetes,serverless kubernetes一方面从根本性简化了容器平台的设计,降低了kubernetes管理运维的复杂性,让用户无需受困于kubernetes集群节点规划、故障诊断;另一方面,释放了计算资源的能力,将安全、可用性、可伸缩性等需求由底层基础设施实现,用户只关注上层业务逻辑的设计。serverless kubernetes的目标之一是架构免运维,希望用户无需关注集群和底层服务器,专注于应用的业务逻辑,体现在kubernetes集群中,用户应更多关注在pod、job、service等上层应用编排的语义上,减少对底层node的关注;其次,单个k8s集群的承载能力有限,在实际生产环境中使用的一般是多个k8s集群,根据kubernetes的建议,接入集群的节点数量不超过5000,每个节点部署的pod数量不超过100,在serverlesskubernetes场景,提供面向多租户的多集群管理和应用部署能力非常有必要。</p>

2、现有的k8s多集群管理和应用部署方法一般通过kubeconfig切换多个集群管理集群,通过api接口创建应用。这类方法隔离性不够,不同租户共享同一个node节点,不适用于公有云环境下的多租户serverless kubernetes场景。因此,本专利技术提出了一种面向serverless kubernetes的多租户多集群管理与应用部署方法。


技术实现思路

1、本专利技术的目的在于提供一种面向serverless kubernetes的多租户多集群管理与应用部署方法,以解决上述
技术介绍
中提出的问题。

2、为实现上述目的,本专利技术提供如下技术方案:一种面向serverless kubernetes的多租户多集群管理与应用部署方法,包括:

3、s1:租户k8s集群内,virtual node替换k8smaster的真实node节点;

4、s2:k8s operator控制虚拟节点的创建、更新和删除,实现多租户多集群管理;

5、s3:每一个virtual node对应个真实的边缘k8s集群;

6、s4:边缘集群接入到provider支撑组件,由provider组件管理边缘集群的资源对象,并提供接口给virtual kubelet调用,实现多集群的应用部署。

7、优选的,所述s1基于virtual kubelet技术实现集群的无节点管理,所述s4中,调度到virtual node上的pod表示要下发到对应的边缘集群。

8、优选的,所述多租户多集群管理步骤包括:

9、s11:操作人员crd注册,用于多租户场景下的多集群管理;

10、s12:启动自动义控制器;

11、s13:开通服务;

12、s14:下发租户集群配置;

13、s15:下发集群管理编排;

14、s16:创建和管理virtual kubelet;

15、s17:创建虚拟节点;

16、s18:注册到api-server。

17、优选的,所述多集群应用部署步骤包括:

18、s21:节点注册;

19、s22:master接入provider;

20、s23:租户集群操作人员注册crd;

21、s24:启动自定义控制器;

22、s25:用户下发应用;

23、s26:下发多集群应用部署编排;

24、s27:创建k8s资源;

25、s28:创建并调度pod到虚拟节点;

26、s29:调用provider接口创建pod。

27、优选的,所述s11中,操作人员向k8s master的api-server注册类型为multitenantclustermanager的自定义资源;

28、所述s12中,操作人员启动自定义控制器,通过reconcile维护多租户集群管理资源;

29、所述s13中,用户通过serverless kubernetes平台开通服务,平台执行首次开通业务的初始化逻辑。

30、优选的,所述s14中,serverless kubernetes平台通过configmap的方式下发租户集群配置信息,包括用户id、用户已开通的集群列表、virtual kubelet镜像版本、providerapi接口参数信息等;

31、所述s15中,租户集群配置信息下发成功后,自定义控制器controller的reconcile会根据配置信息创建多租户集群管理资源对象,若用户有多个集群则创建多个资源对象,一个资源对象对应一个用户的一个集群;

32、所述s16中,多租户集群管理资源以pod的方式创建和管理virtual kubelet,若virtual kubelet服务异常则会重新拉取一个新的pod。

33、优选的,所述s17中,virtual kubelet运行成功后会创建虚拟节点,一个虚拟节点对应一个实际的边缘k8s集群;

34、所述s18中,virtual node向上注册到k8s master的api-server,实现虚拟节点的接入。

35、优选的,所述s21中,边缘集群node节点接入到master,注册到api-server,node节点接入支持kubelet、edgecore多种方式;

36、所述s22中,边缘集群统一接入到provider组件,由provider组件管理多集群的应用部署;

37、所述s23中,租户集群操作人员注册类型为multiclusterapplicationdeploy的自定义资源,用于多集群场景下的应用部署。

38、优选的,所述s24中,操作人员启动自定义控制器,通过reconcile维护多集群应用部署资源;

39、所述s25中,用户通过serverless kubernetes平台下发deployment、statefulset、daemonset、job类型的应用;

40、所述s26中,serverless kubernetes下发多集群应用部署编排,编排信息包括应用资源类型、容器镜像、部署集群和部署集群副本数。

41、优选的,所述s27中本文档来自技高网...

【技术保护点】

1.一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,包括:

2.根据权利要求1所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S1基于virtual kubelet技术实现集群的无节点管理,所述S4中,调度到virtual node上的Pod表示要下发到对应的边缘集群。

3.根据权利要求2所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述多租户多集群管理步骤包括:

4.根据权利要求2所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述多集群应用部署步骤包括:

5.根据权利要求3所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S11中,操作人员向k8smaster的api-server注册类型为MultiTenantClusterManager的自定义资源;

6.根据权利要求3所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S14中,Serverless Kubernetes平台通过ConfigMap的方式下发租户集群配置信息,包括用户Id、用户已开通的集群列表、virtual kubelet镜像版本、provider api接口参数信息等;

7.根据权利要求3所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S17中,Virtual kubelet运行成功后会创建虚拟节点,一个虚拟节点对应一个实际的边缘k8s集群;

8.根据权利要求4所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S21中,边缘集群node节点接入到master,注册到api-server,node节点接入支持kubelet、edgecore多种方式;

9.根据权利要求4所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S24中,操作人员启动自定义控制器,通过reconcile维护多集群应用部署资源;

10.根据权利要求4所述的一种面向Serverless Kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述S27中,自定义控制器的reconcile识别到多集群应用部署资源创建,会根据编排中携带的应用资源类型创建相应的k8s资源;

...

【技术特征摘要】

1.一种面向serverless kubernetes的多租户多集群管理与应用部署方法,其特征在于,包括:

2.根据权利要求1所述的一种面向serverless kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述s1基于virtual kubelet技术实现集群的无节点管理,所述s4中,调度到virtual node上的pod表示要下发到对应的边缘集群。

3.根据权利要求2所述的一种面向serverless kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述多租户多集群管理步骤包括:

4.根据权利要求2所述的一种面向serverless kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述多集群应用部署步骤包括:

5.根据权利要求3所述的一种面向serverless kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述s11中,操作人员向k8smaster的api-server注册类型为multitenantclustermanager的自定义资源;

6.根据权利要求3所述的一种面向serverless kubernetes的多租户多集群管理与应用部署方法,其特征在于,所述s14中,serverless kubernetes平...

【专利技术属性】
技术研发人员:郭瑞英阮兆银卢志军许晓雄
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

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

1