CN109561024A - 容器调度处理方法及装置 - Google Patents

容器调度处理方法及装置 Download PDF

Info

Publication number
CN109561024A
CN109561024A CN201710889408.2A CN201710889408A CN109561024A CN 109561024 A CN109561024 A CN 109561024A CN 201710889408 A CN201710889408 A CN 201710889408A CN 109561024 A CN109561024 A CN 109561024A
Authority
CN
China
Prior art keywords
resource
container
numerical value
contracting
idling
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.)
Granted
Application number
CN201710889408.2A
Other languages
English (en)
Other versions
CN109561024B (zh
Inventor
董劲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing ZTE New Software Co Ltd
Original Assignee
Nanjing ZTE New Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing ZTE New Software Co Ltd filed Critical Nanjing ZTE New Software Co Ltd
Priority to CN201710889408.2A priority Critical patent/CN109561024B/zh
Publication of CN109561024A publication Critical patent/CN109561024A/zh
Application granted granted Critical
Publication of CN109561024B publication Critical patent/CN109561024B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/525Queue scheduling by attributing bandwidth to queues by redistribution of residual bandwidth

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种容器调度处理方法及装置,其中,该方法包括:接收新建容器实例的请求消息;根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值;在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例,解决了相关技术中PaaS平台进行容器调度时未能充分利用空闲资源量介于request与limit之间计算节点的问题,实现了在空闲资源量介于request与limit之间的计算节点上创建容器实例。

Description

容器调度处理方法及装置
技术领域
本发明涉及云计算领域,具体而言,涉及一种容器调度处理方法及装置。
背景技术
在平台即服务PaaS(Platform as a Service)平台中,部署docker容器时有对资源(CPU、RAM)的要求,一般包括request和limit两类值,即最低所需资源量和最大资源使用限制量。为了保证docker容器的正常运行,PaaS平台在对其进行调度时,常常选择空闲资源大于或者等于limit的计算节点,这对于那些空闲资源量介于最小资源数值request与最大资源数值limit之间的计算节点来说是一种浪费,request是容器实例所需最小资源数值,即为运行时所需最小资源数值,limit是系统最大分配给容器实例的资源数值,也即是容器实例能够使用的最大资源数值,为系统限制最大可使用资源数值。
针对相关技术中PaaS平台进行容器调度时未能充分利用空闲资源量介于request与limit之间计算节点的问题,尚未提出解决方案。
发明内容
本发明实施例提供了一种容器调度处理方法及装置,以至少解决相关技术中PaaS平台进行容器调度时未能充分利用空闲资源量介于request与limit之间计算节点的问题。
根据本发明的一个实施例,提供了一种容器调度处理方法,包括:
接收新建容器实例的请求消息;
根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
可选地,在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源包括:
获取预先设置的预测缩记录中容器应用的名称;
根据所述容器应用的名称查询所述容器应用的所有容器实例当前已使用资源的数据和所述容器实例所在计算节点当前的空闲资源量;
在所述已使用资源的数据与所述空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,销毁所述容器应用的一个容器实例。
可选地,所述方法还包括:
在容器实例已使用资源的数据和所述容器实例所在计算节点的空闲资源量大于所述最大资源数值的计算节点为多个的情况下,从多个计算节点中随机选取一个计算节点;
销毁选取的计算节点下容器应用的一个容器实例。
可选地,在获取预先设置的预测缩记录中容器应用的名称之前,所述方法还包括:
根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据;
判断所述数据的变化情况;
在所述数据为持续增高的情况下,将所述容器应用设置为预测弹;
在所述数据为持续降低的情况下,将所述容器应用设置为预测缩。
可选地,在根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据之前,所述方法还包括:
周期性地采集容器实例已使用资源量;
根据获取的容器实例的已使用资源量计算每个容器应用已使用资源的平均资源量;
将所述平均资源量与预先设置的容器应用的资源弹缩阀值进行对比,其中,所述资源弹缩阀值包括资源弹阀值和资源缩阀值;
在所述平均资源量小于所述资源缩阀值的情况下,对所述容器应用进行缩操作,同时清除所述预测缩记录中的所述容器应用的预测缩信息,并保存所述缩操作日期和时间;
在所述平均资源量大于所述资源缩阀值的情况下,对容器应用进行弹操作,同时清除所述预测弹记录中的所述容器应用的预测弹信息,保存所述弹操作日期和时间。
可选地,对所述容器应用进行缩操作包括:
从所述容器应用中随机选择容器实例进行销毁;或者,
从所述容器应用中指定容器实例进行销毁。
可选地,对容器应用进行弹操作包括:
为所述容器应用新建容器实例。
根据本发明的另一个实施例,还提供了一种容器调度处理装置,包括:
接收模块,用于接收新建容器实例的请求消息;
第一获取模块,用于根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
释放模块,用于在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
创建模块,用于在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
可选地,所述释放模块,还用于
获取预先设置的预测缩记录中容器应用的名称;
根据所述容器应用的名称查询所述容器应用的所有容器实例当前已使用资源的数据和所述容器实例所在计算节点当前的空闲资源量;
在所述已使用资源的数据与所述空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,销毁所述容器应用的一个容器实例。
可选地,所述装置还包括:
选取模块,用于在容器实例已使用资源的数据和所述容器实例所在计算节点的空闲资源量大于所述最大资源数值的计算节点为多个的情况下,从多个计算节点中随机选取一个计算节点;
销毁模块,用于销毁选取的计算节点下容器应用的一个容器实例。
可选地,所述装置还包括:
第二获取模块,用于根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据;
判断模块,用于判断所述数据的变化情况;
设置模块,用于在所述数据为持续增高的情况下,将所述容器应用设置为预测弹;在所述数据为持续降低的情况下,将所述容器应用设置为预测缩。
可选地,所述装置还包括:
采集模块,用于周期性地采集容器实例已使用资源量;
计算模块,用于根据获取的容器实例的已使用资源量计算每个容器应用已使用资源的平均资源量;
对比模块,用于将所述平均资源量与预先设置的容器应用的资源弹缩阀值进行对比,其中,所述资源弹缩阀值包括资源弹阀值和资源缩阀值;
缩操作模块,用于在所述平均资源量小于所述资源缩阀值的情况下,对所述容器应用进行缩操作,同时清除所述预测缩记录中的所述容器应用的预测缩信息,并保存所述缩操作日期和时间;
弹操作模块,用于在所述平均资源量大于所述资源缩阀值的情况下,对容器应用进行弹操作,同时清除所述预测弹记录中的所述容器应用的预测弹信息,保存所述弹操作日期和时间。
可选地,所述缩操作模块,还用于
从所述容器应用中随机选择容器实例进行销毁;或者,
从所述容器应用中指定容器实例进行销毁。
可选地,所述弹操作模块,还用于
为所述容器应用新建容器实例。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行上述任一项所述的方法。
根据本发明的又一个实施例,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述任一项所述的方法。
通过本发明,接收新建容器实例的请求消息;根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值;在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例,解决了相关技术中PaaS平台进行容器调度时未能充分利用空闲资源量介于request与limit之间计算节点的问题,实现了在空闲资源量介于request与limit之间的计算节点上创建容器实例。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的容器调度处理方法的移动终端的硬件结构框图;
图2是根据本发明实施例的容器调度处理方法的流程图;
图3是根据本发明实施例的基于弹缩预测的docker容器调度的装置的框图;
图4是根据本发明实施例的数据采集的流程图;
图5是根据本发明实施例的应用部署的流程图;
图6是根据本发明实施例的弹缩策略的流程图;
图7是根据本发明实施例的新建容器实例的流程图;
图8是根据本发明实施例的销毁容器实例的流程图;
图9是根据本发明实施例的容器调度处理装置的框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在计算机终端(以下简称移动终端)或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的容器调度处理方法的移动终端的硬件结构框图,如图1所示,移动终端10可以包括一个或两个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,移动终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的数据传输方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者两个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
基于上述的移动终端,本发明实施例,提供了一种容器调度处理方法,图2是根据本发明实施例的容器调度处理方法的流程图,如图2所示,包括:
步骤S202,接收新建容器实例的请求消息;
步骤S204,根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
步骤S206,在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
步骤S208,在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
通过上述步骤,接收新建容器实例的请求消息;根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值;在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例,解决了相关技术中PaaS平台进行容器调度时未能充分利用空闲资源量介于request与limit之间计算节点的问题,实现了在空闲资源量介于request与limit之间的计算节点上创建容器实例。
可选地,在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源包括:获取预先设置的预测缩记录中容器应用的名称;根据所述容器应用的名称查询所述容器应用的所有容器实例当前已使用资源的数据和所述容器实例所在计算节点当前的空闲资源量;在所述已使用资源的数据与所述空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,销毁所述容器应用的一个容器实例。
可选地,所述方法还包括:在容器实例已使用资源的数据和所述容器实例所在计算节点的空闲资源量大于所述最大资源数值的计算节点为多个的情况下,从多个计算节点中随机选取一个计算节点;
销毁选取的计算节点下容器应用的一个容器实例。
可选地,在获取预先设置的预测缩记录中容器应用的名称之前,所述方法还包括:根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据;判断所述数据的变化情况;在所述数据为持续增高的情况下,将所述容器应用设置为预测弹;在所述数据为持续降低的情况下,将所述容器应用设置为预测缩。
可选地,在根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据之前,所述方法还包括:周期性地采集容器实例已使用资源量;根据获取的容器实例的已使用资源量计算每个容器应用已使用资源的平均资源量;将所述平均资源量与预先设置的容器应用的资源弹缩阀值进行对比,其中,所述资源弹缩阀值包括资源弹阀值和资源缩阀值;在所述平均资源量小于所述资源缩阀值的情况下,对所述容器应用进行缩操作,同时清除所述预测缩记录中的所述容器应用的预测缩信息,并保存所述缩操作日期和时间;在所述平均资源量大于所述资源缩阀值的情况下,对容器应用进行弹操作,同时清除所述预测弹记录中的所述容器应用的预测弹信息,保存所述弹操作日期和时间。
可选地,对所述容器应用进行缩操作包括:从所述容器应用中随机选择容器实例进行销毁;或者,从所述容器应用中指定容器实例进行销毁。
可选地,对容器应用进行弹操作包括:为所述容器应用新建容器实例。
本发明实施例的一方面,提供了一种基于弹缩预测的docker容器调度的装置,图3是根据本发明实施例的基于弹缩预测的docker容器调度的装置的框图,如图3所示,由以下几部分组成:调度模块32、数据采集模块34、弹缩策略模块36和部署策略模块38,下面对各个模块进行详细说明。
调度模块32,该模块的功能有两个,一是在众多计算节点中查找合适的节点,在上面新建docker容器实例;另一个是销毁正在运行的docker容器实例,可以是指定的docker容器实例,也可以是随机选取的docker容器实例;
数据采集模块34,该模块既采集docker容器运行中对资源的使用数据——包括CPU和RAM值,这些数据是docker容器弹缩的依据;也采集计算节点空闲资源数据,这些数据是docker容器调度的依据;数据采集行为是周期性的,所有采集到的数据都被记录。
弹缩策略模块36,该模块记录docker应用部署时定义的弹缩策略,当docker容器运行过程中使用的CPU和/或者RAM高于策略中设定的上限值时,则触发调度模块32新建docker容器实例——即是“弹”;当docker容器运行过程中使用的CPU和/或者RAM低于策略中设定的下限时,则触发调度模块32销毁一些docker容器实例——即是“缩”;当docker容器运行过程中使用的CPU和/或者RAM持续增高,并且按此增速在一定时间内将触发“弹”操作时,将其置为“预测弹”;当docker容器运行过程中使用的CPU和/或者RAM持续降低,并且按此降速在一定时间内将触发“缩”操作时,将其置为“预测缩”。
部署策略模块38,该模块记录docker应用对资源(CPU、RAM)的需求数据,包括最小资源值和最大资源限制值,即request和limit。这些数据是docker容器调度的基础依据。在部署最后阶段,该模块触发调度模块32为容器应用新建首个容器实例。
本发明实施例的另一方面,还提供了一种基于弹缩预测的PaaS平台docker容器调度的方法,包括:
第一步,数据采集,可以包括下列步骤:
PaaS平台启动后,数据采集模块34即开始周期性地采集docker容器实例已使用资源(CPU、RAM)的数据值,并且持久化保存。图4是根据本发明实施例的数据采集的流程图,如图4所示,包括:
步骤S401,判断是否到了采集周期,在判断结果为是的情况下,执行步骤S402,否则进入等待;
步骤S402,采集容器实例已使用资源量;
步骤S403,持久化保存采集的数据;
步骤S404,判断是否已处理所有实例,在判断结果为是的情况下,执行步骤S405,在判断结果为否的情况下,执行步骤S402;
步骤S405,采集计算节点的空闲资源量;
步骤S406,判断是否已处理所有计算节点,在判断结果为是的情况下,执行步骤S407,在判断结果为否的情况下,执行步骤S405;
步骤S407,判断是否结束,在判断结果为是的情况下,结束,在判断结果为否的情况下,进入等待。
数据采集模块34记录的信息包括容器应用名称、其下属容器实例名称(一个或多个)、容器实例所在计算节点名称、容器实例已使用资源数值、采集日期和时间。
PaaS平台启动后,数据采集模块34即开始周期性采集计算节点上空闲资源(CPU、RAM)数据值,仅保存最近一次采集到的数据,待用。
第二步,docker应用部署,图5是根据本发明实施例的应用部署的流程图,如图5所示,可以包括下列步骤:
步骤S501,记录容器应用的弹缩阀值,记录为该容器应用设定的资源(CPU、RAM)弹缩阀值到弹缩策略模块36,即缩阀值和弹阀值。弹缩策略模块36将记录PaaS中所有容器应用的资源弹缩阀值,形成容器应用资源弹缩阀值集合。
步骤S502,记录容器应用的资源需求值,记录为该容器应用设定的资源(CPU、RAM)需求数据值到部署策略模块38,包括运行时所需最小资源数值和系统限制最大可使用资源数值,即request与limit。部署策略模块38记录PaaS中所有容器应用的资源需求设定值,形成容器应用资源需求数据集合。
步骤S503,触发调度模块新建收个容器实例,部署策略模块38触发调度模块32,为该应用新建首个docker容器实例。
第三步,弹缩处理,图6是根据本发明实施例的弹缩策略的流程图,如图6所示,可以包括下列步骤:
步骤S601,从部署策略模块38获取容器应用数据集合;
步骤S602,遍历上述集合,从中逐一取出容器应用名称;
步骤S603,根据上述应用名称,从数据采集模块34获取其下属的所有docker容器实例当前的已使用资源数据;
步骤S604,计算上述资源数据平均值;
将上述平均值与该应用弹缩阀值进行比较,包括:
步骤S605,判断所述平均值是否低于缩阀值,在判断结果为是的情况下,执行步骤S606,在判断结果为否的情况下,执行步骤S609:
步骤S606,触发调度模块32执行“缩”操作,即销毁容器实例;
步骤S607,同时清除该应用“预测缩”信息;
步骤S608,记录“缩”操作日期和时间,并持久化保存;
步骤S609,判断所述平均值是否高于弹阀值,在判断结果为是的情况下,执行步骤S610,在判断结果为否的情况下,执行步骤S605;
步骤S610,触发调度模块32执行“弹”操作,即新建容器实例;
步骤S611,同时清除该应用“预测弹”信息;
步骤S612,并且记录“弹”操作日期和时间,并持久化保存;
步骤S613,根据上述应用名称,从数据采集模块34获取自最近一次弹缩日期时间以后的其下属所有docker容器实例已使用资源历史数据记录;
步骤S614,统计应用使用资源随时间的变化情况,根据上述历史数据,计算并预测弹缩操作;
步骤S615,判断应用使用资源是否随时间持续增高,在判断结果为是的情况下,执行步骤S616,在判断结果为否的情况下,执行步骤S618;
步骤S616,判断预计时间内是否将触发弹操作,在判断结果为是的情况下,执行步骤S617,在判断结果为否的情况下,执行步骤S618;
步骤S617,当docker容器运行过程中使用的CPU和/或者RAM持续增高,并且按此增速在一定时间内将触发“弹”操作时,将其置为“预测弹”;
步骤S618,判断应用使用资源是否随时间持续降低,在判断结果为是的情况下,执行步骤S619,在判断结果为否的情况下,执行步骤S621;
步骤S619,判断预计时间内是否将触发缩操作,在判断结果为是的情况下,执行步骤S620,在判断结果为否的情况下,执行步骤S621;
步骤S620,当docker容器运行过程中使用的CPU和/或者RAM持续降低,并且按此降速在一定时间内将触发“缩”操作时,将其置为“预测缩”。
步骤S621,判断是否已遍历所有容器应用,在判断结果为是的情况下,结束,在判断结果为否的情况下,执行步骤S602,重复上述步骤,直至完成所有应用的处理。
第四步,新建docker容器实例,图7是根据本发明实施例的新建容器实例的流程图,如图7所示,可以包括下列步骤:
步骤S701,获取docker应用资源需求数据。调度模块32收到新建某个docker应用实例的请求之后,首先从部署策略模块38查询到该应用对资源(CPU、RAM)的需求数据,即request与limit值;
步骤S702,获取“预测缩”容器应用。调度模块32向弹缩策略模块36查询非当前新建实例docker应用的所有“预测缩”记录;
步骤S703,遍历上述“预测缩”记录,逐一获取“预测缩”容器应用的名称;
步骤S704,根据上述容器应用名称向数据采集模块34查询该应用下属所有容器实例;
步骤S705,逐一取出容器实例名称;
步骤S706,查询当前使用资源数据和容器实例所在计算节点当前空闲资源数据;
步骤S707,判断空闲资源数据值是否不小于request,在判断结果为是的情况下,执行步骤S708,在判断结果为否的情况下,执行步骤S712;
步骤S708,查询容器实例当前使用资源数据;
步骤S709,计算容器实例使用资源数据与计算节点空闲资源数据之和;
步骤S710,判断空闲资源数据值是否不小于limit,在判断结果为是的情况下,执行步骤S711,在判断结果为否的情况下,执行步骤S712;
步骤S711,记录预测容器实例名称和缩操作时间;
步骤S712,判断是否遍历完所有容器实例,在判断结果为是的情况下,执行步骤S713,在判断结果为否的情况下,执行步骤S705;
步骤S713,判断是否遍历完所有容器应用,在判断结果为是的情况下,执行步骤S714,在判断结果为否的情况下,执行步骤S703;
步骤S714,查询空闲资源不小于limit的计算节点;
步骤S715,随机选取一个计算节点;
步骤S716,在该计算节点新建docker应用实例。
第五步,销毁docker容器实例,图8是根据本发明实施例的销毁容器实例的流程图,如图8所示,可以包括下列步骤:
步骤S801,判断是否预测缩,在判断结果为是的情况下,执行步骤S802,在判断结果为否的情况下,执行步骤S803;
步骤S802,销毁指定容器实例,当调度模块32检测到“预测缩”时间到时,选择对应的指定计算节点上的指定容器实例;
步骤S803,随机销毁容器实例,当调度模块32接到销毁容器应用实例请求时,从该容器应用所有实例中随机选取一个容器实例;
步骤S804,执行销毁。
通过本发明实施例,PaaS平台进行docker容器调度时可以充分利用空闲资源量介于request与limit之间的计算节点。
下面以具体示例的方式对本发明实施例进行详细说明。
示例1
以基于物理主机的PaaS平台上进行docker容器调度为例,对本发明实施例进行详细说明。PaaS平台中计算节点是物理主机,在此场景下实施基于弹缩的docker容器调度,包括:
第一步,数据采集,可以包括下列步骤:
PaaS平台启动后,数据采集模块34即开始周期性地采集docker容器实例已使用资源(CPU、RAM)的数据值,并且持久化保存。数据采集模块34记录的信息包括容器应用名称、其下属容器实例名称(一个或多个)、容器实例所在计算节点名称、容器实例已使用资源数值、采集日期和时间;
PaaS平台启动后,数据采集模块34即开始周期性采集计算节点上空闲资源(CPU、RAM)数据值,仅保存最近一次采集到的数据,待用。
第二步,docker应用部署,可以包括下列步骤:
记录为该容器应用设定的资源(CPU、RAM)弹缩阀值到弹缩策略模块36,即缩阀值和弹阀值,其中,弹缩阀值针对不同应用是不同的,预先设置弹缩策略模块36将记录PaaS中所有容器应用的资源弹缩阀值,形成容器应用资源弹缩阀值集合;
记录为该容器应用设定的资源(CPU、RAM)需求数据值到部署策略模块38,包括运行时所需最小资源数值和系统限制最大可使用资源数值,即request与limit,是用户根据应用情况需求设定的。部署策略模块38记录PaaS中所有容器应用的资源需求设定值,形成容器应用资源需求数据集合;
部署策略模块38触发调度模块32,为该应用新建首个docker容器实例。
第三步,弹缩处理,可以包括下列步骤:
1,从部署策略模块38获取容器应用数据集合;
2,遍历上述集合,从中逐一取出容器应用名称;
3,根据上述应用名称,从数据采集模块34获取其下属的所有docker容器实例当前的已使用资源数据;
4,计算上述资源数据平均值;
5,将上述平均值与该应用弹缩阀值进行比较:
如果低于“缩”阀值,则触发调度模块32执行“缩”操作,即销毁容器实例;同时清除该应用“预测缩”信息,并且记录“缩”操作日期和时间;
如果高于“弹”阀值,则触发调度模块32执行“弹”操作,即新建容器实例;同时清除该应用“预测弹”信息,并且记录“弹”操作日期和时间。
6,根据上述应用名称,从数据采集模块34获取自最近一次弹缩日期时间以后的其下属所有docker容器实例已使用资源历史数据记录;
7,根据上述历史数据,计算并预测弹缩操作;
当docker容器运行过程中使用的CPU和/或者RAM持续增高,并且按此增速在一定时间内将触发“弹”操作时,将其置为“预测弹”;
当docker容器运行过程中使用的CPU和/或者RAM持续降低,并且按此降速在一定时间内将触发“缩”操作时,将其置为“预测缩”。
8重复2~7,直至完成所有应用的处理。
第四步,新建docker容器实例,可以包括下列步骤:
1,获取docker应用资源需求数据。调度模块32收到新建某个docker应用实例的请求之后,首先从部署策略模块38查询到该应用对资源(CPU、RAM)的需求数据,即request与limit值;
2,获取“预测缩”容器应用。调度模块32向弹缩策略模块36查询非当前新建实例docker应用的所有“预测缩”记录;
3,遍历上述“预测缩”记录,逐一获取“预测缩”容器应用的名称
4,根据上述容器应用名称向数据采集模块34查询该应用下属所有容器实例当前使用资源数据和其所在计算节点当前空闲资源数据;
5,比较上述数据与1中获取的docker应用资源需求数据。如果计算节点当前空闲资源不小于1中request,并且计算节点当前空闲资源与容器实例当前使用资源的和不小于1中limit,那么就在该计算节点上新建docker应用实例;并记录“预测缩”容器实例的名称和预测缩时间。新建docker容器实例步骤结束;
6,否则,重复3~5;
7,获取所有空闲资源满足limit值的计算节点。调度模块32向数据采集模块34查询当前空闲资源大于等于limit的计算节点;
8,随机从上述节点集合中选取一个,并在上面新建docker应用实例。
第五步,销毁docker容器实例,可以包括下列步骤:
随机销毁容器实例,当调度模块32接到销毁容器应用实例请求时,从该容器应用所有实例中随机选取一个进行销毁;
销毁指定容器实例,当调度模块32检测到“预测缩”时间到时,销毁对应的指定计算节点上的指定容器实例。
示例2
下面以基于虚拟主机的PaaS平台上进行docker容器调度为例,对本发明实施例进行详细说明。PaaS平台中计算节点是虚拟主机,在此场景下实施基于弹缩的docker容器调度,包括:
第一步,数据采集,可以包括下列步骤:
PaaS平台启动后,数据采集模块34即开始周期性地采集docker容器实例已使用资源(CPU、RAM)的数据值,并且持久化保存。数据采集模块34记录的信息包括容器应用名称、其下属容器实例名称(一个或多个)、容器实例所在计算节点名称、容器实例已使用资源数值、采集日期和时间。
PaaS平台启动后,数据采集模块34即开始周期性采集计算节点上空闲资源(CPU、RAM)数据值,仅保存最近一次采集到的数据,待用。
第二步,docker应用部署,可以包括下列步骤:
记录为该容器应用设定的资源(CPU、RAM)弹缩阀值到弹缩策略模块36,即缩阀值和弹阀值。弹缩策略模块36将记录PaaS中所有容器应用的资源弹缩阀值,形成容器应用资源弹缩阀值集合;
记录为该容器应用设定的资源(CPU、RAM)需求数据值到部署策略模块38,包括运行时所需最小资源数值和系统限制最大可使用资源数值,即request与limit。部署策略模块38记录PaaS中所有容器应用的资源需求设定值,形成容器应用资源需求数据集合;
部署策略模块38触发调度模块32,为该应用新建首个docker容器实例
第三步,弹缩处理,可以包括下列步骤:
1,从部署策略模块38获取容器应用数据集合;
2,遍历上述集合,从中逐一取出容器应用名称;
3,根据上述应用名称,从数据采集模块34获取其下属的所有docker容器实例当前的已使用资源数据;
4,计算上述资源数据平均值;
5,将上述平均值与该应用弹缩阀值进行比较:
如果低于“缩”阀值,则触发调度模块32执行“缩”操作,即销毁容器实例;同时清除该应用“预测缩”信息,并且记录“缩”操作日期和时间;
如果高于“弹”阀值,则触发调度模块32执行“弹”操作,即新建容器实例;同时清除该应用“预测弹”信息,并且记录“弹”操作日期和时间。
6,根据上述应用名称,从数据采集模块34获取自最近一次弹缩日期时间以后的其下属所有docker容器实例已使用资源历史数据记录;
7,根据上述历史数据,计算并预测弹缩操作;
当docker容器运行过程中使用的CPU和/或者RAM持续增高,并且按此增速在一定时间内将触发“弹”操作时,将其置为“预测弹”;
当docker容器运行过程中使用的CPU和/或者RAM持续降低,并且按此降速在一定时间内将触发“缩”操作时,将其置为“预测缩”。
8,重复2~7,直至完成所有应用的处理。
第四步,新建docker容器实例,可以包括下列步骤:
1,获取docker应用资源需求数据。调度模块32收到新建某个docker应用实例的请求之后,首先从部署策略模块38查询到该应用对资源(CPU、RAM)的需求数据,即request与limit值;
2,获取“预测缩”容器应用。调度模块32向弹缩策略模块36查询非当前新建实例docker应用的所有“预测缩”记录;
3,遍历上述“预测缩”记录,逐一获取“预测缩”容器应用的名称
4,根据上述容器应用名称向数据采集模块34查询该应用下属所有容器实例当前使用资源数据和其所在计算节点当前空闲资源数据;
5,比较上述数据与1中获取的docker应用资源需求数据。如果计算节点当前空闲资源不小于1中request,并且计算节点当前空闲资源与容器实例当前使用资源的和不小于1中limit,那么就在该计算节点上新建docker应用实例;并记录“预测缩”容器实例的名称和预测缩时间。新建docker容器实例步骤结束;
6,否则,重复3~5;
7,获取所有空闲资源满足limit值的计算节点。调度模块32向数据采集模块34查询当前空闲资源大于等于limit的计算节点;
8,随机从上述节点集合中选取一个,并在上面新建docker应用实例。
第五步,销毁docker容器实例,可以包括下列步骤:
随机销毁容器实例。当调度模块32接到销毁容器应用实例请求时,从该容器应用所有实例中随机选取一个进行销毁;
销毁指定容器实例。当调度模块32检测到“预测缩”时间到时,销毁对应的指定计算节点上的指定容器实例。
示例3
下面以基于物理主机和虚拟主机的混合PaaS平台上进行docker容器调度为例,对本发明实施例进行详细说明。在基于混合类型主机的PaaS平台上进行docker容器调度,PaaS平台中计算节点既包括物理主机也包括虚拟主机,在此场景下实施基于弹缩的docker容器调度,包括:
第一步,数据采集,可以包括下列步骤:
PaaS平台启动后,数据采集模块34即开始周期性地采集docker容器实例已使用资源(CPU、RAM)的数据值,并且持久化保存。数据采集模块34记录的信息包括容器应用名称、其下属容器实例名称(一个或多个)、容器实例所在计算节点名称、容器实例已使用资源数值、采集日期和时间;
PaaS平台启动后,数据采集模块34即开始周期性采集计算节点上空闲资源(CPU、RAM)数据值,仅保存最近一次采集到的数据,待用。
第二步,docker应用部署,可以包括下列步骤:
记录为该容器应用设定的资源(CPU、RAM)弹缩阀值到弹缩策略模块36,即缩阀值和弹阀值。弹缩策略模块36将记录PaaS中所有容器应用的资源弹缩阀值,形成容器应用资源弹缩阀值集合;
记录为该容器应用设定的资源(CPU、RAM)需求数据值到部署策略模块38,包括运行时所需最小资源数值和系统限制最大可使用资源数值,即request与limit。部署策略模块38记录PaaS中所有容器应用的资源需求设定值,形成容器应用资源需求数据集合;
部署策略模块38触发调度模块32,为该应用新建首个docker容器实例。
第三步,弹缩处理,可以包括下列步骤:
1从部署策略模块38获取容器应用数据集合;
2遍历上述集合,从中逐一取出容器应用名称;
3根据上述应用名称,从数据采集模块34获取其下属的所有docker容器实例当前的已使用资源数据;
4计算上述资源数据平均值;
5将上述平均值与该应用弹缩阀值进行比较:
如果低于“缩”阀值,则触发调度模块32执行“缩”操作,即销毁容器实例;同时清除该应用“预测缩”信息,并且记录“缩”操作日期和时间;
如果高于“弹”阀值,则触发调度模块32执行“弹”操作,即新建容器实例;同时清除该应用“预测弹”信息,并且记录“弹”操作日期和时间。
6根据上述应用名称,从数据采集模块34获取自最近一次弹缩日期时间以后的其下属所有docker容器实例已使用资源历史数据记录;
7根据上述历史数据,计算并预测弹缩操作;
当docker容器运行过程中使用的CPU和/或者RAM持续增高,并且按此增速在一定时间内将触发“弹”操作时,将其置为“预测弹”;
当docker容器运行过程中使用的CPU和/或者RAM持续降低,并且按此降速在一定时间内将触发“缩”操作时,将其置为“预测缩”。
8重复2~7,直至完成所有应用的处理。
第四步,新建docker容器实例,可以包括下列步骤:
1,获取docker应用资源需求数据。调度模块32收到新建某个docker应用实例的请求之后,首先从部署策略模块38查询到该应用对资源(CPU、RAM)的需求数据,即request与limit值;
2,获取“预测缩”容器应用。调度模块32向弹缩策略模块36查询非当前新建实例docker应用的所有“预测缩”记录;
3,遍历上述“预测缩”记录,逐一获取“预测缩”容器应用的名称;
4,根据上述容器应用名称向数据采集模块34查询该应用下属所有容器实例当前使用资源数据和其所在计算节点当前空闲资源数据;
5,比较上述数据与1中获取的docker应用资源需求数据。如果计算节点当前空闲资源不小于1中request,并且计算节点当前空闲资源与容器实例当前使用资源的和不小于1中limit,那么就在该计算节点上新建docker应用实例;并记录“预测缩”容器实例的名称和预测缩时间。新建docker容器实例步骤结束;
6,否则,重复3~5;
7,获取所有空闲资源满足limit值的计算节点。调度模块32向数据采集模块34查询当前空闲资源大于等于limit的计算节点;
8,随机从上述节点集合中选取一个,并在上面新建docker应用实例。
第五步,销毁docker容器实例,可以包括下列步骤:
随机销毁容器实例。当调度模块32接到销毁容器应用实例请求时,从该容器应用所有实例中随机选取一个进行销毁;
销毁指定容器实例。当调度模块32检测到“预测缩”时间到时,销毁对应的指定计算节点上的指定容器实例。
实施例2
根据本发明的另一个实施例,还提供了一种容器调度处理装置,图9是根据本发明实施例的容器调度处理装置的框图,如图9所示,包括:
接收模块92,用于接收新建容器实例的请求消息;
第一获取模块94,用于根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
释放模块96,用于在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
创建模块98,用于在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
可选地,所述释放模块,还用于
获取预先设置的预测缩记录中容器应用的名称;
根据所述容器应用的名称查询所述容器应用的所有容器实例当前已使用资源的数据和所述容器实例所在计算节点当前的空闲资源量;
在所述已使用资源的数据与所述空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,销毁所述容器应用的一个容器实例。
可选地,所述装置还包括:
选取模块,用于在容器实例已使用资源的数据和所述容器实例所在计算节点的空闲资源量大于所述最大资源数值的计算节点为多个的情况下,从多个计算节点中随机选取一个计算节点;
销毁模块,用于销毁选取的计算节点下容器应用的一个容器实例。
可选地,所述装置还包括:
第二获取模块,用于根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据;
判断模块,用于判断所述数据的变化情况;
设置模块,用于在所述数据为持续增高的情况下,将所述容器应用设置为预测弹;在所述数据为持续降低的情况下,将所述容器应用设置为预测缩。
可选地,所述装置还包括:
采集模块,用于周期性地采集容器实例已使用资源量;
计算模块,用于根据获取的容器实例的已使用资源量计算每个容器应用已使用资源的平均资源量;
对比模块,用于将所述平均资源量与预先设置的容器应用的资源弹缩阀值进行对比,其中,所述资源弹缩阀值包括资源弹阀值和资源缩阀值;
缩操作模块,用于在所述平均资源量小于所述资源缩阀值的情况下,对所述容器应用进行缩操作,同时清除所述预测缩记录中的所述容器应用的预测缩信息,并保存所述缩操作日期和时间;
弹操作模块,用于在所述平均资源量大于所述资源缩阀值的情况下,对容器应用进行弹操作,同时清除所述预测弹记录中的所述容器应用的预测弹信息,保存所述弹操作日期和时间。
可选地,所述缩操作模块,还用于
从所述容器应用中随机选择容器实例进行销毁;或者,
从所述容器应用中指定容器实例进行销毁。
可选地,所述弹操作模块,还用于
为所述容器应用新建容器实例。
实施例3
本发明的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项所述的方法。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S11,接收新建容器实例的请求消息;
S12,根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
S13,在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
S14,在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
实施例4
本发明的实施例还提供了一种处理器,该处理器用于运行程序,其中,该程序运行时执行上述任一项方法中的步骤。
可选地,在本实施例中,上述程序用于执行以下步骤:
S21,接收新建容器实例的请求消息;
S22,根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
S23,在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
S24,在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在两个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的两个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种容器调度处理方法,其特征在于,包括:
接收新建容器实例的请求消息;
根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
2.根据权利要求1所述的方法,其特征在于,在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源包括:
获取预先设置的预测缩记录中容器应用的名称;
根据所述容器应用的名称查询所述容器应用的所有容器实例当前已使用资源的数据和所述容器实例所在计算节点当前的空闲资源量;
在所述已使用资源的数据与所述空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,销毁所述容器应用的一个容器实例。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在容器实例已使用资源的数据和所述容器实例所在计算节点的空闲资源量大于所述最大资源数值的计算节点为多个的情况下,从多个计算节点中随机选取一个计算节点;
销毁选取的计算节点下容器应用的一个容器实例。
4.根据权利要求2或3所述的方法,其特征在于,在获取预先设置的预测缩记录中容器应用的名称之前,所述方法还包括:
根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据;
判断所述数据的变化情况;
在所述数据为持续增高的情况下,将所述容器应用设置为预测弹;
在所述数据为持续降低的情况下,将所述容器应用设置为预测缩。
5.根据权利要求4所述的方法,其特征在于,在根据容器应用名称获取所述容器应用上一次缩操作日期或弹操作日期以后所述容器应用的所有容器实例使用资源的数据之前,所述方法还包括:
周期性地采集容器实例已使用资源量;
根据获取的容器实例的已使用资源量计算每个容器应用已使用资源的平均资源量;
将所述平均资源量与预先设置的容器应用的资源弹缩阀值进行对比,其中,所述资源弹缩阀值包括资源弹阀值和资源缩阀值;
在所述平均资源量小于所述资源缩阀值的情况下,对所述容器应用进行缩操作,同时清除所述预测缩记录中的所述容器应用的预测缩信息,并保存所述缩操作日期和时间;
在所述平均资源量大于所述资源缩阀值的情况下,对容器应用进行弹操作,同时清除所述预测弹记录中的所述容器应用的预测弹信息,保存所述弹操作日期和时间。
6.根据权利要求5所述的方法,其特征在于,对所述容器应用进行缩操作包括:
从所述容器应用中随机选择容器实例进行销毁;或者,
从所述容器应用中指定容器实例进行销毁。
7.根据权利要求5所述的方法,其特征在于,对容器应用进行弹操作包括:
为所述容器应用新建容器实例。
8.一种容器调度处理装置,其特征在于,包括:
接收模块,用于接收新建容器实例的请求消息;
第一获取模块,用于根据所述请求消息获取创建所述容器实例所需的资源的最小资源数值和最大资源数值,所述最小资源数值为运行时所需最小资源数值,所述最大资源数值为系统限制最大可使用资源数值;
释放模块,用于在计算节点的空闲资源量大于所述最小资源数值且小于所述最大资源数值的情况下,通过销毁容器实例的方式为所述计算节点释放空闲资源;
创建模块,用于在释放的空闲资源与所述空闲资源量之和大于所述最大资源数值的情况下,在所述计算节点上创建所述容器实例。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行权利要求1至7中任一项所述的方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至7中任一项所述的方法。
CN201710889408.2A 2017-09-27 2017-09-27 容器调度处理方法及装置 Active CN109561024B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710889408.2A CN109561024B (zh) 2017-09-27 2017-09-27 容器调度处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710889408.2A CN109561024B (zh) 2017-09-27 2017-09-27 容器调度处理方法及装置

Publications (2)

Publication Number Publication Date
CN109561024A true CN109561024A (zh) 2019-04-02
CN109561024B CN109561024B (zh) 2022-08-02

Family

ID=65864003

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710889408.2A Active CN109561024B (zh) 2017-09-27 2017-09-27 容器调度处理方法及装置

Country Status (1)

Country Link
CN (1) CN109561024B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110427194A (zh) * 2019-06-18 2019-11-08 平安科技(深圳)有限公司 容器应用删除方法、装置、计算机设备及存储介质
CN112597502A (zh) * 2020-12-17 2021-04-02 山东乾云启创信息科技股份有限公司 一种基于可信云的大规模计算服务配置方法及系统
WO2022002247A1 (zh) * 2020-07-03 2022-01-06 中兴通讯股份有限公司 资源调度方法、电子设备及存储介质
CN114691547A (zh) * 2019-12-31 2022-07-01 华为云计算技术有限公司 部署实例的方法、实例管理节点、计算节点和计算设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105515864A (zh) * 2015-12-11 2016-04-20 深圳市中润四方信息技术有限公司 容器资源自适应调整方法及系统
WO2016090292A1 (en) * 2014-12-05 2016-06-09 Amazon Technologies, Inc. Automatic management of resource sizing
CN106982107A (zh) * 2016-01-15 2017-07-25 中兴通讯股份有限公司 调度方法、调度器及网络接入设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016090292A1 (en) * 2014-12-05 2016-06-09 Amazon Technologies, Inc. Automatic management of resource sizing
CN105515864A (zh) * 2015-12-11 2016-04-20 深圳市中润四方信息技术有限公司 容器资源自适应调整方法及系统
CN106982107A (zh) * 2016-01-15 2017-07-25 中兴通讯股份有限公司 调度方法、调度器及网络接入设备

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110427194A (zh) * 2019-06-18 2019-11-08 平安科技(深圳)有限公司 容器应用删除方法、装置、计算机设备及存储介质
CN110427194B (zh) * 2019-06-18 2024-05-14 平安科技(深圳)有限公司 容器应用删除方法、装置、计算机设备及存储介质
CN114691547A (zh) * 2019-12-31 2022-07-01 华为云计算技术有限公司 部署实例的方法、实例管理节点、计算节点和计算设备
WO2022002247A1 (zh) * 2020-07-03 2022-01-06 中兴通讯股份有限公司 资源调度方法、电子设备及存储介质
CN112597502A (zh) * 2020-12-17 2021-04-02 山东乾云启创信息科技股份有限公司 一种基于可信云的大规模计算服务配置方法及系统
CN112597502B (zh) * 2020-12-17 2023-02-10 山东乾云启创信息科技股份有限公司 一种基于可信云的大规模计算服务配置方法及系统

Also Published As

Publication number Publication date
CN109561024B (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
CN109561024A (zh) 容器调度处理方法及装置
CN109194584A (zh) 一种流量监控方法、装置、计算机设备及存储介质
CN106293924B (zh) 安卓系统的内存管理方法及装置
CN108228347A (zh) 一种任务感知的Docker自适应调度系统
CN107682417B (zh) 一种数据节点的任务分配方法和装置
CN101023636A (zh) 管理移动通信网络中无线资源的抢占方法
CN111082960B9 (zh) 数据的处理方法及装置
CN107689968A (zh) 任务的处理系统、方法及装置
CN102413514B (zh) 数据配送装置以及数据配送方法
CN110413282A (zh) 一种冗余资源处理方法、装置、设备及存储介质
CN111738409A (zh) 一种资源调度的方法及其相关设备
CN105824705B (zh) 一种任务分配方法和电子设备
CN110933178A (zh) 调整集群系统内的节点配置的方法及服务器
CN110795217A (zh) 一种基于资源管理平台的任务分配方法及系统
JP5314570B2 (ja) 蓄積データの再構成システム、再構成方法およびプログラム
CN108924203A (zh) 数据副本自适应分布方法、分布式计算系统及相关设备
CN105721316B (zh) 一种下发流表的方法及装置
CN107959702A (zh) 路由方法和装置
CN111291009B (zh) 文件分块存储方法及装置
JP6938944B2 (ja) 情報処理装置、及び、負荷分散制御方法
CN106021026A (zh) 一种备份方法及装置
CN113064677B (zh) 应用运行方法及装置、存储介质及电子装置
CN110222019A (zh) 文件系统所占空间的调整方法及装置
CN115334010A (zh) 查询信息的处理方法和装置、存储介质及电子装置
JP2021141622A (ja) 管理サーバ、ネットワークシステム、ルータの管理方法、及びプログラム

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
GR01 Patent grant
GR01 Patent grant