CN117827155A - 大规模集群的informer组件化方法、装置、设备及存储介质 - Google Patents
大规模集群的informer组件化方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117827155A CN117827155A CN202311699083.3A CN202311699083A CN117827155A CN 117827155 A CN117827155 A CN 117827155A CN 202311699083 A CN202311699083 A CN 202311699083A CN 117827155 A CN117827155 A CN 117827155A
- Authority
- CN
- China
- Prior art keywords
- cluster
- etcd
- component
- pod
- index
- 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 61
- 238000004590 computer program Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 230000003213 activating effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本申请涉及计算机,公开了一种大规模集群的i nformer组件化方法、装置、设备及存储介质,所述大规模集群的informer组件化方法包括根据预设任务,下发构建组件指令至etcd集群;响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;调用所述informer集群中的目标API入口为所述预设任务提供服务。通过上述方式,本申请根据预设任务的类型,对etcd集群拆分,实现组件化,并通过目标informer组件向预设任务提供对应的目标API入口,不同业务使用不同的组件以避免业务间相互影响,优化了大规模的k8s集群的性能。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种大规模集群的informer组件化方法、装置、设备及存储介质。
背景技术
Kubernetes(K8s)各个组件都是通过REST(Representational State Transfer,表现层状态转化)API(Application Program Interface,应用程序接口)跟API Server(服务)交互通信的,而如果每次每一个组件都直接跟API Server交互去读取/写入到后端的etcd的话,会对API Server以及etcd造成非常大的负担。而Informer机制是为了保证各个组件之间通信的实时性、可靠性,并且减缓对API Server和etcd的负担。
为了支撑业务的迭代升级,推进网络大规模集群项目,需要将informer和neutron项目合并部署在同一个集群,单集群实际管理的节点规模将达到几千甚至上万台,单集群承担的业务也将更加复杂。
etcd作为k8s集群的数据存储数据库,是整个集群的基石,直接决定性能天花板。复杂的业务需求催生了大量的增、删、改、查请求,针对etcd的存储特性,这些请求性能均会随着etcd存储规模的增大而严重衰减,甚至导致etcd OOM(out of memory),请求超时等异常,从而导致集群关键组件间断性丢失,造成集群不可用。因此,如何优化大规模的k8s集群的性能成为了亟待解决的技术问题。
发明内容
本申请提供了一种大规模集群的informer组件化方法、装置、设备及存储介质,以优化大规模的k8s集群的性能。
第一方面,本申请提供了一种大规模集群的informer组件化方法,所述方法包括:
根据预设任务,下发构建组件指令至etcd集群;
响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
调用所述informer集群中的目标API入口为所述预设任务提供服务。
进一步地,etcd集群包括3个容器组pod,每个所述pod包括1个对外访问接口service,所述service用于etcd集群中各所述pod间的认证。
进一步地,述etcd集群包括第一pod,所述响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件,包括:
启动所述第一pod;
检测在所述第一pod启动的情况下,所述etcd集群是否正常;
在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod;
根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;
在所述APIserver集群通过检测的情况下,生成所述目标informer组件。
进一步地,启动所述第一pod之前,包括:
获取所述etcd集群的etcd集群证书;
根据所述etcd集群证书,分别创建所述etcd集群中各所述pod的所述service,并根据各所述service,创建所述第一pod。
进一步地,在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod之后,包括:
在所述etcd集群中存在未启动的pod,则创建新的pod并将新的pod加入所述etcd集群。
进一步地,根据预设任务,下发构建组件指令至etcd集群之前,包括:
获取所述etcd集群的资源使用频率和资源存储量;
根据所述资源使用频率和所述资源存储量,确定所述预设任务的informer组件类型,并根据所述informer组件类型确定所述构建组件指令。
进一步地,响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件之后,包括:
通过所述目标informer组件进行功能自检操作。
第二方面,本申请还提供了一种大规模集群的informer组件化装置,所述装置包括:
构建组件指令下发模块,用于根据预设任务,下发构建组件指令至etcd集群;
目标informer组件构建模块,用于响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
提供服务模块,用于调用所述informer集群中的目标API入口为所述预设任务提供服务。
第三方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如上述的大规模集群的informer组件化方法。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如上述的大规模集群的informer组件化方法。
本申请公开了一种大规模集群的informer组件化方法、装置、设备及存储介质,所述大规模集群的informer组件化方法包括根据预设任务,下发构建组件指令至etcd集群;响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;调用所述informer集群中的目标API入口为所述预设任务提供服务。通过上述方式,本申请根据预设任务的类型,对etcd集群拆分,实现组件化,并通过目标informer组件向预设任务提供对应的目标API入口,不同业务使用不同的组件以避免业务间相互影响,优化了大规模的k8s集群的性能。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的第一实施例提供的一种大规模集群的informer组件化方法的示意流程图;
图2是本申请的第二实施例提供的一种大规模集群的informer组件化方法的示意流程图;
图3是本申请的第三实施例提供的一种大规模集群的informer组件化方法的示意流程图;
图4为本申请的实施例提供的一种大规模集群的informer组件化装置的示意性框图;
图5为本申请的实施例提供的一种计算机设备的结构示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本申请的实施例提供了一种大规模集群的informer组件化方法、装置、设备及存储介质。其中,该大规模集群的informer组件化方法可以应用于服务器中,根据预设任务的类型,对etcd集群拆分,实现组件化,并通过目标informer组件向预设任务提供对应的目标API入口,不同业务使用不同的组件以避免业务间相互影响,优化了大规模的k8s集群的性能。其中,该服务器可以为独立的服务器,也可以为服务器集群。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请的第一实施例提供的一种大规模集群的informer组件化方法的示意流程图。该大规模集群的informer组件化方法可应用于服务器中,根据预设任务的类型,对etcd集群拆分,实现组件化,并通过目标informer组件向预设任务提供对应的目标API入口,不同业务使用不同的组件以避免业务间相互影响,优化了大规模的k8s集群的性能。
如图1所示,该大规模集群的informer组件化方法具体包括步骤S10至步骤S30。
步骤S10、根据预设任务,下发构建组件指令至etcd集群;
步骤S20、响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
步骤S30、调用所述informer集群中的目标API入口为所述预设任务提供服务。
在一个实施例中,etcd指的是用于共享配置和服务发现的分布式,一致性的KV存储系统;Kubernetes,又称K8s,指的是开源的,用于管理云平台中多个主机上的容器化的应用。
在一个实施例中,在实际业务使用过程中,不同业务,同一个业务中的不同资源都可以使用不同的informer组件化,通过分离组件化达到目的,具体的流程为:
1.评估业务中k8s的各种资源使用频率和存储,比如业务中主要用configmap类型来存储资源,单个etcd集群的存储配额不够,因此确定对etcd做拆分,单独为configmap创建一套informer组件;
2.通过对manager进程发送指令,单独构建出一套informer组件,其中包含configmap的CRD(Custom Resource Define,自定义资源定义);
3.通过这一套informer组件里的kube-apiserver集群为业务提供服务的API入口,后续业务里的configmap由此informer组件提供服务,configmap的使用跟业务中其它的k8s资源通过etcd拆分做到了资源隔离。
在一个实施例中,etcd集群由3个pod(容器组)组成,每个pod上层都有一个service(服务),实际etcd集群节点间是通过service地址来完成认证的,从另一个角度来说,预置节点白名单,这样设计主要考虑到4个方面:
1.通过service来完成集群间的认证通讯,因为service地址固定,方便在证书中对节点的地址集进行预置;
2.由于etcd节点是pod组成,当pod重启等操作时,podip为非固定,会影响节点重新加入集群,固定使用service地址可以解决这一问题;
3.对于kube-apiserver来说,使用service地址组成的etcd-server urls(网址),即可确定使用对应的etcd集群,如果使用etcd pod ip,在pod ip变化,或者集群重建时,需要重建Apiserver,使用固定的service地址,可以完美适配这个问题;
4.etcd集群中的pod重启后,通过固定的集群service地址,能找到原来的集群,原集群又能识别这是旧的节点,集群能自动完成恢复。
kube-apiserver集群由3个pod组成,其启动配置中的etcd server地址为etcd集群的3个service地址,kube-apiserver集群的service为业务层提供给api接口的代理功能,因此提供kube-apiserver的service地址给到业务层,业务就能使用当前informe组件的功能,包括informer机制,etcd的通用功能等。
本实施例公开了一种大规模集群的informer组件化方法、装置、设备及存储介质,所述大规模集群的informer组件化方法包括根据预设任务,下发构建组件指令至etcd集群;响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;调用所述informer集群中的目标API入口为所述预设任务提供服务。通过上述方式,本申请根据预设任务的类型,对etcd集群拆分,实现组件化,并通过目标informer组件向预设任务提供对应的目标API入口,不同业务使用不同的组件以避免业务间相互影响,优化了大规模的k8s集群的性能。
基于图1所示实施例,本实施例中,etcd集群包括3个容器组pod,每个所述pod包括1个对外访问接口service,所述service用于etcd集群中各所述pod间的认证。
请参阅图2,图2是本申请的第二实施例提供的一种大规模集群的informer组件化方法的示意流程图。该大规模集群的informer组件化方法可应用于服务器中,在etcd集群中第一pod启动后,检测etcd集群是否正常,在ectd集群正常的情况下,启动ectd集群中全部pod,再根据各pod的service创建APIserver集群,生成informer组件并进行自检。根据业务类型生成informer组件,提高了informer组件的多样性与组件功能准确性,优化了大规模的k8s集群的性能。
基于图1所示实施例,本实施例如图2所示,步骤S20包括步骤S201至步骤S205。
步骤S201、启动所述第一pod;
步骤S202、检测在所述第一pod启动的情况下,所述etcd集群是否正常;
步骤S203、在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod;
步骤S204、根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;
步骤S205、在所述APIserver集群通过检测的情况下,生成所述目标informer组件。
在一个实施例中,informer组件构建流程可以总结为:
1.创建etcd集群pod上层的service,这些service底层对应etcd pod,etcd集群节点间都是以service地址进行通讯;
2.启动etcd集群的1个pod,检查etcd集群正常后,启动下一个pod,并加入到集群中,重复执行这个步骤,直至所有pod都启动,并加入到集群,确保etcd集群检查正常;
3.根据etcd service地址,创建kube-apiserver集群,直到kube-apiserver集群检查正常;
4.informer组件功能自检,包括kube-apiserver正常访问,自定义CRD资源正常等;
5.informer组件正常,通过kube-apiserver代理可以提供给业务使用。
本实施例公开了一种大规模集群的informer组件化方法、装置、设备及存储介质,所述大规模集群的informer组件化方法包括根据预设任务,下发构建组件指令至etcd集群;启动所述第一pod;检测在所述第一pod启动的情况下,所述etcd集群是否正常;在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod;根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;在所述APIserver集群通过检测的情况下,生成所述目标informer组件;调用所述informer集群中的目标API入口为所述预设任务提供服务。通过上述方式,本申请在etcd集群中第一pod启动后,检测etcd集群是否正常,在ectd集群正常的情况下,启动ectd集群中全部pod,再根据各pod的service创建APIserver集群,生成informer组件并进行自检。根据业务类型生成informer组件,提高了informer组件的多样性与组件功能准确性,优化了大规模的k8s集群的性能。
请参阅图3,图3是本申请的第三实施例提供的一种大规模集群的informer组件化方法的示意流程图。该大规模集群的informer组件化方法可应用于服务器中,通过service进行ectd集群中各节点之间的通讯,避免了集群重建或pod IP变化导致的集群无法快速识别节点的问题,提高了etcd集群中识别各节点的效率,优化了大规模的k8s集群的性能。
基于图2所示实施例,本实施例如图3所示,步骤S201之前包括步骤S211至步骤S212。
步骤S211、获取所述etcd集群的etcd集群证书;
步骤S212、根据所述etcd集群证书,分别创建所述etcd集群中各所述pod的所述service,并根据各所述service,创建所述第一pod。
在一个实施例中,获取etcd集群需要使用的证书,证书的i p白名单包含etcdservice在内。
具体地,业务里有新增的高频率资源,或者有新的业务,同样可以通过扩展不同的informer组件来提供服务,通过此种方式完成etcd的拆分;使用informer组件化,可以对不同资源(包括自定义CRD)使用的etcd做拆分,突破单套etcd集群存储配额的限制。
本实施例公开了一种大规模集群的informer组件化方法、装置、设备及存储介质,所述大规模集群的informer组件化方法包括根据预设任务,下发构建组件指令至etcd集群;获取所述etcd集群的etcd集群证书;根据所述etcd集群证书,分别创建所述etcd集群中各所述pod的所述service,并根据各所述service,创建所述第一pod;启动所述第一pod;检测在所述第一pod启动的情况下,所述etcd集群是否正常;在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod;根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;在所述APIserver集群通过检测的情况下,生成所述目标informer组件;调用所述informer集群中的目标API入口为所述预设任务提供服务。通过上述方式,本申请通过service进行ectd集群中各节点之间的通讯,避免了集群重建或pod IP变化导致的集群无法快速识别节点的问题,提高了etcd集群中识别各节点的效率,优化了大规模的k8s集群的性能。
基于图2所示实施例,本实施例中,步骤S203之后,还包括:
在所述etcd集群中存在未启动的pod,则创建新的pod并将新的pod加入所述etcd集群。
基于图1所示实施例,本实施例中,步骤S10之前,包括:
获取所述etcd集群的资源使用频率和资源存储量;
根据所述资源使用频率和所述资源存储量,确定所述预设任务的informer组件类型,并根据所述informer组件类型确定所述构建组件指令。
基于上述任一实施例,本实施例中,步骤S20之后还包括:
通过所述目标informer组件进行功能自检操作。
请参阅图4,图4是本申请的实施例提供一种大规模集群的informer组件化装置的示意性框图,该大规模集群的informer组件化装置用于执行前述的大规模集群的informer组件化方法。其中,该大规模集群的informer组件化装置可以配置于服务器。
如图4所示,该大规模集群的informer组件化装置400,包括:
构建组件指令下发模块410,用于根据预设任务,下发构建组件指令至etcd集群;
目标informer组件构建模块420,用于响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
提供服务模块430,用于调用所述informer集群中的目标API入口为所述预设任务提供服务。
进一步地,所述目标informer组件构建模块420,包括:
第一pod启动单元,用于启动所述第一pod;
etcd集群检测单元,用于检测在所述第一pod启动的情况下,所述etcd集群是否正常;
APIserver集群检测单元,用于根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;
目标informer组件生成单元,用于在所述APIserver集群通过检测的情况下,生成所述目标informer组件。
进一步地,所述目标informer组件构建模块420,包括:
etcd集群证书获取单元,用于获取所述etcd集群的etcd集群证书;
第一pod创建单元,用于根据所述etcd集群证书,分别创建所述etcd集群中各所述pod的所述service,并根据各所述service,创建所述第一pod。
进一步地,所述目标informer组件构建模块420,包括:
新pod创建单元,用于在所述etcd集群中存在未启动的pod,则创建新的pod并将新的pod加入所述etcd集群。
进一步地,所述大规模集群的informer组件化装置400,还包括:
资源分析模块,用于获取所述etcd集群的资源使用频率和资源存储量;
构建组件指令确定模块,用于根据所述资源使用频率和所述资源存储量,确定所述预设任务的informer组件类型,并根据所述informer组件类型确定所述构建组件指令。
进一步地,所述大规模集群的informer组件化装置400,还包括:
组件自检模块,用于通过所述目标informer组件进行功能自检操作。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上述的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图5所示的计算机设备上运行。
请参阅图5,图5是本申请的实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以是服务器。
参阅图5,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种大规模集群的informer组件化方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种大规模集群的informer组件化方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
根据预设任务,下发构建组件指令至etcd集群;
响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
调用所述informer集群中的目标API入口为所述预设任务提供服务。
在一个实施例中,etcd集群包括第一pod,所述响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件,用于实现:
启动所述第一pod;
检测在所述第一pod启动的情况下,所述etcd集群是否正常;
在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod;
根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;
在所述APIserver集群通过检测的情况下,生成所述目标informer组件。
在一个实施例中,启动所述第一pod之前,用于实现:
获取所述etcd集群的etcd集群证书;
根据所述etcd集群证书,分别创建所述etcd集群中各所述pod的所述service,并根据各所述service,创建所述第一pod。
在一个实施例中,在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod之后,用于实现:
在所述etcd集群中存在未启动的pod,则创建新的pod并将新的pod加入所述etcd集群。
在一个实施例中,根据预设任务,下发构建组件指令至etcd集群之前,用于实现:
获取所述etcd集群的资源使用频率和资源存储量;
根据所述资源使用频率和所述资源存储量,确定所述预设任务的informer组件类型,并根据所述informer组件类型确定所述构建组件指令。
在一个实施例中,响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件之后,用于实现:
通过所述目标informer组件进行功能自检操作。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请实施例提供的任一项大规模集群的informer组件化方法。
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种大规模集群的informer组件化方法,其特征在于,包括:
根据预设任务,下发构建组件指令至etcd集群;
响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
调用所述informer集群中的目标API入口为所述预设任务提供服务。
2.根据权利要求1所述的大规模集群的informer组件化方法,其特征在于,所述etcd集群包括3个容器组pod,每个所述pod包括1个对外访问接口service,所述service用于etcd集群中各所述pod间的认证。
3.根据权利要求2所述的大规模集群的informer组件化方法,其特征在于,所述etcd集群包括第一pod,所述响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件,包括:
启动所述第一pod;
检测在所述第一pod启动的情况下,所述etcd集群是否正常;
在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod;
根据各所述pod中各所述service,创建APIserver集群,并对所述APIserver集群进行检测;
在所述APIserver集群通过检测的情况下,生成所述目标informer组件。
4.根据权利要求3所述的大规模集群的informer组件化方法,其特征在于,所述启动所述第一pod之前,包括:
获取所述etcd集群的etcd集群证书;
根据所述etcd集群证书,分别创建所述etcd集群中各所述pod的所述service,并根据各所述service,创建所述第一pod。
5.根据权利要求3所述的大规模集群的informer组件化方法,其特征在于,所述在所述etcd集群正常的情况下,启动所述etcd集群中的全部所述pod之后,包括:
在所述etcd集群中存在未启动的pod,则创建新的pod并将新的pod加入所述etcd集群。
6.根据权利要求1所述的大规模集群的informer组件化方法,其特征在于,所述根据预设任务,下发构建组件指令至etcd集群之前,包括:
获取所述etcd集群的资源使用频率和资源存储量;
根据所述资源使用频率和所述资源存储量,确定所述预设任务的informer组件类型,并根据所述informer组件类型确定所述构建组件指令。
7.根据权利要求1至6中任一项所述的大规模集群的informer组件化方法,其特征在于,所述响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件之后,包括:
通过所述目标informer组件进行功能自检操作。
8.一种大规模集群的informer组件化装置,其特征在于,包括:
构建组件指令下发模块,用于根据预设任务,下发构建组件指令至etcd集群;
目标informer组件构建模块,用于响应于所述构建组件指令,对所述etcd集群进行拆分,构建目标informer组件;
提供服务模块,用于调用所述informer集群中的目标API入口为所述预设任务提供服务。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如权利要求1至7中任一项所述的大规模集群的informer组件化方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如权利要求1至7中任一项所述的大规模集群的informer组件化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311699083.3A CN117827155A (zh) | 2023-12-12 | 2023-12-12 | 大规模集群的informer组件化方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311699083.3A CN117827155A (zh) | 2023-12-12 | 2023-12-12 | 大规模集群的informer组件化方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117827155A true CN117827155A (zh) | 2024-04-05 |
Family
ID=90514488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311699083.3A Pending CN117827155A (zh) | 2023-12-12 | 2023-12-12 | 大规模集群的informer组件化方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117827155A (zh) |
-
2023
- 2023-12-12 CN CN202311699083.3A patent/CN117827155A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112119374B (zh) | 使用替代服务器名称选择性地提供相互传输层安全 | |
US10642725B2 (en) | Automated test generation for multi-interface enterprise virtualization management environment | |
US11093232B2 (en) | Microservice update system | |
US9250918B2 (en) | Server management with dynamic construction of pre-boot images | |
CN107800565B (zh) | 巡检方法、装置、系统、计算机设备和存储介质 | |
US20170161059A1 (en) | Management of multiple application programming interface versions for development environments | |
US20140280805A1 (en) | Two-Sided Declarative Configuration for Cloud Deployment | |
CN107241315B (zh) | 银行网关接口的接入方法、装置及计算机可读存储介质 | |
JP7256217B2 (ja) | サービス情報処理方法、装置、設備、コンピュータ記憶媒体、及びプログラム | |
US10944655B2 (en) | Data verification based upgrades in time series system | |
CN111669284B (zh) | OpenStack自动化部署方法、电子设备、存储介质及系统 | |
CN107666493B (zh) | 一种数据库配置方法及其设备 | |
CN111831567B (zh) | 应用的测试环境配置方法、装置、系统和介质 | |
CN112860282A (zh) | 集群插件的升级方法、装置和服务器 | |
CN113900670B (zh) | 集群服务器应用部署系统 | |
US10176067B1 (en) | On-demand diagnostics in a virtual environment | |
US10331522B2 (en) | Event failure management | |
CN109828830B (zh) | 用于管理容器的方法和装置 | |
CN114356521A (zh) | 任务调度方法、装置、电子设备及存储介质 | |
US11656977B2 (en) | Automated code checking | |
KR20200048633A (ko) | 소프트웨어 자동 테스트 시스템 및 방법 | |
CN117827155A (zh) | 大规模集群的informer组件化方法、装置、设备及存储介质 | |
CN113312148B (zh) | 一种大数据服务部署方法、装置、设备及介质 | |
US9372816B2 (en) | Advanced programmable interrupt controller identifier (APIC ID) assignment for a multi-core processing unit | |
US10394534B2 (en) | Framework for flexible logging of development environment deployment |
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 |