CN117407120A - 一种容器调度方法、装置和设备 - Google Patents
一种容器调度方法、装置和设备 Download PDFInfo
- Publication number
- CN117407120A CN117407120A CN202311364245.8A CN202311364245A CN117407120A CN 117407120 A CN117407120 A CN 117407120A CN 202311364245 A CN202311364245 A CN 202311364245A CN 117407120 A CN117407120 A CN 117407120A
- Authority
- CN
- China
- Prior art keywords
- computing node
- computing
- service
- cpu
- candidate
- 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 65
- 230000035945 sensitivity Effects 0.000 claims abstract description 117
- 238000004364 calculation method Methods 0.000 claims abstract description 90
- 239000002071 nanotube Substances 0.000 claims description 36
- 238000012360 testing method Methods 0.000 claims description 26
- 238000010606 normalization Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供的容器调度方法,包括:针对当前待调度的目标容器,根据目标容器所在服务器集群的服务列表,确定目标容器的敏感度标签;从服务器集群的计算节点列表中,查找与敏感度标签匹配的候选计算节点集;针对候选计算节点集中的各个候选计算节点,根据候选计算节点的初始CPU算力值、候选计算节点的初始CPU资源数、以及候选计算节点已使用的已用CPU资源数,计算候选计算节点剩余的剩余CPU算力值;根据各个候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将目标容器调度至目标计算节点。本申请提供的容器调度方法、装置和设备,可有效提升服务的SLA能力。
Description
技术领域
本申请涉及容器调度技术领域,尤其涉及一种容器调度方法、装置和设备。
背景技术
随着容器化的普及,越来越多的网元系统、大数据系统、人工智能系统都开始容器化运行,相应的,容器调度技术也应运而生。
目前,常用的容器调度技术一般基于剩余CPU算力值进行容器调度,这样,不利于提高服务的服务级别协议SLA能力。
发明内容
有鉴于此,本申请提供一种容器调度方法、装置和设备,用以提升服务的SLA能力。
具体地,本申请是通过如下技术方案实现的:
本申请第一方面提供一种容器调度方法,所述方法包括:
针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签;其中,所述服务列表记录有所述服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组;其中,所述敏感度标签用于表征所述服务对CPU资源的敏感性;
从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集;其中,所述计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息;所述类别信息用于表征所述计算节点的CPU算力的强弱;
针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值;
根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。
本申请第二方面提供一种容器调度装置,所述装置包括确定模块、查找模块、计算模块和处理模块;其中,
所述确定模块,用于针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签;其中,所述服务列表记录有所述服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组;其中,所述敏感度标签用于表征所述服务对CPU资源的敏感性;
所述查找模块,用于从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集;其中,所述计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息;所述类别信息用于表征所述计算节点的CPU算力的强弱;
所述计算模块,用于针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值;
所述处理模块,用于根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。
本申请第三方面提供一种容器调度设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请第一方面任一项所述方法的步骤。
本申请提供的容器调度方法、装置和设备,针对当前待调度的目标容器,通过根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签,进而从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集,进一步的,针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值,从而根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。这样,通过预先确定服务列表和计算节点列表,根据服务列表确定出目标容器的敏感度标签,再根据敏感度标签从计算节点列表中查找出与所述敏感度标签匹配的候选计算节点集,最后结合候选计算节点的剩余CPU算力值来选择目标计算节点,这样,针对敏感度标签不同的容器,采取不同的调度策略,根据敏感度标签,针对性进行调度,可提高服务的SLA能力。
附图说明
图1为本申请提供的容器调度方法实施例一的流程图;
图2为本申请提供的容器调度方法实施例二的流程图;
图3为本申请提供的容器调度方法实施例三的流程图;
图4为本申请提供的容器调度方法实施例四的流程图;
图5为本申请提供的容器调度方法实施例五的流程图;
图6为本申请提供的容器调度装置所在容器调度设备的一种硬件结构图;
图7为本申请提供的容器调度装置实施例一的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请提供一种容器调度方法、装置和设备,用以提升容器服务整体的SLA能力。
本申请提供的容器调度方法、装置和设备,针对当前待调度的目标容器,通过根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签,进而从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集,进一步的,针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值,从而根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。这样,通过预先确定服务列表和计算节点列表,根据服务列表确定出目标容器的敏感度标签,再根据敏感度标签从计算节点列表中查找出与所述敏感度标签匹配的候选计算节点集,最后结合候选计算节点的剩余CPU算力值来选择目标计算节点,这样,针对敏感度标签不同的容器,采取不同的调度策略,根据敏感度标签,针对性进行调度,可提高服务的SLA能力。
下面给出具体的实施例,用以详细介绍本申请的技术方案。
图1为本申请提供的容器调度方法实施例一的流程图。请参照图1,所述方法包括:
S101、针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签;其中,所述服务列表记录有所述服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组;其中,所述敏感度标签用于表征所述服务对CPU资源的敏感性。
需要说明的是,本实施例提供的方法,会预先确定服务器集群的服务列表,和/或,预先确定服务器集群的计算节点列表。有关确定服务列表和计算节点列表的具体实现原理和实现过程将在下面的实施例中描述,此处不再赘述。
具体的,当前待调度的目标容器可以是服务器纳管的服务对应的容器组中待发布的任一个容器。具体的,目标容器所在服务器集群的服务列表记录有该服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组。需要说明的是,所述敏感度标签用于表征所述服务对CPU资源的敏感性。具体的,敏感度标签包括算力敏感和算力不敏感,其中,一个服务的敏感度标签为算力敏感时,表征该服务对CPU资源敏感。相应的,一个服务的敏感度标签为算力不敏感时,表征该服务对CPU资源不敏感。
例如,一实施例中,目标容器所在服务器集群的服务列表如表1所示:
表1目标容器所在服务器集群的服务列表
具体的,例如,一实施例中,当前待调度的目标容器为容器11,结合表1,容器11在容器组1中,容器组1对应的服务为服务1,服务1的敏感度标签为算力敏感,本步骤中,则根据服务列表,确定容器11的敏感度标签为算力敏感。
再例如,另一实施例中,当前待调度的目标容器为容器21,类似的,根据表1可知,容器21的敏感度标签为算力不敏感。
S102、从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集;其中,所述计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息;所述类别信息用于表征所述计算节点的CPU算力的强弱。
具体的,服务器集群的计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息。需要说明的是,计算节点的类别信息用于表征计算节点的CPU算力的强弱。其中,计算节点的类别信息包括高配和低配,在一个计算节点的类别信息为高配时,表征该计算节点的CPU算力较强,相应的,在一个计算节点的类别信息为低配时,表征该计算节点的CPU算力较弱。
例如,一实施例中,服务器集群的计算节点列表如表2所示:
表2服务器集群的计算节点列表
计算节点 | 计算节点的类别信息 | 计算节点初始的初始CPU算力值 |
计算节点A | 高配 | 600 |
计算节点B | 低配 | 200 |
计算节点C | 高配 | 700 |
计算节点D | 低配 | 100 |
具体的,从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集的过程,可以包括:
(1)在所述敏感度标签表征所述目标容器对CPU资源敏感时,将所述计算节点列表中的第一类计算节点构成的集合确定为所述候选计算节点集;其中,所述第一类计算节点的类别信息为高配。
结合上面的第一个例子,针对容器11,其敏感度标签为算力敏感,表征该容器11对CPU资源敏感,此时,将计算节点列表中类别信息为高配的第一类计算节点构成的集合确定为容器11的候选计算节点集。结合表2的例子,本步骤中,就将计算节点A、计算节点C构成的集合确定为容器11的候选计算节点集。
(2)在所述敏感度标签表征所述目标容器对CPU资源不敏感时,将所述计算节点列表中的第二类计算节点构成的集合确定为所述候选计算节点集;其中,所述第二类计算节点的类别信息为低配;所述第一类计算节点的CPU算力强于所述第二类计算节点的CPU算力。
结合上面的第二个例子,针对容器21,其敏感度标签为算力不敏感,表征该容器21对CPU资源不敏感,此时,将计算节点列表中类别信息为低配的第二类计算节点构成的集合确定为容器21的候选计算节点集。结合表2的例子,本步骤中,就将计算节点B、计算节点D构成的集合确定为容器21的候选计算节点集。
S103、针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值。
具体的,计算所述候选计算节点剩余的剩余CPU算力值的步骤,可以包括:
(1)根据所述初始CPU资源数和所述已用CPU资源数,计算剩余CPU资源数占所述初始资源数的占比。
具体实现时,先根据所述初始CPU资源数和所述已用CPU资源数,计算剩余CPU资源数,其中,剩余CPU资源数等于所述初始CPU资源数减去所述已用CPU资源数的差值;进一步的,根据剩余CPU资源数和初始资源数,计算剩余CPU资源数占初始资源数的占比;其中,剩余CPU资源数占初始资源数的占比等于剩余CPU资源数与初始资源数的比值。
需要说明的是,CPU资源数可以是计算节点的物理CPU的数量。每个物理CPU通常包括多个物理核心,每个物理核心都可以独立执行指令,本实施例中,CPU资源数可以是物理核心的数量。
结合上面第一个例子,例如,针对候选计算节点集中的计算节点A,该计算节点A的初始CPU资源数为32,已用CPU资源数为16,此时,该计算节点A的剩余CPU资源数为16,此时,确定计算节点A的剩余CPU资源数占初始资源数的占比为16/32。
(2)将所述初始CPU算力值和所述占比的乘积确定为所述剩余CPU算力值。
结合步骤(1)中的例子,例如,计算节点A的初始算力值为600,本步骤中,就确定计算节点A的剩余CPU算力值为300。
S104、根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。
结合上面的例子,针对容器11,例如,经过计算,确定计算节点C的剩余CPU算力值为350,计算节点A的剩余CPU算力值为300,此时,确定计算节点C的剩余CPU算力值最大,则计算节点C作为容器11的目标计算节点,本步骤中,就将所容器11调度至计算节点C。
本实施例提供的容器调度方法,针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签,进而从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集,进一步的,针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值,从而根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。这样,通过预先确定服务列表和计算节点列表,根据服务列表确定出目标容器的敏感度标签,再根据敏感度标签从计算节点列表中查找出与所述敏感度标签匹配的候选计算节点集,最后结合候选计算节点的剩余CPU算力值来选择目标计算节点,这样,针对敏感度标签不同的容器,采取不同的调度策略,根据敏感度标签,针对性进行调度,可提高服务的SLA能力。此外,本实施例提供的方法,将算力敏感的容器优先调度至高配计算节点上,将算力不敏感的容器优先调度至低配计算节点上,这样,可充分利用计算节点的CPU算力,进一步提升服务的SLA能力。
图2为本申请提供的容器调度方法实施例二的流程图。请参照图2,预先确定所述计算节点列表的过程,可以包括:
S201、针对所述服务器集群纳管的每个计算节点,采用预设测试工具测试所述计算节点的CPU算力值,得到所述计算节点的测试结果。
需要说明的是,预设测试工具是根据实际需要选择的,本实施例中不对其进行限定。其中,预设测试工具可以是以下测试工具中的任一测试工具:SuperPI、Unixbench、sysbench、stress-ng。
下面以测试工具为sysbench为例进行说明。
结合上面的例子,例如,服务器集群纳管的计算节点包括计算节点A、计算节点B、计算节点C和计算节点D,本步骤中,就采用sysbench对这四个计算节点进行测试,得到计算节点A的测试结果为A1,计算节点B的测试结果为B1,计算节点C的测试结果为C1,计算节点D的测试结果为D1。
S202、对各个所述计算节点的测试结果进行归一化处理,并将归一化处理后的归一化值确定为各个所述计算节点的初始CPU算力值。
具体的,可以按照如下公式对各个计算节点的测试结果进行归一化处理:
Si=Xi/X0*1000
其中:Si表示计算节点i的归一化值,Xi表示计算节点i的测试结果,X0表示基准计算节点的测试结果。
需要说明的是,基准计算节点是根据实际需求选取的,本实施例中不对其进行限定。例如,一实施例中,基准计算节点可以是服务器集群纳管的所有计算节点中的任一个计算节点。
结合上面的例子,例如,一实施例中,将计算节点A作为基准计算节点,此时,经计算,确定计算节点A的归一化值为A1/A1*1000,计算节点B的归一化值为B1/A1*1000,计算节点C的归一化值为C1/A1*1000,计算节点D的归一化值为D1/A1*1000。
S203、根据各个所述计算节点的初始CPU算力值,确定各个所述计算节点的类别信息。
需要说明的是,CPU算力值用于表征中央处理单元(Central ProcessingUnit)的计算性能,其可以用于衡量CPU的处理速度和性能。CPU算力值的大小可以表征CPU算力的大小,CPU算力值越大,CPU算力越大,反之则CPU算力越小。
具体实现时,计算节点的类别信息是根据该计算节点的初始CPU算力值和预设的CPU算力阈值的大小关系确定的。
具体的,可以将计算节点的初始CPU算力值与预设的CPU算力阈值进行比较,若计算节点的初始CPU算力值大于预设的CPU算力阈值,则确定计算节点的类别信息为高配,反之,则确定计算节点的类别信息为低配。
具体的,CPU算力阈值的具体值是根据实际需要设定的,本实施例中不对其进行限定。例如,一实施例中,CPU算力阈值为300。
结合上面的例子,CPU算力阈值为300,则计算节点A的类别信息为高配,计算节点B的计算节点的类别信息为低配,计算节点C的计算节点的类别信息为高配,计算节点D的计算节点的类别信息为低配。
S204、根据各个所述计算节点的初始CPU算力值和各个所述计算节点的类别信息,构建所述计算节点列表。
具体的,结合步骤S201至S203中的例子,服务器集群纳管的计算节点包括计算节点A、计算节点B、计算节点C和计算节点D,其中,经计算,确定计算节点A的初始CPU算力值为600,类别信息为高配,计算节点B的初始CPU算力值为200,类别信息为低配,计算节点C的初始CPU算力值为700,类别信息为高配,计算节点D的初始CPU算力值为100,类别信息为低配,此时,构建好的计算节点列表如表2所示。
本实施例提供的容器调度方法,针对所述服务器集群纳管的每个计算节点,通过采用预设测试工具测试所述计算节点的CPU算力值,得到所述计算节点的测试结果,进一步的,对各个所述计算节点的测试结果进行归一化处理,并将归一化处理后的归一化值确定为各个所述计算节点的初始CPU算力值,并根据各个所述计算节点的初始CPU算力值,确定各个所述计算节点的类别信息,再根据各个所述计算节点的初始CPU算力值和各个所述计算节点的类别信息,构建所述计算节点列表。这样,提供了一种计算节点列表构建方法,并在计算节点列中中引入高配和低配的概念,可方便后续实现容器的差异化调度。
图3为本申请提供的容器调度方法实施例三的流程图。请参照图3,预先确定所述服务列表的过程,包括:
S301、针对所述服务器集群纳管的每个服务中的每个第一类服务,根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签;其中,所述第一类服务为能够提供耗时数据的服务。
S302、针对所述服务器集群纳管的每个服务中的每个第二类服务,根据所述第二类服务在所述目标历史调度记录下实际使用的历史CPU资源数,确定所述第二类服务的敏感度标签;其中,所述第二类服务为不能够提供耗时数据的服务。
需要说明的是,目标历史调度记录可以为距当前时刻的时长最短的一次历史调度记录。
具体的,服务器集群纳管的服务包括能够提供耗时数据的第一类服务和不能够提供耗时数据的第二类服务,对于第一类服务,可以根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签,对于第二类服务,可以根据所述第二类服务在所述目标历史调度记录下实际使用的历史CPU资源数,确定所述第二类服务的敏感度标签。
有关如何根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签的过程将在下文会详细介绍,此处不再赘述。
具体的,根据所述第二类服务在所述目标历史调度记录下实际使用的历史CPU资源数,确定所述第二类服务的敏感度标签的具体实现原理,可以包括:
(1)在指定历史时间段内,按照预设周期,在每个周期到来时,确定第二类服务所对应的容器组中的各个容器实际使用的CPU资源数的平均值。
(2)将第二类服务所对应的容器组中的各个容器实际使用的CPU资源数的平均值与预设的预设判断值进行比较,确定所述第二类服务在当前周期内的子敏感度标签。
(3)根据所述第二类服务在所述历史指定时间段内的各个周期内的子敏感度标签,确定所述第二类服务的敏感度标签。
需要说明的是,指定历史时间段和预设周期都是根据实际需要确定的,本实施例中不对其进行限定。例如,一实施例中,指定历史时间段为目标历史调度记录中的过去24小时,预设周期为1小时,本实施例中,则针对指定历史时间段,每隔1小时去确定一次敏感度标签,换言之,指定历史时间段内有24个周期,在每个周期到来时,计算第二类服务所对应的容器组中的各个容器实际使用的CPU资源数的平均值并记录。
具体的,在某个周期中,若第二类服务所对应的容器组中的各个容器实际使用的CPU资源数的平均值大于所述预设判断值,则认为该第二类服务在当前周期内的子敏感度标签为算力敏感,反之,则认为该第二类服务在当前周期内的子敏感度标签为算力不敏感。
需要说明的是,预设判断值是根据实际需要设定的,本实施例中不对其进行限定。例如,一实施例中,预设判断值为0.1核。
具体的,步骤(3)中,在根据所述第二类服务在所述指定历史时间段内的各个周期内的子敏感度标签,确定所述第二类服务的敏感度标签时,可根据所有周期中,算力敏感的子敏感度标签的占比来确定第二类服务的敏感度标签。例如,在算力敏感的子敏感度标签的占比大于预设占比时,确定第二类服务的敏感度标签为算力敏感。其中,预设占比是根据实际需要设定的,本实施例中,不对此进行限定,例如,一实施例中,预设占比可以为70%。
S303、根据所述服务器集群纳管的每个服务、所述每个服务对应的容器组、以及所述每个服务的敏感度标签,构建所述服务列表。
具体的,例如,一实施例中,服务器集群纳管的服务有服务1和服务2,服务器对应容器组1,服务2对应容器组2,服务1的敏感度标签为算力敏感,服务2的敏感度标签为算力不敏感,此时,构建好的服务列表如表1所示。
本实施例提供的容器调度方法,针对所述服务器集群纳管的每个服务中的每个第一类服务,通过根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签,并针对所述服务器集群纳管的每个服务中的每个第二类服务,根据所述第二类服务在所述目标历史调度记录下实际使用的历史CPU资源数,确定所述第二类服务的敏感度标签,进而根据所述服务器集群纳管的每个服务、所述每个服务对应的容器组、以及所述每个服务的敏感度标签,构建所述服务列表。这样,提供了一种服务列表构建方法,且在构建服务列表时,引入算力敏感和算力不敏感的概念,并结合服务在目标历史调度记录下的耗时数据或在目标历史调度记录下实际使用的历史CPU资源数确认服务的敏感度标签,进而构建服务列表,这样,可方便后续实现容器的差异化调度。
图4为本申请提供的容器调度方法实施例四的流程图。请参照图4,根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签,包括:
S401、根据所述目标历史调度记录,确定所述第一类服务对应的容器组中的各个容器所在的各个历史计算节点。
具体的,第一类服务对应的容器组中的各个容器所在的历史计算节点指的是该容器在目标历史调度记录中被调度至的计算节点。
S402、在所述各个历史计算节点包含第一类历史计算节点和第二类历史计算节点时,在指定历史时间段内,按照预设周期,在每个周期到来时,计算所述第一类历史计算节点上的容器在当前周期的第一平均耗时、以及所述第二类历史计算节点上的容器在当前周期的第二平均耗时;其中,所述第一类历史计算节点的类别信息为高配;所述第二类历史计算节点的类别信息为低配。
需要说明的是,第一类服务对应的容器组中的各个容器所在的各个历史计算节点包含第一类历史计算节点和第二类历史计算节点时指的是第一类服务对应的容器组中的各个容器中的部分容器在第一类历史计算节点上,剩余容器在第二类历史计算节点上。
有关指定历史时间段和预设周期的具体介绍可以参见前面的描述,此处不再赘述。
结合表1和表2所示的例子,例如,在一种可能的实现方式中,在目标历史调度记录中,例如,针对服务2,容器21在计算节点A上,容器22在计算节点B上,容器23在计算节点C上。此时,服务2对应的容器组中的容器21和容器23在高配计算节点上(即第一类历史计算节点),服务2对应的容器组中的容器22在低配计算节点上(即第二类历史计算节点)。本步骤中,在指定历史时间段内,按照预设周期,在每个周期到来时,就计算所述计算节点A和计算节点C上的容器在当前周期的第一平均耗时、以及计算节点B上的容器在当前周期的第二平均耗时。
S403、在所述第一平均耗时小于所述第二平均耗时时,确定所述第一类服务在当前周期的子敏感度标签为算力敏感,否则确定所述第一类服务在当前周期的子敏感度标签为算力不敏感。
例如,一实施例中,一周期中,第一平均耗时为100ms,第二平均耗时为330ms,此时确定所述第一类服务在当前周期的子敏感度标签为算力敏感。
例如,另一实施例中,一周期中,第一平均耗时为200ms,第二平均耗时为150ms,此时确定所述第一类服务在当前周期的子敏感度标签为算力不敏感。
S404、根据所述第一类服务在所述历史指定时间段内的各个周期内的子敏感度标签,确定所述第一类服务的敏感度标签。
具体实现时,可根据所有周期中,算力敏感的子敏感度标签的占比来确定第一类服务的敏感度标签。例如,在算力敏感的子敏感度标签的占比大于预设占比时,确定第一类服务的敏感度标签为算力敏感。其中,预设占比是根据实际需要设定的,本实施例中,不对此进行限定,例如,一实施例中,预设占比可以为70%。
例如,一实施例中,历史指定时间段为24小时,预设周期为1小时,计算出的24个子敏感度标签中,有18个子敏感度标签为算力敏感,6个子敏感度标签为算力不敏感,此时,确定该第一类服务的敏感度标签为算力敏感。
本实施例提供的容器调度方法,提供了一种确定敏感度标签的方法,基于该方法,可确定服务的敏感度标签,以基于敏感度标签进行容器调度。
图5为本申请提供的容器调度方法实施例五的流程图。请参照图5,本实施例提供的方法,在所述各个历史计算节点仅包含所述第一类历史计算节点或所述第二类历史计算节点时,所述方法还包括:
S501、在所述指定历史时间段内,按照预设周期,在每个周期到来时,计算各个所述历史计算节点的剩余CPU算力值的平均CPU算力值。
具体实现时,可以先计算各个历史计算节点的剩余CPU算力值,进而计算基于剩余CPU算力值的平均值,并将计算得到的平均值作为平均CPU算力值。
具体的,结合表1和表2所示的例子,例如,在一种可能的实现方式中,在目标历史调度记录中,例如,针对服务1,容器11在计算节点B上,容器12均在计算节点D上,此时,容器11和容器12均在低配计算节点上,本步骤中,就计算出计算节点B的剩余CPU算力值和计算节点D的剩余CPU算力值的平均CPU算力值。
S502、根据各个所述历史计算节点的剩余CPU算力值与所述平均CPU算力值的大小关系,将各个所述历史计算节点划分为第三类历史计算节点和第四类历史计算节点。
具体的,针对每个历史计算节点,在该历史计算节点的剩余CPU算力值大于平均CPU算力值时,则将该历史计算节点划分为第三类历史计算节点;而在该历史计算节点的剩余CPU算力值小于或者等于平均CPU算力值时,将该历史计算节点划分为第四类历史计算节点。其中,第三类历史计算节点为CPU算力较强的计算节点,第四类历史计算节点为CPU算力较弱的计算节点,换言之,第三类历史计算节点的CPU算力高于第四类历史计算节点的CPU算力。
结合上面的例子,例如,计算节点B的剩余CPU算力值为100,计算节点D的剩余CPU算力值为60,计算节点B的剩余CPU算力值和计算节点D的剩余CPU算力值的平均CPU算力值为80,此时,计算节点B就是第三类历史计算节点,计算节点D就是第四类历史计算节点。
S503、计算所述第三历史计算节点上的容器在当前周期的第三平均耗时、以及所述第四历史计算节点上的容器在当前周期的第四平均耗时。
S504、在所述第三平均耗时小于所述第四平均耗时时,确定所述第一类服务在当前周期内的子敏感度标签为算力敏感,否则确定所述第一类服务在当前周期内的子敏感度标签为算力不敏感。
S505、根据所述第一类服务在各个周期内的子敏感度标签,确定所述第一类服务的敏感度标签。
有关步骤S503~S505的相关介绍参见前面实施例中的描述,此处不再赘述。
本实施例提供的容器调度方法,提供了一种确定敏感度标签的方法,基于该方法,可确定服务的敏感度标签,以基于敏感度标签进行容器调度。
与前述一种容器调度方法的实施例相对应,本申请还提供了一种容器调度装置的实施例。
本申请一种容器调度装置的实施例可以应用在容器调度设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在容器调度设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本申请提供的容器调度装置所在容器调度设备的一种硬件结构图,除了图6所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的容器调度设备通常根据该容器调度装置的实际功能,还可以包括其他硬件,对此不再赘述。
图7为本申请提供的容器调度装置实施例一的结构示意图。请参考图7,所述装置包括确定模块710、查找模块720、计算模块730和处理模块740;其中,
所述确定模块710,用于针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签;其中,所述服务列表记录有所述服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组;其中,所述敏感度标签用于表征所述服务对CPU资源的敏感性;
所述查找模块720,用于从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集;其中,所述计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息;所述类别信息用于表征所述计算节点的CPU算力的强弱;
所述计算模块730,用于针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值;
所述处理模块740,用于根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。
本实施例提供的装置,可用于执行图1所示方法实施例的步骤,具体实现原理和实现过程可以参见前面实施例中的描述,此处不再赘述。
可选的,所述查找模块720,具体用于在所述敏感度标签表征所述目标容器对CPU资源敏感时,将所述计算节点列表中的第一类计算节点构成的集合确定为所述候选计算节点集;其中,所述第一类计算节点的类别信息为高配;
所述查找模块720,具体用于在所述敏感度标签表征所述目标容器对CPU资源不敏感时,将所述计算节点列表中的第二类计算节点构成的集合确定为所述候选计算节点集;其中,所述第二类计算节点的类别信息为低配;所述第一类计算节点的CPU算力强于所述第二类计算节点的CPU算力。
可选的,所述确定模块710,还用于预先确定所述服务列表,和/或,预先确定所述计算节点列表。
可选的,所述确定模块710,具体用于针对所述服务器集群纳管的每个服务中的每个第一类服务,根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签;其中,所述第一类服务为能够提供耗时数据的服务;
所述确定模块710,具体用于针对所述服务器集群纳管的每个服务中的每个第二类服务,根据所述第二类服务在所述目标历史调度记录下实际使用的历史CPU资源数,确定所述第二类服务的敏感度标签;其中,所述第二类服务为不能够提供耗时数据的服务;
所述确定模块710,具体用于根据所述服务器集群纳管的每个服务、所述每个服务对应的容器组、以及所述每个服务的敏感度标签,构建所述服务列表。
可选的,所述确定模块710,具体用于根据所述目标历史调度记录,确定所述第一类服务对应的容器组中的各个容器所在的各个历史计算节点;
所述确定模块710,具体用于在所述各个历史计算节点包含第一类历史计算节点和第二类历史计算节点时,在指定历史时间段内,按照预设周期,在每个周期到来时,计算所述第一类历史计算节点上的容器在当前周期的第一平均耗时、以及所述第二类历史计算节点上的容器在当前周期的第二平均耗时;其中,所述第一类历史计算节点的类别信息为高配;所述第二类计算节点的类别信息为低配;
所述确定模块710,具体用于在所述第一平均耗时小于所述第二平均耗时时,确定所述第一类服务在当前周期的子敏感度标签为算力敏感,否则确定所述第一类服务在当前周期的子敏感度标签为算力不敏感;
所述确定模块710,具体用于根据所述第一类服务在所述历史指定时间段内的各个周期内的子敏感度标签,确定所述第一类服务的敏感度标签。
可选的,所述确定模块710,具体用于在所述各个历史计算节点仅包含所述第一类历史计算节点或所述第二类历史计算节点时,在所述指定历史时间段内,按照预设周期,在每个周期到来时,计算各个所述历史计算节点的剩余CPU算力值的平均CPU算力值;
所述确定模块710,具体用于根据各个所述历史计算节点的剩余CPU算力值与所述平均CPU算力值的大小关系,将各个所述历史计算节点划分为第三类历史计算节点和第四类历史计算节点;
所述确定模块710,具体还用于计算所述第三历史计算节点上的容器在当前周期的第三平均耗时、以及所述第四历史计算节点上的容器在当前周期的第四平均耗时;
所述确定模块710,具体还用于在所述第三平均耗时小于所述第四平均耗时时,确定所述第一类服务在当前周期内的子敏感度标签为算力敏感,否则确定所述第一类服务在当前周期内的子敏感度标签为算力不敏感;
所述确定模块710,具体还用于根据所述第一类服务在各个周期内的子敏感度标签,确定所述第一类服务的敏感度标签。
可选的,所述计算模块730,具体用于根据所述初始CPU资源数和所述已用CPU资源数,计算所述已用资源数占所述初始资源数的占比并将所述初始CPU算力值和所述占比的乘积确定为所述剩余CPU算力值。
可选的,所述确定模块710,具体用于针对所述服务器集群纳管的每个计算节点,采用预设测试工具测试所述计算节点的CPU算力值,得到所述计算节点的测试结果;
所述确定模块710,具体用于对各个所述计算节点的测试结果进行归一化处理,并将归一化处理后的归一化值确定为各个所述计算节点的初始CPU算力值;
所述确定模块710,具体用于根据各个所述计算节点的初始CPU算力值,确定各个所述计算节点的类别信息;
所述确定模块710,具体用于根据各个所述计算节点的初始CPU算力值和各个所述计算节点的类别信息,构建所述计算节点列表。
请继续参照图6,本申请还提供一种容器调度设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请第一方面任一项所述方法的步骤。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种容器调度方法,其特征在于,所述方法包括:
针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签;其中,所述服务列表记录有所述服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组;其中,所述敏感度标签用于表征所述服务对CPU资源的敏感性;
从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集;其中,所述计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息;所述类别信息用于表征所述计算节点的CPU算力的强弱;
针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值;
根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。
2.根据权利要求1所述的方法,其特征在于,所述从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集,包括:
在所述敏感度标签表征所述目标容器对CPU资源敏感时,将所述计算节点列表中的第一类计算节点构成的集合确定为所述候选计算节点集;其中,所述第一类计算节点的类别信息为高配;
在所述敏感度标签表征所述目标容器对CPU资源不敏感时,将所述计算节点列表中的第二类计算节点构成的集合确定为所述候选计算节点集;其中,所述第二类计算节点的类别信息为低配;所述第一类计算节点的CPU算力强于所述第二类计算节点的CPU算力。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
预先确定所述服务列表,和/或,预先确定所述计算节点列表。
4.根据权利要求3所述的方法,其特征在于,预先确定所述服务列表的过程,包括:
针对所述服务器集群纳管的每个服务中的每个第一类服务,根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签;其中,所述第一类服务为能够提供耗时数据的服务;
针对所述服务器集群纳管的每个服务中的每个第二类服务,根据所述第二类服务在所述目标历史调度记录下实际使用的历史CPU资源数,确定所述第二类服务的敏感度标签;其中,所述第二类服务为不能够提供耗时数据的服务;
根据所述服务器集群纳管的每个服务、所述每个服务对应的容器组、以及所述每个服务的敏感度标签,构建所述服务列表。
5.根据权利要求4所述的方法,其特征在于,根据所述第一类服务在目标历史调度记录下的耗时数据,确定所述第一类服务的敏感度标签,包括:
根据所述目标历史调度记录,确定所述第一类服务对应的容器组中的各个容器所在的各个历史计算节点;
在所述各个历史计算节点包含第一类历史计算节点和第二类历史计算节点时,在指定历史时间段内,按照预设周期,在每个周期到来时,计算所述第一类历史计算节点上的容器在当前周期的第一平均耗时、以及所述第二类历史计算节点上的容器在当前周期的第二平均耗时;其中,所述第一类历史计算节点的类别信息为高配;所述第二类历史计算节点的类别信息为低配;
在所述第一平均耗时小于所述第二平均耗时时,确定所述第一类服务在当前周期的子敏感度标签为算力敏感,否则确定所述第一类服务在当前周期的子敏感度标签为算力不敏感;
根据所述第一类服务在所述历史指定时间段内的各个周期内的子敏感度标签,确定所述第一类服务的敏感度标签。
6.根据权利要求5所述的方法,其特征在于,在所述各个历史计算节点仅包含所述第一类历史计算节点或所述第二类历史计算节点时,所述方法还包括:
在所述指定历史时间段内,按照预设周期,在每个周期到来时,计算各个所述历史计算节点的剩余CPU算力值的平均CPU算力值;
根据各个所述历史计算节点的剩余CPU算力值与所述平均CPU算力值的大小关系,将各个所述历史计算节点划分为第三类历史计算节点和第四类历史计算节点;
计算所述第三历史计算节点上的容器在当前周期的第三平均耗时、以及所述第四历史计算节点上的容器在当前周期的第四平均耗时;
在所述第三平均耗时小于所述第四平均耗时时,确定所述第一类服务在当前周期内的子敏感度标签为算力敏感,否则确定所述第一类服务在当前周期内的子敏感度标签为算力不敏感;
根据所述第一类服务在各个周期内的子敏感度标签,确定所述第一类服务的敏感度标签。
7.根据权利要求1所述的方法,其特征在于,所述根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值,包括:
根据所述初始CPU资源数和所述已用CPU资源数,计算所述已用资源数占所述初始资源数的占比;
将所述初始CPU算力值和所述占比的乘积确定为所述剩余CPU算力值。
8.根据权利要求3所述的方法,其特征在于,预先确定所述计算节点列表的过程,包括:
针对所述服务器集群纳管的每个计算节点,采用预设测试工具测试所述计算节点的CPU算力值,得到所述计算节点的测试结果;
对各个所述计算节点的测试结果进行归一化处理,并将归一化处理后的归一化值确定为各个所述计算节点的初始CPU算力值;
根据各个所述计算节点的初始CPU算力值,确定各个所述计算节点的类别信息;
根据各个所述计算节点的初始CPU算力值和各个所述计算节点的类别信息,构建所述计算节点列表。
9.一种容器调度装置,其特征在于,所述装置包括确定模块、查找模块、计算模块和处理模块;其中,
所述确定模块,用于针对当前待调度的目标容器,根据所述目标容器所在服务器集群的服务列表,确定所述目标容器的敏感度标签;其中,所述服务列表记录有所述服务器集群纳管的服务、所述服务的敏感度标签和所述服务对应的容器组;其中,所述敏感度标签用于表征所述服务对CPU资源的敏感性;
所述查找模块,用于从所述服务器集群的计算节点列表中,查找与所述敏感度标签匹配的候选计算节点集;其中,所述计算节点列表记录有所述服务器集群纳管的计算节点、所述计算节点初始的初始CPU算力值和所述计算节点的类别信息;所述类别信息用于表征所述计算节点的CPU算力的强弱;
所述计算模块,用于针对所述候选计算节点集中的各个候选计算节点,根据所述候选计算节点的初始CPU算力值、所述候选计算节点的初始CPU资源数、以及所述候选计算节点已使用的已用CPU资源数,计算所述候选计算节点剩余的剩余CPU算力值;
所述处理模块,用于根据各个所述候选计算节点剩余的剩余CPU算力值,选择剩余CPU算力值最大的候选计算节点作为目标计算节点,并将所述目标容器调度至所述目标计算节点。
10.一种容器调度设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311364245.8A CN117407120A (zh) | 2023-10-20 | 2023-10-20 | 一种容器调度方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311364245.8A CN117407120A (zh) | 2023-10-20 | 2023-10-20 | 一种容器调度方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117407120A true CN117407120A (zh) | 2024-01-16 |
Family
ID=89486521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311364245.8A Pending CN117407120A (zh) | 2023-10-20 | 2023-10-20 | 一种容器调度方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117407120A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118034855A (zh) * | 2024-02-27 | 2024-05-14 | 中国通信建设集团设计院有限公司 | 一种算力资源的管理调度方法及系统 |
-
2023
- 2023-10-20 CN CN202311364245.8A patent/CN117407120A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118034855A (zh) * | 2024-02-27 | 2024-05-14 | 中国通信建设集团设计院有限公司 | 一种算力资源的管理调度方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019218475A1 (zh) | 异常行为对象的识别方法、装置、终端设备及介质 | |
CN110210731A (zh) | 提醒任务分配方法、装置、计算机设备和存储介质 | |
CN103324620B (zh) | 一种对标注结果进行纠偏的方法和装置 | |
EP2613212B1 (en) | Diagnostic algorithm parameter optimization | |
CN106919957B (zh) | 处理数据的方法及装置 | |
CN109636212B (zh) | 作业实际运行时间的预测方法 | |
CN107909234A (zh) | 工作流数据的时限提醒方法、处理方法及其装置、设备 | |
CN111831894B (zh) | 一种信息匹配方法及装置 | |
CN117407120A (zh) | 一种容器调度方法、装置和设备 | |
CN111179055A (zh) | 授信额度调整方法、装置和电子设备 | |
CN112101156B (zh) | 一种目标识别的方法、装置和电子设备 | |
CN111897702B (zh) | 用于业务系统的预警处理方法和装置、计算机系统和介质 | |
US10706049B2 (en) | Method and apparatus for querying nondeterministic graph | |
CN111754261A (zh) | 一种车辆出租意愿的评估方法、装置及终端设备 | |
CN116933035A (zh) | 数据异常检测方法、装置、计算机设备和存储介质 | |
CN115238837A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN116700955A (zh) | 作业处理方法、装置、计算机设备及可读存储介质 | |
CN109886738A (zh) | 一种智能展会用户预测方法及设备 | |
US11961046B2 (en) | Automatic selection of request handler using trained classification model | |
GB2569872A (en) | Instance usage facilitating system | |
CN115905654A (zh) | 业务数据的处理方法、装置、设备、存储介质和程序产品 | |
CN115168509A (zh) | 风控数据的处理方法及装置、存储介质、计算机设备 | |
CN112862527B (zh) | 用户类型确定方法、装置、设备及存储介质 | |
CN113159926A (zh) | 贷款业务的还款日期确定方法及装置 | |
CN106611100A (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 |