CN117931379A - 用于边缘计算的集群部署方法、装置、***、设备及介质 - Google Patents
用于边缘计算的集群部署方法、装置、***、设备及介质 Download PDFInfo
- Publication number
- CN117931379A CN117931379A CN202410330005.4A CN202410330005A CN117931379A CN 117931379 A CN117931379 A CN 117931379A CN 202410330005 A CN202410330005 A CN 202410330005A CN 117931379 A CN117931379 A CN 117931379A
- Authority
- CN
- China
- Prior art keywords
- cluster
- target
- node
- container group
- clusters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012216 screening Methods 0.000 claims abstract description 23
- 238000004891 communication Methods 0.000 claims abstract description 17
- 230000004044 response Effects 0.000 claims abstract description 11
- 230000015654 memory Effects 0.000 claims description 26
- 238000007726 management method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 230000008602 contraction Effects 0.000 description 3
- 239000002071 nanotube Substances 0.000 description 3
- 238000013439 planning Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本公开涉及边缘计算技术领域,公开了用于边缘计算的集群部署方法、装置、***、设备及介质。其中,该用于边缘计算的集群部署方法包括:响应于容器组创建请求,在租户集群中创建目标容器组;从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接;在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应;根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。与相关技术相比,本公开明显提高了资源利用率,提升了用户体验。
Description
技术领域
本公开涉及边缘计算技术领域,具体涉及用于边缘计算的集群部署方法、装置、***、设备及介质。
背景技术
Kubernetes(简称K8s)是一种工业级的容器编排平台,主要用于提供服务的部署、弹性扩容和管理等,具有可以部署应用、实现扩展机制和维护等多种功能。传统的Kubernetes架构一般包括主节点(Master)和工作节点(Node),主节点主要用于负责整个集群的管理和调度,工作节点用于运行容器以及与主节点之间进行交互。
在边缘计算场景下,云计算厂商可为用户提供Kubernetes托管方案,用户需单独购买虚拟机或Node,因而在传统的方案中,Node被用户持有。用户在使用Kubernetes管理容器时,必须要对应用规模有合理的规划,比如,规划出待部署的所有应用待占用的资源总和,而厂商待出售的虚拟机或Node的规格一般是固定的,所以对于用户来说,往往会出现所购买的Node资源明显大于所需的资源总和的情况,产生了资源浪费情况,导致资源利用率低的问题。
发明内容
有鉴于此,本公开提供了一种用于边缘计算的集群部署方法、装置、***、设备及介质,以解决相关技术中用户持有Node的方式易出现的Node资源利用率低的问题。
第一方面,本公开提供了一种用于边缘计算的集群部署方法,该方法包括:
响应于容器组创建请求,在租户集群中创建目标容器组;
从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接;
在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应;
根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。
本公开提供的用于边缘计算的集群部署方法,在租户集群中创建目标容器组,通过与租户集群通信连接的边缘集群承载目标容器组,目标容器组被调度至租户集群中的虚拟节点上,因而本公开的方案中,用户只需持有虚拟节点中的目标容器组,而无需持有边缘集群中的真实的Node,所以用户能够以容器组为粒度进行资源购买,可按照应用规模的规划购买与实际容量需求更为接近的资源,从而较好地克服了相关技术中用户持有Node的方式易出现的Node资源利用率低等问题,明显降低了用户的成本投入。因此,本公开明显提高了Node资源利用率,真正实现了用户按需购买Node资源,提升了用户体验和满意度。
第二方面,本公开提供了一种用于边缘计算的集群部署装置,该装置包括:
创建模块,用于响应于容器组创建请求,在租户集群中创建目标容器组;
筛选模块,用于从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接;
选择模块,用于在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应;
更新模块,用于根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。
第三方面,本公开提供了一种用于边缘计算的集群部署***,该***包括租户集群和目标集群,租户集群包括应用程序编程接口服务器和调度器;
应用程序编程接口服务器,用于响应于容器组创建请求,在租户集群中创建目标容器组;
调度器,用于从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,以及用于在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,以及用于根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上;
其中,多个预设边缘集群分别与租户集群通信连接,多个虚拟节点与多个预设边缘集群一一对应。
第四方面,本公开提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的用于边缘计算的集群部署方法。
第五方面,本公开提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的用于边缘计算的集群部署方法。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本公开实施例的用于边缘计算的集群部署方法的流程示意图;
图2是根据本公开实施例的另一用于边缘计算的集群部署方法的流程示意图;
图3是根据本公开实施例的又一用于边缘计算的集群部署方法的流程示意图;
图4是根据本公开实施例的用于边缘计算的集群部署***的结构示意图;
图5是根据本公开实施例的容器组创建过程的流程示意图;
图6是根据本公开实施例的用于边缘计算的集群部署装置的结构框图;
图7是本公开实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
Kubernetes作为开源的容器化编排***,Kubernetes的功能具体包括服务发现和负载均衡、服务自动装箱、容器存储编排、容器故障恢复、自动发布和回滚、配置和密钥存储、服务水平伸缩、批量执行以及守护进程任务等,容器化编排***已经成为云原生领域的容器编排标准,用户使用Kubernetes可降低运维成本和提高运维效率,通过使用Kubernetes提供的标准化API(Application Programming Interface,应用程序编程接口),可以有效避免云厂商的锁定。对于用户来说,Kubernetes可以提供标准的Kubernetes接口,并通过镜像与容器化部署,并结合CI(Continuous Integration,持续集成)/CD(Continuous Delivery,持续交付)流程,提高了PAAS(Platform As A Service,平台即服务)应用的部署效率,并可通过合理的调度,提高Node资源利用率,降低使用成本。
在边缘计算场景中,云计算厂商可提供经典的Kubernetes托管方案,通常为用户购买虚拟机,云计算厂商提供Kubernetes生命周期的管理,例如Kubernetes安装、部署、升级等,Node为用户持有。但是,已有方案存在如下的问题:在用户使用Kubernetes管理容器时,必须要对自己的应用规模容量有合理的规划,比如,规划每个应用占用的资源(例如计算资源或存储资源等),购买的Node资源需要大于所有应用所需的资源总和;另外,由于资源碎片的问题,Node资源肯定是大于所有应用所需的资源,故相关技术存在一定的资源浪费。可见传统的Kubernetes托管方案中,用户需要对自己的业务规模有精确的资源规划,按需购买虚拟机或Node设备纳管到Kubernetes中;然而因资源碎片等问题,Node资源不可能严丝合缝地涵盖待部署的所有应用待占用的资源总和,因而出现了资源浪费、资源利用率不高的问题;而且,业务存在波峰和波谷的情况,在业务波峰时对资源占用比较大,在业务波谷时对资源占用比较小,所以需要用户提前购买足够的虚拟机来应对业务波峰(即流量洪峰),而在业务波谷时又要清退部分虚拟机,而Node粒度下的资源扩容或简缩往往是分钟级别的,分钟级别的纳管过程对用户的时间占用较长;而且相关技术中的Node是用户自己的,需要用户对Node的生命周期进行维护,例如,Node组件升级、Node监控、告警管理等,用户体验不佳。
根据本公开实施例,提供了一种用于边缘计算的集群部署方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种用于边缘计算的集群部署方法,可用于租户集群,具体可用于租户k8s集群中的调度器(edge-cluster-schedule)。
图1是根据本公开实施例的用于边缘计算的集群部署方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,响应于容器组创建请求,在租户集群中创建目标容器组。
其中,“容器组”即POD,在一个POD中能够部署多个容器。本实施例的租户集群为租户k8s集群,租户接入的Kubernetes集群不纳管任何机器,通过虚拟节点来替换真实的k8sNode;其中,目标容器组是一种虚拟POD。
本公开实施例的租户集群可部署在计算机设备上,该计算机设备例如可以是用户设备。
在一些可选的实施方式中,响应于容器组创建请求之前,该方法还包括:在租户集群中创建与多个预设边缘集群一一对应的多个虚拟节点,多个虚拟节点的节点名称与多个预设边缘集群的集群名称一一对应相同。
其中,本公开实施例的多个预设边缘集群均为资源池中的边缘集群,边缘集群属于边缘数据面k8s集群,k8s集群作为管理边缘计算资源的管理方式,为标准的k8s集群;本实施例按照一个机房一个Kubernetes集群的粒度,比如,上海电信Kubernetes集群管理上海电信机房的机器,杭州电信Kubernetes集群管理杭州电信机房的Kubernetes集群,其他机房以此类推。本实施例的虚拟节点,即Virtual Node,不同的虚拟节点对应不同的区域,例如一个虚拟节点对应的区域为上海,另一个虚拟节点对应的区域为杭州。
结合图4所示,预设边缘集群以Virtual Node的形式接入到租户集群中,租户集群中的POD通过相应的Virtual Node同步到指定的预设边缘集群中,在租户集群中并不设置真实的虚拟机资源,从而达到按需启动POD的目的。例如,图4中的租户集群中可以设置有虚拟节点(Virtual Node20)及对应的目标容器组(POD10)和目标容器组(POD11)、虚拟节点(Virtual Node21)及对应的目标容器组(POD12)、虚拟节点(Virtual Node22)及对应的目标容器组(POD13),资源池中示例了预设边缘集群(Kubernetes61,上海电信)、预设边缘集群(Kubernetes62,杭州电信)、预设边缘集群(Kubernetes63,其他),在边缘集群Kubernetes61中设置了节点代理(kubelet51),以及与目标容器组(POD10)对应的真实容器组(POD40)、与目标容器组(POD11)对应的真实容器组(POD41),并设置了集群管理节点(Kubernetes master30);在边缘集群Kubernetes62中设置了节点代理(kubelet52),以及与目标容器组(POD12)对应的真实容器组(POD42),并设置了集群管理节点(Kubernetesmaster31);在边缘集群Kubernetes63中设置了节点代理(kubelet53),以及与目标容器组(POD13)对应的真实容器组(POD43)并设置了集群管理节点(Kubernetes master32)。
本实施例可通过虚拟节点的节点名称与预设边缘集群的集群名称一一对应相同的方式,保证本方案能够通过虚拟节点精准地接入对应的预设边缘集群,为用户创建POD提供资源支撑。
步骤S102,从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接。
具体地,本实施例的多个预设边缘集群可为资源池中的所有边缘集群,本实施例能够在资源池的所有边缘集群中根据预设配置规则选择满足需求的边缘集群。
在一些可选的实施方式中,容器组创建请求中设置有预设标签,预设标签用于表征目标容器组的配置要求。
上述从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,包括:以预设标签和多个预设边缘集群的资源余量为依据,从多个预设边缘集群中筛选出目标集群。
步骤S103,在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应。
在确定目标集群的情况下,由于事先配置了预设边缘集群与虚拟节点之间的一一对应关系,则本实施例能够根据当前确定的目标集群识别出该目标集群对应的虚拟节点。
在一些可选的实施方式中,目标集群的集群名称与目标节点的节点名称相同;在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,包括:
步骤a1,获取目标集群的集群名称。
其中,本实施例中的每个预设边缘集群具有一个名称,且每个目标节点的节点名称与预设边缘集群名称一一对应相同。
步骤a2,从租户集群内的多个虚拟节点中,选择节点名称与集群名称相同的虚拟节点作为目标节点。
对于在租户集群内自动注册的多个虚拟节点,本实施例可根据获取的目标集群的集群名称从上述的多个虚拟节点中找到目标节点,从而为容器组的按需调度提供了可靠依据。
步骤S104,根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。
其中,目标容器组的节点字段表示目标容器组运行所在的节点的名称,本实施例通过对目标容器组的节点字段进行配置的方式将目标容器组调度至目标节点上。
在一些可选的实施方式中,步骤S104包括:将目标容器组的节点字段的值设置为目标节点的节点名称(Node Name)。
本实施例可在目标POD里面打(patch)上目标节点的节点名称,具体将POD的NodeName设置为对应的虚拟节点的节点名称。
基于对目标容器组的节点字段的值的设置,本实施例能够实现对目标容器组的精准调度的功能。
本实施例所提供的用于边缘计算的集群部署方法,在租户集群中创建目标容器组,通过与租户集群通信连接的边缘集群承载目标容器组,目标容器组被调度至租户集群中的虚拟节点上,因而本实施例的方案中,用户只需持有虚拟节点中的目标容器组,而无需持有边缘集群中的真实的Node,所以用户能够以容器组为粒度进行资源购买,用户只需要为购买的每个POD付费,可按照应用规模的规划购买与实际容量需求更为接近的资源,从而较好地克服了相关技术中用户持有Node的方式易出现的Node资源利用率低等问题,明显降低了用户的成本投入。而且,本实施例通过资源池中的边缘集群承载虚拟节点中的容器组,在用户进行资源扩容或资源简缩时,对于准备好(ready)的边缘集群,本实施例可将相关技术中的Node分钟级纳管过程替换为POD秒级弹性伸缩过程,极大地提升了用户体验和满意度。另外,本实施例无需用户对Node进行管理,降低了用户使用POD的难度,POD的启动速度也会更快。因此,本实施例明显提高了Node资源利用率,实现了用户以POD粒度按需购买Node资源,进一步提升了用户体验和满意度。
在本实施例中提供了一种用于边缘计算的集群部署方法,可用于租户集群,图2是根据本公开实施例的用于边缘计算的集群部署方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,响应于容器组创建请求,在租户集群中创建目标容器组。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S202,从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接。
具体地,预设标签包括区域标签、机房标签、运营商标签、城市标签中的至少一种,结合前述的实施例,以预设标签和多个预设边缘集群的资源余量为依据,从多个预设边缘集群中筛选出目标集群,包括:
步骤S2021,从多个预设边缘集群中筛选出符合预设标签的预设边缘集群。
其中,区域(zone)标签表示边缘集群所属的地区,机房(idc)标签表示边缘集群所属的机房,运营商(isp)标签表示边缘集群所属的运营商,城市(city)标签表示边缘机房所处的城市。
具体地,可以按照区域(zone)、机房(idc)、运营商(isp)、城市(city)等维度依次地对预设边缘集群进行筛选,例如,根据区域选择华东电信的边缘集群,再根据城市从华东电信的边缘集群中选择杭州集群。
更为具体地,可在指定配置文件(例如YAML文件)中配置上述多个预设标签,通过该指定配置文件中的相应字段表示上述多个预设标签。
步骤S2022,获取符合预设标签的预设边缘集群的资源余量,将资源余量满足目标容器组运行要求的一个预设边缘集群确定为目标集群。
在满足目标容器组运行要求的前提下,本实施例可将资源余量较大的预设边缘集群确定为目标集群。
在一些可选的实施方式中,预设边缘集群的部署方式包括:在一个边缘机房内部署一个预设边缘集群。
基于上述改进的方案,本实施例可充分满足客户对边缘集群的选择需求,从而可通过符合要求的边缘集群承载待创建的POD。通过一个边缘机房内部署一个边缘集群的方式,本实施例还能够充分保证边缘集群的稳定性和可靠性。
步骤S203,在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应。详细请参见图1所示实施例的步骤S103,在此不再赘述。
步骤S204,根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。详细请参见图1所示实施例的步骤S104,在此不再赘述。
在本实施例中提供了一种用于边缘计算的集群部署方法,可用于租户集群,图3是根据本公开实施例的用于边缘计算的集群部署方法的流程图,如图3所示,该流程包括如下步骤:
步骤S301,响应于容器组创建请求,在租户集群中创建目标容器组。详细请参见图2所示实施例的步骤S201,在此不再赘述。
步骤S302,从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接。详细请参见图2所示实施例的步骤S202,在此不再赘述。
步骤S303,在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应。详细请参见图2所示实施例的步骤S203,在此不再赘述。
步骤S304,根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。详细请参见图2所示实施例的步骤S204,在此不再赘述。
步骤S305,通知目标集群创建与目标容器组对应的真实容器组。
本公开实施例的目标集群在创建真实容器组时,如果还有其他信息,例如configmap(配置映射信息)、secret(密钥信息)等,则可一并进行创建。创建真实容器组时可具体部署容器配置信息、资源配置信息、网络配置信息、生命周期管理信息等;应当理解的是,对于真实容器组的具体创建过程可从相关的容器组创建方案中选取,本实施例不再赘述。
步骤S306,接收目标集群发送的真实容器组的部署信息,以及将部署信息同步至目标容器组上。
在目标集群将真实容器组创建成功后,向租户集群发送真实容器组的部署信息,租户集群用户将相关信息同步至目标容器组。
基于上述的方案,本实施例能够更好地构建出目标容器组对真实容器组的映射,提升集群部署的可靠性。
结合图5所示,在Kubernetes场景下通过虚拟节点代理(virtual-kubelet)创建与预设边缘集群一一对应的虚拟节点,可见本公开实施例可提供一种基于virtual-kubelet的边缘Serverless(无服务器)Kubernetes部署的技术方案。可见本实施例基于virtual-kubelet实现Virtual Node,以POD形式在租户k8s集群内运行,若租户在租户k8s集群内创建POD,则Virtual Node用于将POD同步到对应的边缘集群中。具体地,本实施例的租户集群(Kubernetes)包括应用程序编程接口服务器(kube-apiserver)、调度器(edge-cluster-schedule)及虚拟节点代理(virtual-kubelet),图5示出的用户向kube-apiserver发出创建虚拟POD的请求,kube-apiserver收到该请求后,可以反馈给用户虚拟POD创建成功的消息(此时创建的虚拟POD还未真正可以使用),edge-cluster-schedule观测到待定(Pending)POD,则从资源池的大量预设边缘集群中查看预设边缘集群的资源剩余,为POD选择合适的边缘集群,所选择的合适的边缘集群向edge-cluster-schedule返回该合适的边缘集群的消息;edge-cluster-schedule进行POD调度,包括:为POD设置目标节点的节点名称,例如,仅对配置了spec.schedulerName字段的值为edge-serverless的POD进行调度,并可根据边缘集群的资源情况和POD相应的亲和性为POD选择合适的边缘集群;virtual-kubelet观测POD变更,包括:发现POD的节点字段的值为目标节点的节点名称,则通知上述合适的边缘集群创建真实POD,以及收到该边缘集群反馈的真实POD创建成功的消息,此时的POD可以被正常使用,为用户提供相关服务。
在Kubernetes场景下,Virtual Node是由virtual-kubelet这个进程自动向kube-apiserver注册创建的Node;具体地,通过用户预先设置的预设配置文件(例如YAML文件)确定待注册的Virtual Node相关信息。Node Name为边缘k8s集群相关信息,例如,图4中,上海电信集群(shanghaict)对应的Virtual Node名称为shanghaict,杭州电信集群(hangzhouct)对应的Virtual Node名称为hangzhouct;以此类推,根据边缘集群名创建Virtual Node名称。
本实施例中,由于真实容器组和真实节点均部署在边缘集群,真实容器组和真实节点的维护由云计算厂商提供,对于用户来说实现了节点免运维的功能,对用户来说实现了Node Less(无传统意义的节点)等目的,从而有效地减少了用户对IAAS(InfrastructureAs A Service,基础设施即服务)层的关注,减少了对用户时间的占用,提升了用户对云服务相关产品的使用体验和满意度。
在本实施例中还提供了一种用于边缘计算的集群部署装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种用于边缘计算的集群部署装置,如图6所示,包括:
创建模块601,用于响应于容器组创建请求,在租户集群中创建目标容器组。
筛选模块602,用于从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,多个预设边缘集群分别与租户集群通信连接。
选择模块603,用于在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,多个虚拟节点与多个预设边缘集群一一对应。
更新模块604,用于根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。
在一些可选的实施方式中,容器组创建请求中设置有预设标签,预设标签用于表征目标容器组的配置要求。筛选模块602,具体用于以预设标签和多个预设边缘集群的资源余量为依据,从多个预设边缘集群中筛选出目标集群。
在一些可选的实施方式中,预设标签包括区域标签、机房标签、运营商标签、城市标签中的至少一种;筛选模块602包括:
筛选单元,用于从多个预设边缘集群中筛选出符合预设标签的预设边缘集群。
确定单元,用于获取符合预设标签的预设边缘集群的资源余量,以及用于将资源余量满足目标容器组运行要求的一个预设边缘集群确定为目标集群。
在一些可选的实施方式中,预设边缘集群的部署方式包括:在一个边缘机房内部署一个预设边缘集群。
在一些可选的实施方式中,目标集群的集群名称与目标节点的节点名称相同;选择模块603包括:
获取单元,用于获取目标集群的集群名称。
选择单元,用于从租户集群内的多个虚拟节点中,选择节点名称与集群名称相同的虚拟节点作为目标节点。
在一些可选的实施方式中,用于边缘计算的集群部署装置还包括虚拟节点生成模块;虚拟节点生成模块用于在租户集群中创建与多个预设边缘集群一一对应的多个虚拟节点,多个虚拟节点的节点名称与多个预设边缘集群的集群名称一一对应相同。
在一些可选的实施方式中,更新模块604具体用于将目标容器组的节点字段的值设置为目标节点的节点名称。
在一些可选的实施方式中,用于边缘计算的集群部署装置还包括通知模块和同步模块。
通知模块,用于通知目标集群创建与目标容器组对应的真实容器组。
同步模块,用于接收目标集群发送的真实容器组的部署信息,以及用于将部署信息同步至目标容器组上。
如图4和图5所示,本公开实施例还可提供一种用于边缘计算的集群部署***,该***包括租户集群和目标集群,在Kubernetes场景下,租户集群包括应用程序编程接口服务器(kube-apiserver)和调度器(edge-cluster-schedule)。
应用程序编程接口服务器,用于响应于容器组创建请求,在租户集群中创建目标容器组。
调度器,用于从多个预设边缘集群中筛选出用于承载目标容器组的目标集群,以及用于在租户集群内的多个虚拟节点中选择目标集群对应的目标节点,以及用于根据目标节点的节点名称对目标容器组的节点字段进行配置,以将目标容器组调度至目标节点上。
其中,多个预设边缘集群分别与租户集群通信连接,多个虚拟节点与多个预设边缘集群一一对应。
在一些可选的实施方式中,容器组创建请求中设置有预设标签,预设标签用于表征目标容器组的配置要求。调度器用于以预设标签和多个预设边缘集群的资源余量为依据,从多个预设边缘集群中筛选出目标集群。
在一些可选的实施方式中,预设标签包括区域标签、机房标签、运营商标签、城市标签中的至少一种。调度器用于从多个预设边缘集群中筛选出符合预设标签的预设边缘集群,并用于获取符合预设标签的预设边缘集群的资源余量,以及用于将资源余量满足目标容器组运行要求的一个预设边缘集群确定为目标集群。
在一些可选的实施方式中,预设边缘集群的部署方式包括:在一个边缘机房内部署一个预设边缘集群。
在一些可选的实施方式中,目标集群的集群名称与目标节点的节点名称相同;调度器用于获取目标集群的集群名称,以及用于从租户集群内的多个虚拟节点中,选择节点名称与集群名称相同的虚拟节点作为目标节点。
在一些可选的实施方式中,用于边缘计算的集群部署***还包括虚拟节点代理(virtual-kubelet),虚拟节点代理用于在租户集群中创建与多个预设边缘集群一一对应的多个虚拟节点,多个虚拟节点的节点名称与多个预设边缘集群的集群名称一一对应相同。
在一些可选的实施方式中,调度器具体用于将目标容器组的节点字段的值设置为目标节点的节点名称。
在一些可选的实施方式中,虚拟节点代理用于通知目标集群创建与目标容器组对应的真实容器组,并用于接收目标集群发送的真实容器组的部署信息,以及用于将部署信息同步至目标容器组上。
上述各个模块和各个单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例中的用于边缘计算的集群部署装置是以功能单元的形式来呈现,这里的单元是指ASIC(Application Specific Integrated Circuit,专用集成电路)电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
本公开实施例还提供一种计算机设备,具有上述图6所示的用于边缘计算的集群部署装置。
请参阅图7,图7是本公开可选实施例提供的一种计算机设备的结构示意图,如图7所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器***)。图7中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,所述存储器20存储有可由至少一个处理器10执行的指令,以使所述至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。
本公开实施例还提供了一种计算机可读存储介质,上述根据本公开实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本公开的实施例,但是本领域技术人员可以在不脱离本公开的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (12)
1.一种用于边缘计算的集群部署方法,其特征在于,所述方法包括:
响应于容器组创建请求,在租户集群中创建目标容器组;
从多个预设边缘集群中筛选出用于承载所述目标容器组的目标集群,所述多个预设边缘集群分别与所述租户集群通信连接;
在所述租户集群内的多个虚拟节点中选择所述目标集群对应的目标节点,所述多个虚拟节点与所述多个预设边缘集群一一对应;
根据所述目标节点的节点名称对所述目标容器组的节点字段进行配置,以将所述目标容器组调度至所述目标节点上。
2.根据权利要求1所述的方法,其特征在于,所述容器组创建请求中设置有预设标签,所述预设标签用于表征所述目标容器组的配置要求;所述从多个预设边缘集群中筛选出用于承载所述目标容器组的目标集群,包括:
以所述预设标签和所述多个预设边缘集群的资源余量为依据,从所述多个预设边缘集群中筛选出目标集群。
3.根据权利要求2所述的方法,其特征在于,所述预设标签包括区域标签、机房标签、运营商标签、城市标签中的至少一种;所述以所述预设标签和所述多个预设边缘集群的资源余量为依据,从所述多个预设边缘集群中筛选出目标集群,包括:
从所述多个预设边缘集群中筛选出符合所述预设标签的预设边缘集群;
获取符合所述预设标签的预设边缘集群的资源余量,将资源余量满足所述目标容器组运行要求的一个预设边缘集群确定为所述目标集群。
4.根据权利要求1至3中任一项所述的方法,其特征在于,
所述预设边缘集群的部署方式包括:在一个边缘机房内部署一个预设边缘集群。
5.根据权利要求1所述的方法,其特征在于,所述目标集群的集群名称与所述目标节点的节点名称相同;所述在所述租户集群内的多个虚拟节点中选择所述目标集群对应的目标节点,包括:
获取所述目标集群的集群名称;
从所述租户集群内的多个虚拟节点中,选择节点名称与所述集群名称相同的虚拟节点作为所述目标节点。
6.根据权利要求5所述的方法,其特征在于,所述响应于容器组创建请求之前,所述方法还包括:
在所述租户集群中创建与所述多个预设边缘集群一一对应的所述多个虚拟节点,所述多个虚拟节点的节点名称与所述多个预设边缘集群的集群名称一一对应相同。
7.根据权利要求1至3或5或6中任一项所述的方法,其特征在于,所述根据所述目标节点的节点名称对所述目标容器组的节点字段进行配置,包括:
将所述目标容器组的节点字段的值设置为所述目标节点的节点名称。
8.根据权利要求1至3或5或6中任一项所述的方法,其特征在于,所述根据所述目标节点的节点名称对所述目标容器组的节点字段进行配置之后,所述方法还包括:
通知所述目标集群创建与所述目标容器组对应的真实容器组;
接收所述目标集群发送的所述真实容器组的部署信息,以及将所述部署信息同步至所述目标容器组上。
9.一种用于边缘计算的集群部署装置,其特征在于,所述装置包括:
创建模块,用于响应于容器组创建请求,在租户集群中创建目标容器组;
筛选模块,用于从多个预设边缘集群中筛选出用于承载所述目标容器组的目标集群,所述多个预设边缘集群分别与所述租户集群通信连接;
选择模块,用于在所述租户集群内的多个虚拟节点中选择所述目标集群对应的目标节点,所述多个虚拟节点与所述多个预设边缘集群一一对应;
更新模块,用于根据所述目标节点的节点名称对所述目标容器组的节点字段进行配置,以将所述目标容器组调度至所述目标节点上。
10.一种用于边缘计算的集群部署***,其特征在于,所述***包括租户集群和目标集群,所述租户集群包括应用程序编程接口服务器和调度器;
所述应用程序编程接口服务器,用于响应于容器组创建请求,在所述租户集群中创建目标容器组;
所述调度器,用于从多个预设边缘集群中筛选出用于承载所述目标容器组的所述目标集群,以及用于在所述租户集群内的多个虚拟节点中选择所述目标集群对应的目标节点,以及用于根据所述目标节点的节点名称对所述目标容器组的节点字段进行配置,以将所述目标容器组调度至所述目标节点上;
其中,所述多个预设边缘集群分别与所述租户集群通信连接,所述多个虚拟节点与所述多个预设边缘集群一一对应。
11.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至8中任一项所述的用于边缘计算的集群部署方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至8中任一项所述的用于边缘计算的集群部署方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410330005.4A CN117931379A (zh) | 2024-03-21 | 2024-03-21 | 用于边缘计算的集群部署方法、装置、***、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410330005.4A CN117931379A (zh) | 2024-03-21 | 2024-03-21 | 用于边缘计算的集群部署方法、装置、***、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117931379A true CN117931379A (zh) | 2024-04-26 |
Family
ID=90770660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410330005.4A Pending CN117931379A (zh) | 2024-03-21 | 2024-03-21 | 用于边缘计算的集群部署方法、装置、***、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117931379A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309448A (zh) * | 2020-03-16 | 2020-06-19 | 优刻得科技股份有限公司 | 基于多租户的管理集群的容器实例创建方法及装置 |
CN112199193A (zh) * | 2020-09-30 | 2021-01-08 | 北京达佳互联信息技术有限公司 | 资源调度方法、装置、电子设备和存储介质 |
CN113312161A (zh) * | 2021-05-06 | 2021-08-27 | 联想(北京)有限公司 | 一种应用调度方法、平台及存储介质 |
US20220107848A1 (en) * | 2019-06-15 | 2022-04-07 | Huawei Technologies Co., Ltd. | Edge service providing method and apparatus, and device |
-
2024
- 2024-03-21 CN CN202410330005.4A patent/CN117931379A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220107848A1 (en) * | 2019-06-15 | 2022-04-07 | Huawei Technologies Co., Ltd. | Edge service providing method and apparatus, and device |
CN111309448A (zh) * | 2020-03-16 | 2020-06-19 | 优刻得科技股份有限公司 | 基于多租户的管理集群的容器实例创建方法及装置 |
CN112199193A (zh) * | 2020-09-30 | 2021-01-08 | 北京达佳互联信息技术有限公司 | 资源调度方法、装置、电子设备和存储介质 |
CN113312161A (zh) * | 2021-05-06 | 2021-08-27 | 联想(北京)有限公司 | 一种应用调度方法、平台及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107515776B (zh) | 业务不间断升级方法、待升级节点和可读存储介质 | |
CN111506412B (zh) | 基于Airflow的分布式异步任务构建、调度***及方法 | |
CN111290834B (zh) | 一种基于云管理平台实现业务高可用的方法、装置及设备 | |
US9880827B2 (en) | Managing software version upgrades in a multiple computer system environment | |
CN107566165B (zh) | 一种发现及部署电力云数据中心可用资源的方法及*** | |
CN104142847B (zh) | 云计算环境下的无状态化虚拟机及其应用 | |
CN113742031B (zh) | 节点状态信息获取方法、装置、电子设备及可读存储介质 | |
CN113569987A (zh) | 模型训练方法和装置 | |
CN103703724A (zh) | 一种资源发放方法 | |
CN103095845B (zh) | 一种实现分布式通信的方法和*** | |
CN112527310A (zh) | 多租户数据隔离方法、装置、计算机设备及存储介质 | |
CN103414712A (zh) | 一种分布式虚拟桌面管理***和方法 | |
CN110932914B (zh) | 部署方法、部署装置、混合云***架构及计算机存储介质 | |
CN112288423A (zh) | 一种分布式框架的聚合支付方法和*** | |
CN111966462A (zh) | 一种混合云管理*** | |
CN108900435B (zh) | 一种业务部署的方法、装置及计算机存储介质 | |
US20230342183A1 (en) | Management method and apparatus for container cluster | |
CN105404530B (zh) | 一种实现简易部署和使用私有云的***及方法 | |
CN114565502A (zh) | Gpu资源管理方法、调度方法、装置、电子设备及存储介质 | |
CN115037757B (zh) | 一种多集群服务管理*** | |
CN108810107B (zh) | 一种双态it业务的云管平台以及服务方法 | |
CN113746676B (zh) | 基于容器集群的网卡管理方法、装置、设备、介质及产品 | |
CN114443294B (zh) | 大数据服务组件部署方法、***、终端及存储介质 | |
CN117931379A (zh) | 用于边缘计算的集群部署方法、装置、***、设备及介质 | |
CN113726638B (zh) | 一种多云多芯容器管理的方法、装置及设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |