CN117978806A - 一种实现跨集群资源调度的方法 - Google Patents
一种实现跨集群资源调度的方法 Download PDFInfo
- Publication number
- CN117978806A CN117978806A CN202410019563.9A CN202410019563A CN117978806A CN 117978806 A CN117978806 A CN 117978806A CN 202410019563 A CN202410019563 A CN 202410019563A CN 117978806 A CN117978806 A CN 117978806A
- Authority
- CN
- China
- Prior art keywords
- cluster
- data
- request
- scheduling
- resource
- 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 26
- 238000005516 engineering process Methods 0.000 claims abstract description 22
- 238000012545 processing Methods 0.000 claims description 39
- 230000003044 adaptive effect Effects 0.000 claims description 15
- 230000036541 health Effects 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 9
- 238000012937 correction Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 6
- 238000010801 machine learning Methods 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 4
- 230000006978 adaptation Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 claims description 3
- 238000005065 mining Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 230000010076 replication Effects 0.000 abstract description 2
- 238000012423 maintenance Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 10
- 238000012544 monitoring process Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- 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
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种实现跨集群资源调度的方法,涉及云计算技术领域,该基于栅格技术,通过栅格引擎管理分析多集群节点数据,实时计算分析各集群的运行状态和负载情况等数据,制定调度策略为请求分配最优的目标集群,集群之间可根据调度策略按需发起STCP连接建立通道进行跨集群的Pod复制漂移,最终实现在多集群场景下,资源的跨集群调度需求。帮助企业实现在多集群环境下的资源统管调度,实现对多个集群的资源管理以及流量治理的能力。相较于现有的主要技术方案,本专利创造的发明点在于:通过栅格技术实现对数据统一管理和跨集群资源调度,帮助企业更有效地管理和监控多个Kubernetes集群,支持按需调度资源,提高服务质量和系统的效率、可靠性及安全性。
Description
本申请是申请号202311422618.2、发明创造名称为《一种实现跨集群资源调度的方法》的专利申请的分案申请。
技术领域
本发明涉及云计算技术领域,具体为一种实现跨集群资源调度的方法。
背景技术
在云平台建设初期,单集群就能基本满足企业的业务需求,但随着对云计算的需求不断增加,当系统和业务发生故障和灾害时,单集群因其承载能力有限、容灾能力有限等问题日渐突出,已经无法满足日益新增的需求,自然而然多集群编排就成了首选的解决方案。但在多集群实际的应用场景中,因为每个集群的资源和配置不尽相同,资源的分配与管理较为复杂,多集群分担负载的要求一直是软件系统需要解决的重要且复杂的问题。
在现有技术方案中通常针对某一多节点集群的资源调度,一般采用统一调度负载分配技术。系统会定义一个或多个调度节点,调度节点收集所有计算服务节点的运行状态和负载情况,按照预定的调度策略实时进行计算分析,然后向各计算节点分配计算任务。然而,现有技术方案仅支持针对某一多节点集群的资源调度,在多集群应用场景下无法实现多集群之间资源调度的需求。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种实现跨集群资源调度的方法,现有技术方案是针对集群内部多节点资源的调度分发,无法处理解决多个集群之间的资源调度。比如在多集群的应用场景下,一个业务系统部署在多个集群之上,若其中某个集群发生故障或资源不足无法响应请求,现有技术无法解决此类问题,需采用本发明的多集群资源调度技术将请求分发至其他资源充足的集群,以此来保障业务连续性,减少损失。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种实现跨集群资源调度的方法,包括以下步骤,
S1、预先建立多个Kubernetes集群的栅格引擎,并实时监测多集群节点的数据信息;
S2、数据采集:从多个Kubernetes集群中实时采集与记录相关的网关路由数据信息和节点资源数据信息,并建立集群状态数据集;
S3、栅格化处理:将集群状态数据集中所采集的相关数据信息进行数据预处理,去除噪声,并对其进行分析识别和特征提取生成栅格数据,将所述栅格数据传输至集群状态数据集;
S4、数据分析:将栅格化处理后的集群状态数据集进行机器学习分析,以节点为单位拆分出Kubernetes1_1、Kubernetes1_2、...、Kubernetes1_n栅格数据,并分析所有集群节点的运行状态和负载情况,包括每个节点的总资源Zzyz、已被占用的资源Ybzz、故障频率Gzpl、负载Fzz、内存值Ncz以及网络宽带Wlkd,并通过栅格引擎对栅格数据进行深度挖掘计算,经过无量纲技术处理后,获取集群状态指数Jqzs,所述集群状态指数Jqzs通过以下公式获取:
式中,Lyl表示为资源利用率,Jlxs表示为健康系数,Podl表示为Pod数量,F1、F2和F3分别表示为资源利用率Lyl、健康系数Jlxs和Pod数量Podl的权重值,其中,R表示为常数修正系数,0.26≤F1≤0.35,0.35≤F2≤0.55,0.22≤F3≤0.62,且1.0≤F1+F2+F3≤1.35;
S5、适配选取:当栅格引擎将每次请求发起后,结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求。
优选的,利用Kubernetes API技术采集与记录获取有关节点资源和Pod资源的信息,并以编程方式执行操作,包括查询集群状态和配置信息、创建、更新和删除资源对象;
集群状态数据集中包括相关的网关路由数据信息和节点资源数据信息;其中,相关的网关路由数据信息包括路径匹配条件、域名匹配条件、后端服务名称、后端服务地址、端口号、身份验证、Apiserver地址、Token信息、请求转换以及请求响应修改;
节点资源数据信息包括节点的网络流量、平均负载、运行队列长度、已用内存、可用内存、缓存、交换空间、磁盘总容量、已使用磁盘空间、可用磁盘空间以及节点是否在线、是否有硬件故障、操作系统是否正常运行数据信息。
优选的,通过检测和处理集群状态数据集内相关数据信息的缺失值,并利用信号处理技术,去除相关数据信息中的高频噪声,提取出有效数据并生成栅格数据;
依据无量纲处理技术对处理后的数据进行标准化处理,统一单位。
优选的,将所述每个节点的总资源Zzyz与所述已被占用的资源Ybzz相对比,并经过无量纲处理后,获取资源利用率Lyl,所述资源利用率Lyl通过以下公式获取:
式中,Zzyz表示为每个节点的总资源,Ybzz表示为每个节点的总资源Zzyz中已被占用的资源。
优选的,将所述故障频率Gzpl与所述负载Fzz相关联,并经过无量纲处理后,获取健康系数Jlxs,所述健康系数Jlxs通过以下公式获取:
式中,Wxcs表示为维修次数,w1、w2和w3分别表示为故障频率Gzpl、维修次数Wxcs和负载Fzz的权重值,其中,0.30≤w1≤0.62,0.20≤w2≤0.56,0.43≤w3≤0.75,且1.0≤w1+w2+w3≤1.65,C表示为常数修正系数。
优选的,将所述内存值Ncz与所述网络宽带Wlkd相关联,并经过无量纲处理后,获取负载影响指数Fzyx,所述负载影响指数Fzyx通过以下公式获取:
式中,Chs表示为CPU核数,a1、a2和a3分别表示为内存值Ncz、网络宽带Wlkd和CPU核数Chs的权重值,其中,0.15≤a1≤0.32,0.20≤a2≤0.52,0.38≤a3≤0.66,且0.90≤a1+a2+a3≤1.35,B表示为常数修正系数。
优选的,在栅格引擎将每次请求发起后,与相应的网关路由或服务信息共同维护成一组关系对应表并进行实时计算更新。
优选的,当请求发起时,栅格引擎先查询关系对应表中相应请求所对应的网关路由或服务信息,解析网关路由的域名,找到网关路由或服务所在集群,并结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求。
优选的,依据调度策略,判断所述关系对应表中相应请求的网关路由或服务所在集群中,是否存在适配目标集群:
若存在适配目标集群,此时栅格引擎将请求直接分发给目标集群中对应网关路由的service实例上,并将响应数据返回至请求端;
若不存在适配目标集群,此时栅格引擎将控制目标集群与该请求对应的网关路由所在的集群发起STCP连接建立通道进行通信,调取其所在集群内网关路由对应的Service实例的服务接口,通过POST请求将获取到的Service实例对应的Yaml文件提交给目标集群。
优选的,栅格引擎通过目标集群的Apiserver地址和Token信息,控制目标集群根据相对应的Yaml文件部署生成相同的实例,并结合所述集群状态指数Jqzs结果,择优选择节点调度运行该Pod,并对Pod进行部署,栅格引擎中关系对应表根据最新调度情况进行调整,相应请求即调度为访问目标集群中网络路由对应的Service实例服务地址,并将响应数据返回至请求端。
(三)有益效果
本发明提供了一种实现跨集群资源调度的方法,具备以下有益效果:
(1)该一种实现跨集群资源调度的方法,基于栅格技术,通过栅格引擎管理分析多集群节点数据,实时计算分析各集群的运行状态和负载情况等数据,制定调度策略为请求分配最优的目标集群,集群之间可根据调度策略按需发起STCP连接建立通道进行跨集群的Pod复制漂移,最终实现在多集群场景下,资源的跨集群调度需求,帮助企业实现在多集群环境下的资源统管调度,实现对多个集群的资源管理以及流量治理的能力。
(2)该一种实现跨集群资源调度的方法,相较于现有的主要技术方案,本专利创造的发明点在于:通过栅格技术实现对数据统一管理和跨集群资源调度,帮助企业更有效地管理和监控多个Kubernetes集群,支持按需调度资源,提高服务质量和系统的效率、可靠性及安全性。
附图说明
图1为本发明一种实现跨集群资源调度的方法框图流程示意图;
图2为本发明一种实现跨集群资源调度的方法步骤示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在云平台建设初期,单集群就能基本满足企业的业务需求,但随着对云计算的需求不断增加,当系统和业务发生故障和灾害时,单集群因其承载能力有限、容灾能力有限等问题日渐突出,已经无法满足日益新增的需求,自然而然多集群编排就成了首选的解决方案。但在多集群实际的应用场景中,因为每个集群的资源和配置不尽相同,资源的分配与管理较为复杂,多集群分担负载的要求一直是软件系统需要解决的重要且复杂的问题。
在现有技术方案中通常针对某一多节点集群的资源调度,一般采用统一调度负载分配技术。系统会定义一个或多个调度节点,调度节点收集所有计算服务节点的运行状态和负载情况,按照预定的调度策略实时进行计算分析,然后向各计算节点分配计算任务。然而,现有技术方案仅支持针对某一多节点集群的资源调度,在多集群应用场景下无法实现多集群之间资源调度的需求。
实施例1
请参阅图1和图2,本发明提供一种实现跨集群资源调度的方法,包括以下步骤,
S1、预先建立多个Kubernetes集群的栅格引擎,并实时监测多集群节点的数据信息;
S2、数据采集:从多个Kubernetes集群中实时采集与记录相关的网关路由数据信息和节点资源数据信息,并建立集群状态数据集;
S3、栅格化处理:将集群状态数据集中所采集的相关数据信息进行数据预处理,去除噪声,并对其进行分析识别和特征提取生成栅格数据,将所述栅格数据传输至集群状态数据集;
S4、数据分析:将栅格化处理后的集群状态数据集进行机器学习分析,以节点为单位拆分出Kubernetes1_1、Kubernetes1_2、...、Kubernetes1_n栅格数据,并分析所有集群节点的运行状态和负载情况,包括每个节点的总资源Zzyz、已被占用的资源Ybzz、故障频率Gzpl、负载Fzz、内存值Ncz以及网络宽带Wlkd,并通过栅格引擎对栅格数据进行深度挖掘计算,经过无量纲技术处理后,获取集群状态指数Jqzs,所述集群状态指数Jqzs通过以下公式获取:
式中,Lyl表示为资源利用率,Jlxs表示为健康系数,Podl表示为Pod数量,F1、F2和F3分别表示为资源利用率Lyl、健康系数Jlxs和Pod数量Podl的权重值,其中,R表示为常数修正系数,0.26≤F1≤0.35,0.35≤F2≤0.55,0.22≤F3≤0.62,且1.0≤F1+F2+F3≤1.35;上述的Pod数量Podl指的是在整个Kubernetes集群中当前正在活动状态的Pod实例的总数,包括运行中的、处于调度等待中的、已分配但未启动的Pod。
S5、适配选取:当栅格引擎将每次请求发起后,结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求。
本实施例中,通过实时采集和记录多个Kubernetes集群的网关路由数据信息和节点资源数据信息,方便及时了解各集群的状态和性能,有助于监控和快速响应集群的变化和需求;通过数据预处理和栅格化处理,以便去除了数据中的噪声,并从原始数据中提取了有用的特征,从而进一步提高数据质量和可分析性;同时利用机器学习技术对栅格化处理后的数据进行分析,以深入了解集群节点的运行状态和负载情况,进一步帮助优化资源分配和提高集群的性能,并根据集群状态指数Jqzs的结果和负载影响指数Fzyx,制定调度策略,将任务分配到最适合的目标集群,以便进一步实现资源的最优分配,提高任务执行效率。
实施例2
请参照图1,具体的:利用Kubernetes API技术采集与记录获取有关节点资源和Pod资源的信息,并以编程方式执行操作,包括查询集群状态和配置信息、创建、更新和删除资源对象;
集群状态数据集中包括相关的网关路由数据信息和节点资源数据信息;其中,相关的网关路由数据信息包括路径匹配条件、域名匹配条件、后端服务名称、后端服务地址、端口号、身份验证、Apiserver地址、Token信息、请求转换以及请求响应修改;
节点资源数据信息包括节点的网络流量、平均负载、运行队列长度、已用内存、可用内存、缓存、交换空间、磁盘总容量、已使用磁盘空间、可用磁盘空间以及节点是否在线、是否有硬件故障、操作系统是否正常运行数据信息。
通过检测和处理集群状态数据集内相关数据信息的缺失值,并利用信号处理技术,去除相关数据信息中的高频噪声,提取出有效数据并生成栅格数据;
依据无量纲处理技术对处理后的数据进行标准化处理,统一单位。
本实施例中,通过Kubernetes API技术,可以实时获取有关节点资源和Pod资源的信息,包括查询集群状态、创建、更新和删除资源对象,这有助于实时监控和管理集群的配置和状态;同时通过检测和处理数据集中的缺失值,可以确保数据的完整性;利用信号处理技术,高频噪声可以被有效去除,确保数据的准确性和稳定性;通过无量纲处理技术,数据可以被标准化,统一单位和范围,这有助于比较不同资源的数据,以便进一步的分析。总体而言,该方法结合了Kubernetes API技术、数据处理、无量纲处理和信号处理等技术,进一步为集群资源管理和监控提供了全面的解决方案,以便提高集群的稳定性以及维护性,同时为资源分配和负载均衡提供了有用的数据和指标,这对于多集群环境下的资源调度和健康监测非常有益。
实施例3
请参照图1,具体的:将所述每个节点的总资源Zzyz与所述已被占用的资源Ybzz相对比,并经过无量纲处理后,获取资源利用率Lyl,所述资源利用率Lyl通过以下公式获取:
式中,Zzyz表示为每个节点的总资源,Ybzz表示为每个节点的总资源Zzyz中已被占用的资源。
上述的每个节点的总资源Zzyz和每个节点的总资源Zzyz中已被占用的资源Ybzz均通过容器资源管理器提供有关节点上容器资源使用情况的信息。
将所述故障频率Gzpl与所述负载Fzz相关联,并经过无量纲处理后,获取健康系数Jlxs,所述健康系数Jlxs通过以下公式获取:
式中,Wxcs表示为维修次数,w1、w2和w3分别表示为故障频率Gzpl、维修次数Wxcs和负载Fzz的权重值,其中,0.30≤w1≤0.62,0.20≤w2≤0.56,0.43≤w3≤0.75,且1.0≤w1+w2+w3≤1.65,C表示为常数修正系数。
上述的维修次数Wxcs通过记录节点或设备的维修历史来获取,其中包括维修的时间、原因、维修工作内容等信息;故障频率Gzpl通过监控系统或应用程序的日志来记录故障事件的发生时间、类型和详细信息,并根据记录的数据信息进行计算获取故障频率Gzpl;负载Fzz通过使用监控工具来监视节点或应用程序的负载情况,包括CPU利用率、内存使用率、网络流量等。
将所述内存值Ncz与所述网络宽带Wlkd相关联,并经过无量纲处理后,获取负载影响指数Fzyx,所述负载影响指数Fzyx通过以下公式获取:
式中,Chs表示为CPU核数,a1、a2和a3分别表示为内存值Ncz、网络宽带Wlkd和CPU核数Chs的权重值,其中,0.15≤a1≤0.32,0.20≤a2≤0.52,0.38≤a3≤0.66,且0.90≤a1+a2+a3≤1.35,B表示为常数修正系数。
上述的CPU核数和内存值Ncz均通过在云服务提供商内部进行采集获取;网络宽带Wlkd通过使用网络流量监控工具来捕获和记录集群中各个节点的网络流量数据,帮助此方法了解每个节点的入站和出站流量和数据包传输速率等网络性能指标。
本实施例中,通过对资源利用率Lyl的计算,便于了解节点资源的有效使用情况,发现资源不足或资源浪费的问题,为资源调度提供决策依据;健康系数Jlxs将评估节点的健康状态和稳定性,以便及时发现问题,减少故障频率;通过负载影响指数Fzyx的计算将评估负载对节点性能的影响,并且能够进一步发现内存和网络资源瓶颈。总之,该方法综合考虑多种因素,进一步了解节点的状态,包括资源利用情况、健康状态和负载情况。
实施例4
请参照图1,具体的:在栅格引擎将每次请求发起后,与相应的网关路由或服务信息共同维护成一组关系对应表并进行实时计算更新。
当请求发起时,栅格引擎先查询关系对应表中相应请求所对应的网关路由或服务信息,解析网关路由的域名,找到网关路由或服务所在集群,并结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求。
依据调度策略,判断所述关系对应表中相应请求的网关路由或服务所在集群中,是否存在适配目标集群:
若存在适配目标集群,此时栅格引擎将请求直接分发给目标集群中对应网关路由的service实例上,并将响应数据返回至请求端;
若不存在适配目标集群,此时栅格引擎将控制目标集群与该请求对应的网关路由所在的集群发起STCP连接建立通道进行通信,调取其所在集群内网关路由对应的Service实例的服务接口,通过POST请求将获取到的Service实例对应的Yaml文件提交给目标集群。
栅格引擎通过目标集群的Apiserver地址和Token信息,控制目标集群根据相对应的Yaml文件部署生成相同的实例,并结合所述集群状态指数Jqzs结果,择优选择节点调度运行该Pod,并对Pod进行部署,栅格引擎中关系对应表根据最新调度情况进行调整,相应请求即调度为访问目标集群中网络路由对应的Service实例服务地址,并将响应数据返回至请求端。其中,目标集群的Apiserver地址指的是目标Kubernetes集群的Kubernetes APIServer的地址,用于将其与目标集群进行通信和管理的入口点;Token信息用于身份验证和授权的访问令牌,它允许栅格引擎以授权的身份访问目标集群的Kubernetes API。
本实施例中,基于栅格技术,通过栅格引擎管理分析多集群节点数据,实时计算分析各集群的运行状态和负载情况等数据,制定调度策略为请求分配最优的目标集群,集群之间可根据调度策略按需发起STCP连接建立通道进行跨集群的Pod复制漂移,最终实现在多集群场景下,资源的跨集群调度需求,帮助企业实现在多集群环境下的资源统管调度,实现对多个集群的资源管理以及流量治理的能力。
示例:一个某某企业,该企业引入了一种实现跨集群资源调度的方法,以下是为某某企业的示例:
数据采集:每个节点的总资源Zzyz为69;已被占用的资源Ybzz为36;故障频率Gzpl为50%;维修次数Wxcs为6;负载Fzz为102;w1为0.35;w2为0.33;w3为0.56;C为2;内存值Ncz为89;网络宽带Wlkd为130;CPU核数Chs为57;a1为0.22;a2为0.38;a3为0.58;B为5;Pod数量Podl为16;R为3;F1为0.30;F2为0.39;F3为0.50;
通过以上数据,可以进行以下计算:
资源利用率
健康系数
负载影响指数
集群状态指数结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (7)
1.一种实现跨集群资源调度的方法,其特征在于:包括以下步骤,
S1、预先建立多个Kubernetes集群的栅格引擎,并实时监测多集群节点的数据信息;
S2、数据采集:从多个Kubernetes集群中实时采集与记录相关的网关路由数据信息和节点资源数据信息,并建立集群状态数据集;
S3、栅格化处理:将集群状态数据集中所采集的相关数据信息进行数据预处理,去除噪声,并对其进行分析识别和特征提取生成栅格数据,将所述栅格数据传输至集群状态数据集;
S4、数据分析:将栅格化处理后的集群状态数据集进行机器学习分析,以节点为单位拆分出Kubernetes1_1、Kubernetes1_2、...、Kubernetes1_n栅格数据,并分析所有集群节点的运行状态和负载情况,包括每个节点的总资源Zzyz、已被占用的资源Ybzz、故障频率Gzpl、负载Fzz、内存值Ncz以及网络宽带Wlkd,并通过栅格引擎对栅格数据进行深度挖掘计算,经过无量纲技术处理后,获取集群状态指数Jqzs,所述集群状态指数Jqzs通过以下公式获取:
式中,Lyl表示为资源利用率,Jlxs表示为健康系数,Podl表示为Pod数量,F1、F2和F3分别表示为资源利用率Lyl、健康系数Jlxs和Pod数量Podl的权重值,其中,R表示为常数修正系数,0.26≤F1≤0.35,0.35≤F2≤0.55,0.22≤F3≤0.62,且1.0≤F1+F2+F3≤1.35;
S5、适配选取:当栅格引擎将每次请求发起后,结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求,
其中,将所述内存值Ncz与所述网络宽带Wlkd相关联,并经过无量纲处理后,获取负载影响指数Fzyx,所述负载影响指数Fzyx通过以下公式获取:
式中,Chs表示为CPU核数,a1、a2和a3分别表示为内存值Ncz、网络宽带Wlkd和CPU核数Chs的权重值,其中,0.15≤a1≤0.32,0.20≤a2≤0.52,0.38≤a3≤0.66,且0.90≤a1+a2+a3≤1.35,B表示为常数修正系数。
2.根据权利要求1所述的一种实现跨集群资源调度的方法,其特征在于:利用Kubernetes API技术采集与记录获取有关节点资源和Pod资源的信息,并以编程方式执行操作,包括查询集群状态和配置信息、创建、更新和删除资源对象;
集群状态数据集中包括相关的网关路由数据信息和节点资源数据信息;其中,相关的网关路由数据信息包括路径匹配条件、域名匹配条件、后端服务名称、后端服务地址、端口号、身份验证、Apiserver地址、Token信息、请求转换以及请求响应修改;
节点资源数据信息包括节点的网络流量、平均负载、运行队列长度、已用内存、可用内存、缓存、交换空间、磁盘总容量、已使用磁盘空间、可用磁盘空间以及节点是否在线、是否有硬件故障、操作系统是否正常运行数据信息。
3.根据权利要求2所述的一种实现跨集群资源调度的方法,其特征在于:通过检测和处理集群状态数据集内相关数据信息的缺失值,并利用信号处理技术,去除相关数据信息中的高频噪声,提取出有效数据并生成栅格数据;
依据无量纲处理技术对处理后的数据进行标准化处理,统一单位。
4.根据权利要求1所述的一种实现跨集群资源调度的方法,其特征在于:在栅格引擎将每次请求发起后,与相应的网关路由或服务信息共同维护成一组关系对应表并进行实时计算更新。
5.根据权利要求4所述的一种实现跨集群资源调度的方法,其特征在于:当请求发起时,栅格引擎先查询关系对应表中相应请求所对应的网关路由或服务信息,解析网关路由的域名,找到网关路由或服务所在集群,并结合所述集群状态指数Jqzs结果,制定调度策略,分配到适配的目标集群,并向其分发任务处理请求。
6.根据权利要求5所述的一种实现跨集群资源调度的方法,其特征在于:依据调度策略,判断所述关系对应表中相应请求的网关路由或服务所在集群中,是否存在适配目标集群:
若存在适配目标集群,此时栅格引擎将请求直接分发给目标集群中对应网关路由的service实例上,并将响应数据返回至请求端;
若不存在适配目标集群,此时栅格引擎将控制目标集群与该请求对应的网关路由所在的集群发起STCP连接建立通道进行通信,调取其所在集群内网关路由对应的Service实例的服务接口,通过POST请求将获取到的Service实例对应的Yaml文件提交给目标集群。
7.根据权利要求6所述的一种实现跨集群资源调度的方法,其特征在于:栅格引擎通过目标集群的Apiserver地址和Token信息,控制目标集群根据相对应的Yaml文件部署生成相同的实例,并结合所述集群状态指数Jqzs结果,择优选择节点调度运行该Pod,并对Pod进行部署,栅格引擎中关系对应表根据最新调度情况进行调整,相应请求即调度为访问目标集群中网络路由对应的Service实例服务地址,并将响应数据返回至请求端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410019563.9A CN117978806A (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311422618.2A CN117155939B (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
CN202410019563.9A CN117978806A (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311422618.2A Division CN117155939B (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117978806A true CN117978806A (zh) | 2024-05-03 |
Family
ID=88912441
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410019563.9A Pending CN117978806A (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
CN202311422618.2A Active CN117155939B (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311422618.2A Active CN117155939B (zh) | 2023-10-31 | 2023-10-31 | 一种实现跨集群资源调度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN117978806A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111090502A (zh) * | 2018-10-24 | 2020-05-01 | 阿里巴巴集团控股有限公司 | 一种流数据任务调度方法和装置 |
CN111522639A (zh) * | 2020-04-16 | 2020-08-11 | 南京邮电大学 | Kubernetes集群架构系统下多维资源调度方法 |
CN116389484A (zh) * | 2023-04-26 | 2023-07-04 | 奥特酷智能科技(南京)有限公司 | 基于数据分发服务的跨Kubernetes集群网络互通系统及方法 |
CN116755855A (zh) * | 2023-06-05 | 2023-09-15 | 北京信息科技大学 | 一种基于Kubernetes集群的分布式容器调度方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9848041B2 (en) * | 2015-05-01 | 2017-12-19 | Amazon Technologies, Inc. | Automatic scaling of resource instance groups within compute clusters |
CN112702211B (zh) * | 2020-12-30 | 2022-06-24 | 浪潮云信息技术股份公司 | 一种基于Kubernetes的网络服务网格系统 |
US11805073B2 (en) * | 2021-05-03 | 2023-10-31 | Avesha, Inc. | Controlling placement of workloads of an application within an application environment |
CN115328752B (zh) * | 2022-08-17 | 2023-03-21 | 成都道客数字科技有限公司 | 一种用于Kubernetes控制面测试的集群模拟方法及系统 |
CN116795483A (zh) * | 2022-10-26 | 2023-09-22 | 中移(苏州)软件技术有限公司 | 一种资源处理方法和装置、及存储介质 |
CN115811546B (zh) * | 2022-11-17 | 2024-07-26 | 上海大学 | 用于科技服务实现网络协同分布式处理的系统及其方法 |
-
2023
- 2023-10-31 CN CN202410019563.9A patent/CN117978806A/zh active Pending
- 2023-10-31 CN CN202311422618.2A patent/CN117155939B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111090502A (zh) * | 2018-10-24 | 2020-05-01 | 阿里巴巴集团控股有限公司 | 一种流数据任务调度方法和装置 |
CN111522639A (zh) * | 2020-04-16 | 2020-08-11 | 南京邮电大学 | Kubernetes集群架构系统下多维资源调度方法 |
US20210365290A1 (en) * | 2020-04-16 | 2021-11-25 | Nanjing University Of Posts And Telecommunications | Multidimensional resource scheduling method in kubernetes cluster architecture system |
CN116389484A (zh) * | 2023-04-26 | 2023-07-04 | 奥特酷智能科技(南京)有限公司 | 基于数据分发服务的跨Kubernetes集群网络互通系统及方法 |
CN116755855A (zh) * | 2023-06-05 | 2023-09-15 | 北京信息科技大学 | 一种基于Kubernetes集群的分布式容器调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117155939B (zh) | 2024-02-27 |
CN117155939A (zh) | 2023-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11700303B1 (en) | Distributed data analysis for streaming data sources | |
CN107241319B (zh) | 基于vpn的分布式网络爬虫系统及调度方法 | |
US7584292B2 (en) | Hierarchical system configuration method and integrated scheduling method to provide multimedia streaming service on two-level double cluster system | |
DE102004052270B4 (de) | Verarbeitungsvorrichtungs-Managementsystem | |
CN104468282B (zh) | 集群监控处理系统及方法 | |
CN107800565A (zh) | 巡检方法、装置、系统、计算机设备和存储介质 | |
CN101938504A (zh) | 集群服务器智能调度的方法及系统 | |
US8848522B2 (en) | Telecommunications system and server apparatus | |
US7996515B2 (en) | Network transaction discovery | |
CN106201754A (zh) | 任务信息分析方法及装置 | |
WO2022100146A1 (zh) | 互联网性能监控方法及系统 | |
CN114780214B (zh) | 任务处理方法、装置、系统及设备 | |
JPH0887473A (ja) | データ処理装置 | |
US9621438B2 (en) | Network traffic management | |
JPH08137810A (ja) | コンピュータネットワーク管理システム | |
CN105516317B (zh) | 一种用电信息多层级负载均摊高效采集方法 | |
CN117155939B (zh) | 一种实现跨集群资源调度的方法 | |
CN114466069B (zh) | 数据采集系统 | |
CN115883238A (zh) | 基于sdn的分布式负载均衡数据加密保存方法 | |
CN106341474B (zh) | 一种基于icn与sdn网络的资料管控中心及其内容管理方法 | |
CN112269660B (zh) | 一种海量数据处理并发任务自适应测控方法及系统 | |
Lin et al. | A workload-driven approach to dynamic data balancing in MongoDB | |
CN101207518A (zh) | 一种面向分布式资源节点的异步维护系统 | |
CN114448751A (zh) | 一种服务网络节点的动态分配方法及系统 | |
CN104915246A (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 |