CN108228334B - 一种容器集群扩展的方法和装置 - Google Patents

一种容器集群扩展的方法和装置 Download PDF

Info

Publication number
CN108228334B
CN108228334B CN201611155813.3A CN201611155813A CN108228334B CN 108228334 B CN108228334 B CN 108228334B CN 201611155813 A CN201611155813 A CN 201611155813A CN 108228334 B CN108228334 B CN 108228334B
Authority
CN
China
Prior art keywords
container cluster
expansion
container
occurrence
cluster
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.)
Active
Application number
CN201611155813.3A
Other languages
English (en)
Other versions
CN108228334A (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.)
China Mobile Communications Group Co Ltd
China Mobile Information Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Information Technology 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 China Mobile Communications Group Co Ltd, China Mobile Information Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201611155813.3A priority Critical patent/CN108228334B/zh
Publication of CN108228334A publication Critical patent/CN108228334A/zh
Application granted granted Critical
Publication of CN108228334B publication Critical patent/CN108228334B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例公开了一种容器集群扩展的方法,所述方法包括:获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;所述扩展预测值大于扩展阈值时,将容器集群进行扩展。本发明实施例还公开了一种容器集群扩展的装置。

Description

一种容器集群扩展的方法和装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种容器集群扩展的方法和装置。
背景技术
随着互联网技术的快速发展,大数据、云计算等领域不断涌现出新的技术,这些新的技术一方面为海量数据的计算提供更好的平台和工具,另一方面解决了分布式系统资源利用率不足的问题。其中,容器技术已经成为一种被大家广泛认可的容器技术服务器资源共享方式,容器可以在按需构建容器技术操作系统实例的过程当中为系统管理员提供极大的灵活性。作为一种新兴的虚拟化方式,容器跟传统的虚拟化方式相比具有众多的优势,例如更快捷的交付和部署、更高效的虚拟化、更轻松的迁移和扩展以及更简单的管理。Kubernetes是一个全新的基于容器技术的分布式架构的集群管理解决方案。
随着容器技术的大量应用,一般意义上以监控中央处理器(Central ProcessingUnit,CPU)资源数量作为系统伸缩阈值的做法不能有效支撑业务的平稳运行,存在一定程度的滞后,不能真实反映业务质量情况。因此,有必要为人们提供一种能够真实反映业务运行情况的,并以此作为容器集群扩展的依据,从而满足当前业务需要。
发明内容
为解决上述技术问题,本发明实施例期望提供一种容器集群扩展的方法和装置,能够真实反映业务运行情况、实现了多业务的资源共享并提高容器集群资源的利用率。
本发明的技术方案是这样实现的:
本发明实施例提供了一种容器集群扩展的方法,包括:
获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;
利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;
所述扩展预测值大于扩展阈值时,将容器集群进行扩展。
上述方案中,所述容器集群的运行参数包括以下至少一种参数:所述容器集群对应的中央处理器CPU使用率、所述容器集群对应的内存使用率、所述容器集群对应的网络输入输出I/O吞吐率、所述容器集群对应的磁盘I/O吞吐率、所述容器集群对应的应用并发请求数、所述容器集群对应的应用响应时间。
上述方案中,所述利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算扩展预测值,包括:利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率,将当前时间容器集群的每种运行参数对应的扩展事件的出现概率进行加权求和,得到扩展预测值。
上述方案中,所述利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间各个容器集群的运行参数对应的容器集群扩展事件的出现概率,包括:计算扩展事件发生时当前时间容器集群的每种运行参数的出现概率和扩展事件的出现概率的乘积,再除以对应的容器集群的运行参数的出现概率,得到当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率。
上述方案中,所述容器集群的运行参数的历史数据包括:容器集群的每一种运行参数中各个参数的出现次数、扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。
上述方案中,所述方法还包括:所述扩展预测值小于等于扩展阈值时,容器集群不进行扩展。
本发明实施例还提供了一种容器集群扩展的装置,包括:获取模块、计算模块和管理模块;其中,
获取模块,用于获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;
计算模块,用于利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;
管理模块,在用于所述扩展预测值大于扩展阈值时,将容器集群进行扩展。
上述方案中,所述容器集群的运行参数包括以下至少一种参数:所述容器集群对应的中央处理器CPU使用率、所述容器集群对应的内存使用率、所述容器集群对应的网络输入输出I/O吞吐率、所述容器集群对应的磁盘I/O吞吐率、所述容器集群对应的应用并发请求数、所述容器集群对应的应用响应时间。
上述方案中,所述计算模块,具体用于利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率,将当前时间容器集群的每种运行参数对应的扩展事件的出现概率进行加权求和,得到扩展预测值。
上述方案中,所述计算模块,具体用于计算扩展事件发生时当前时间容器集群的每种运行参数的出现概率和扩展事件的出现概率的乘积,再除以对应的容器集群的运行参数的出现概率,得到当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率。
上述方案中,所述容器集群的运行参数的历史数据包括:容器集群的每一种运行参数中各个参数的出现次数、扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。
上述方案中,所述管理模块,还用于在所述扩展预测值小于等于扩展阈值时,容器集群不进行扩展。
本发明实施例中,获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;所述扩展预测值大于扩展阈值时,将容器集群进行扩展。如此,能够真实反映业务运行情况、实现了多业务的资源共享并提高容器集群资源的利用率。
附图说明
图1为本发明容器集群扩展的方法的第一实施例的流程图;
图2为本发明容器集群扩展的方法的第二实施例的流程图;
图3为本发明实施例中智能运营数据分析引擎判断流程图;
图4为本发明实施例中日志队列服务容器集群扩展的示意图;
图5为本发明实施例中订单队列服务容器集群扩展的示意图;
图6为本发明实施例容器集群扩展的装置的组成结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
图1为本发明容器集群扩展的方法的第一实施例的流程图,如图1所示,该方法包括:
步骤100:获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数。
优选地,所述容器集群的运行参数包括以下至少一种参数:所述容器集群对应的中央处理器CPU使用率、所述容器集群对应的内存使用率、所述容器集群对应的网络输入输出I/O吞吐率、所述容器集群对应的磁盘I/O吞吐率、所述容器集群对应的应用并发请求数、所述容器集群对应的应用响应时间。
所述容器集群的运行参数的历史数据可以包括:容器集群的每一种运行参数中各个参数的出现次数、扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。
在实际实施时,在使用容器集群对业务请求进行处理时,每隔固定的时间周期Tn获取所需容器集群的运行参数的历史数据和当前时间容器集群的运行参数,可以是在T(T的单位可以是秒、分钟、小时、天、星期、月、年等)时间内每隔Tn时间获取一次所需运行参数的历史数据和当前时间的运行参数,Tn小于等于T。
所需运行参数的历史数据包括:
过去T时间内扩展事件B发生的次数S;过去T时间内容器集群的每一种运行参数Xi出现次数Xicount,在扩展事件发生时Xi出现的概率P(Xi|B)。
这里,Xi=Ci、Mi、Ni、Di、Ai或Ri,其中Ci、Mi、Ni、Di、Ai、Ri分别表示容器集群对应的CPU使用率、内存使用率、网络I/O吞吐率、磁盘I/O吞吐率、应用并发请求数、应用响应时间。
所需运行参数的历史数据具体可以包括:
CPU利用率为Ci(0%<Ci≤100%)时的出现次数Cicount,在扩展事件发生时CPU利用率为Ci的出现概率P(Ci|B);例如:CPU利用率为60%时的发生次数为10次,在扩展事件发生时CPU利用率为60%的出现概率为80%。
内存使用率为Mi(0%<Mi≤100%)时的出现次数Micount,在扩展事件发生时内存使用率为Mi的出现概率P(Mi|B);
网络I/O吞吐率为Ni(0%<Ni≤100%)时的出现次数Nicount,在扩展事件发生时网络I/O吞吐率为Ni的出现概率P(Ni|B);
磁盘I/O吞吐率为Di(0%<Di≤100%)时的出现次数Dicount,在扩展事件发生时磁盘I/O吞吐率为Di的出现概率P(Di|B);
应用并发请求数为Ai(0<Ai≤P,P与系统相关,单位为次)时的出现次数Aicount,在扩展事件发生时应用并发请求数为Ai的出现概率P(Ai|B);
应用响应时间为Ri(0<Ri≤Q,Q与系统相关,单位为毫秒)时的出现次数Ricount,在扩展事件发生时应用响应时间为Ri的出现概率P(Ri|B)。
当前容器集群的运行参数包括:当前时间每一种容器集群的运行参数Xcurrent,具体可以是:当前时间容器集群对应的CPU使用率Ccurrent、内存使用率Mcurrent、网络I/O吞吐率Ncurrent、磁盘I/O吞吐率Dcurrent、应用并发请求数Acurrent、应用响应时间Rcurrent
步骤101:利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值。
优选地,利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率,将当前时间容器集群的每种运行参数对应的扩展事件的出现概率进行加权求和,得到扩展预测值。
所述利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间每种容器集群的运行参数对应的容器集群扩展事件的出现概率,可以是:计算扩展事件发生时当前时间容器集群的每种运行参数的出现概率和扩展事件的出现概率的乘积,再除以对应的容器集群的运行参数的出现概率,得到当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率。
在实际实施时,计算当前时间各个容器集群的运行参数对应的扩展事件的出现概率,可以包括以下:
计算扩展事件B的出现概率P(B)=S/K;
计算每一个容器集群的运行参数为Xi时的出现概率P(Xi)=Xicount/K,具体包括以下:
CPU利用率为Ci时的出现概率P(Ci)=Cicount/K;
内存使用率为Mi的出现概率P(Mi)=Micount/K;
网络I/O吞吐率为Ni的出现概率P(Ni)=Nicount/K;
磁盘I/O吞吐率为Di的出现概率P(Di)=Dicount/K;
应用并发请求数为Ai的出现概率P(Ai)=Aicount/K;
应用响应时间为Ri的出现概率P(Ri)=Ricount/K;
其中,S为过去T时间内扩展事件B发生的次数,K值可以是过去一段时间T内业务请求的总次数,或者当K=T时也可以通过上式计算单位时间内扩展事件B的发生次数,和单位时间内各个运行参数的出现次数。
当前时间各个容器集群的运行参数Xcurrent对应的扩展事件的出现概率为:P(B|Xcurrent)=P(Xcurrent|B)×P(B)/P(Xcurrent)。其中,Xcurrent可以为:Ccurrent、Mcurrent、Ncurrent、Dcurrent、Acurrent或Rcurrent
需要说明的是,公式P(B|Xcurrent)=P(Xcurrent|B)×P(B)/P(Xcurrent)中P(Xcurrent|B)可以根据步骤100中获得的运行参数的历史数据中包含的扩展事件发生时运行参数Xi的出现概率P(Xi|B)中得到,其中Xi=Xcurrent时,P(Xcurrent|B)=P(Xi|B);P(Xcurrent)可以根据P(Xi)=Xicount/K得到,其中Xi=Xcurrent时,P(Xcurrent)=P(Xi)。
具体地,当前时间各个容器集群的运行参数对应的容器集群扩展事件的出现概率的计算公式如下:
当前时间CPU利用率为Ccurrent时对应的扩展事件的出现概率为:P(B|Ccurrent)=P(Ccurrent|B)×P(B)/P(Ccurrent);
当前时间内存使用率为Mcurrent时对应的扩展事件的出现概率为:P(B|Mcurrent)=P(Mcurrent|B)×P(B)/P(Mcurrent);
当前时间网络I/O吞吐率为Ncurrent时对应的扩展事件的出现概率为:P(B|Ncurrent)=P(Ncurrent|B)×P(B)/P(Ncurrent);
当前时间磁盘I/O吞吐率为Dcurrent时对应的扩展事件的出现概率为:P(B|Ncurrent)=P(Ncurrent|B)×P(B)/P(Ncurrent);
当前时间应用并发请求数为Acurrent时对应的扩展事件的出现概率为:P(B|Acurrent)=P(Acurrent|B)×P(B)/P(Acurrent);
当前时间应用响应时间为Rcurrent时对应的扩展事件的出现概率为:P(B|Rcurrent)=P(Rcurrent|B)×P(B)/P(Rcurrent);
计算当前时间对应的扩展预测值Pcurrent:Pcurrent=WC×P(B|Ccurrent)+WM×P(B|Mcurrent)+WN×P(B|Ncurrent)+WD×P(B|Dcurrent)+WA×P(B|Acurrent)+WR×P(B|Rcurrent)。
其中,WC为CPU利用率加权系数,WM为内存使用率加权系数,WN为网络I/O吞吐率加权系数,WD为磁盘I/O吞吐率加权系数,WA为应用并发请求数加权系数,WR为应用响应时间加权系数。
在实际实施时,每一种运行参数的加权系数可以根据各种运行参数在容器集群扩展中的影响程度来决定。
步骤102:所述扩展预测值大于扩展阈值时,将容器集群进行扩展。
本步骤中,所述扩展预测值小于等于扩展阈值时,容器集群不进行扩展。
本发明实施例中,可以使用Kubernetes管理平台来实现对容器集群的管理,当判定当前容器集群需要扩展时,可以通过生成扩展使能信号,来控制Kubernetes管理平台启动公有云容器集群对需要的私有云容器集群进行扩展。
在实际实施时,利用容器集群的运行参数的历史数据和当前时间容器集群的运行参数,获得扩展预测值,利用扩展预测值作为容器集群扩展的依据,与扩展阈值比较后用比较结果来触发容器集群进行扩展,满足了互联网业务剧烈波动对容器集群扩展的要求。
本发明实施例中,获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;所述扩展预测值大于扩展阈值时,将容器集群进行扩展。如此,能够真实反映业务运行情况、实现了多业务的资源共享并提高容器集群资源的利用率。
第二实施例
为了能更加体现本发明的目的,在本发明第一实施例的基础上,以日志队列服务和订单队列服务的容器集群管理为例进行进一步的举例说明。
图2为本发明容器集群扩展的方法的第二实施例的流程图,该方法包括:
步骤20:客户发起业务请求。
步骤21:调用日志队列服务,用于将业务请求写入日志队列。
步骤22:根据预设的智能运营数据分析引擎判断日志队列服务是否需要扩展,如果是,执行步骤23,如果否,执行步骤24。
图3为本发明实施例中智能运营数据分析引擎判断流程图,如图3所示,预设的智能运营数据分析引擎具体的判断步骤如下:
步骤221:每隔固定的时间周期获取运行参数的历史数据和当前时间的运行参数。
本步骤中,判断日志队列服务的容器集群是否需要扩展时,需要的运行参数包括:C、M、N、D、A、R,其中,C、M、N、D、A、R分别表示容器集群对应的CPU使用率、内存使用率、网络I/O吞吐率、磁盘I/O吞吐率、应用并发请求数、应用响应时间。
这里,历史数据可以包括:过去一段时间T内扩展事件B发生的次数S;CPU利用率为Ci(0%<Ci≤100%)时的出现次数Cicount,在扩展事件发生时CPU利用率为Ci的出现概率P(Ci|B);
内存使用率为Mi(0%<Mi≤100%)时的出现次数Micount,在扩展事件发生时内存使用率为Mi的出现概率P(Mi|B);
网络I/O吞吐率为Ni(0%<Ni≤100%)时的出现次数Nicount,在扩展事件发生时网络I/O吞吐率为Ni的出现概率P(Ni|B);
磁盘I/O吞吐率为Di(0%<Di≤100%)时的出现次数Dicount,在扩展事件发生时磁盘I/O吞吐率为Di的出现概率P(Di|B);
应用并发请求数为Ai(0<Ai≤P,P与系统相关,单位为次)时的出现次数Aicount,在扩展事件发生时应用并发请求数为Ai的出现概率P(Ai|B);
应用响应时间为Ri(0<Ri≤Q,Q与系统相关,单位为毫秒)时的出现次数Ricount,在扩展事件发生时应用响应时间为Ri的出现概率P(Ri|B)。
当前容器集群的运行参数包括:当前时间每一种容器集群的运行参数Xcurrent,具体可以是:当前时间容器集群对应的CPU使用率Ccurrent、内存使用率Mcurrent、网络I/O吞吐率Ncurrent、磁盘I/O吞吐率Ncurrent、应用并发请求数Acurrent、应用响应时间Rcurrent
示例性的,容器集群的运行参数的历史数据可以是:在过去一段时间T(单位可以是秒、分钟、小时、天、星期、月、年等)容器集群的每一种运行参数中各个参数的出现次数,扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。例如,在过去一天内CPU使用率为80%时的出现次数为10次,扩展事件发生时CPU使用率为80%时的出现概率为60%;CPU使用率为50%时的出现次数为20次,扩展事件发生时CPU使用率为80%时的出现概率为50%;CPU使用率为20%时的出现次数为10次,扩展事件发生时CPU使用率为20%时的出现概率为30%当前状态数据包括:当前时间容器集群对应的CPU使用率为80%。
步骤222:计算当前时间的容器集群的扩展预测值Pcurrent
本步骤中,计算扩展事件B的出现概率P(B),和各个容器集群的运行参数为Xi时的出现概率P(Xi),具体包括:P(Ci)、P(Mi)、P(Ni)、P(Di)、P(Ai)P(Ri)。
当前时间各个容器集群的运行参数Xcurrent对应的扩展事件的出现概率为:P(B|Xcurrent)=P(Xcurrent|B)×P(B)/P(Xcurrent)。其中,Xcurrent可以包括:Ccurrent、Mcurrent、Ncurrent、Dcurrent、Acurrent或Rcurrent
计算当前时间对应的扩展预测值Pcurrent:Pcurrent=WC×P(B|Ccurrent)+WM×P(B|Mcurrent)+WN×P(B|Ncurrent)+WD×P(B|Dcurrent)+WA×P(B|Acurrent)+WR×P(B|Rcurrent)。
可选的,每一种运行参数的加权系数可以根据当前时间各种运行参数出现的次数来决定。
示例性的,获得当前时间运行参数为:CPU使用率Ccurrent=80%、内存使用率Mcurrent=20%,网络I/O吞吐率Ncurrent=60%,磁盘I/O吞吐率Dcurrent=50%,应用并发请求数Acurrent=1000次,应用响应时间Rcurrent=500ms。
计算得到扩展事件B的出现概率P(B);根据获得的当前时间运行参数,可以从历史数据中查询到扩展事件发生时当前时间运行参数的出现概率,包括:P(Ccurrent|B)、P(Mcurrent|B)、P(Ncurrent|B)、P(Dcurrent|B)、P(Acurrent|B)和P(Rcurrent|B);从计算得到的各个运行参数的出现概率查询到当前时间运行参数的出现概率,包括:P(Ccurrent)、P(Mcurrent)、P(Ncurrent)、P(Dcurrent)、P(Acurrent)和P(Rcurrent)。
在一天时间内获得的历史扩展数据中CPU利用率为80%时的发生次数为10次,内存使用率为20%时的发生次数为5次,网络I/O吞吐率为60%时的发生次数为1次,磁盘I/O吞吐率为50%时的发生次数为5次,应用并发请求数为1000次时的发生次数为2次,应用响应时间为500ms时的发生次数为2次。则此时每一种容器集群的运行参数的加权系数之比可以设置为:WC:WM:WN:WD:WA:WR=10:5:1:5:2:2。
通过上述数据便可以计算得到扩展预测值Pcurrent
步骤223:判断扩展预测值Pcurrent是否大于扩展阈值Pexp,如果是,执行步骤224;如果否,执行步骤225。
步骤224:容器集群需要扩展,生成扩展使能信号。
步骤225:容器集群不需要扩展。
步骤23:由Kubernetes管理平台启动公有云集群中的容器来进行日志队列服务的容器集群扩展。
图4为本发明实施例中日志队列服务容器集群扩展的示意图,如图4所示,当确定日志队列服务的容器集群(包含私有云中的容器B)需要扩展时,由Kubernetes管理平台启动公有云集群中的容器B来对日志队列服务的容器集群进行动态扩展,并使用扩展后的容器集群对当前业务请求进行写入操作。
步骤24:日志队列服务异步调用日志服务将业务请求写入日志。
步骤25:调用查询服务。
在实际实施时,在对日志队列服务管理完成后,开始执行对订单队列服务的管理操作。
步骤26:查询用户是否具备订购业务资质,如果是,执行步骤27;如果否,执行步骤212。
步骤27:调用订单队列服务,用于将业务请求写入订单队列。
步骤28:根据预设的智能运营数据分析引擎判断订单队列服务是否需要扩展,如果是,执行步骤29;如果否,执行步骤210。
本步骤中,预设的智能运营数据分析引擎与步骤22中给出的预设的智能运营数据分析引擎具体的判断步骤相同。
步骤29:由Kubernetes管理平台启动公有云集群中的容器来进行订单队列服务的容器集群扩展。
图5为本发明实施例中订单队列服务容器集群扩展的示意图,如图5所示,当确定订单队列服务的容器集群(包含私有云中的容器B)需要扩展时,由Kubernetes管理平台启动公有云集群中的容器B来对订单队列服务的容器集群进行动态扩展,并使用扩展后的容器集群对当前业务请求进行写入操作。
步骤210:订单队列服务异步调用订单服务完成订单生成。
步骤211:调用数据库服务将订单入库。
步骤212:管理结束。
第三实施例
针对本发明实施例的方法,本发明实施例还提供了一种容器集群扩展的装置。图6为本发明实施例容器集群扩展的装置的组成结构示意图,如图6所示,该装置包括获取模块600、计算模块601和管理模块602;其中,
获取模块600,用于获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;
计算模块601,用于利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;
管理模块602,在用于所述扩展预测值大于扩展阈值时,将容器集群进行扩展。
优选地,所述容器集群的运行参数包括以下至少一种参数:所述容器集群对应的中央处理器CPU使用率、所述容器集群对应的内存使用率、所述容器集群对应的网络输入输出I/O吞吐率、所述容器集群对应的磁盘I/O吞吐率、所述容器集群对应的应用并发请求数、所述容器集群对应的应用响应时间。
优选地,所述计算模块601,具体用于利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率,将当前时间容器集群的每种运行参数对应的扩展事件的出现概率进行加权求和,得到扩展预测值。
优选地,所述计算模块601,具体用于计算扩展事件发生时当前时间容器集群的每种运行参数的出现概率和扩展事件的出现概率的乘积,再除以对应的容器集群的运行参数的出现概率,得到当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率。
优选地,所述容器集群的运行参数的历史数据包括:容器集群的每一种运行参数中各个参数的出现次数、扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。
优选地,所述管理模块602,还用于在所述扩展预测值小于等于扩展阈值时,容器集群不进行扩展。
在实际应用中,获取模块600、计算模块601和管理模块602均可由位于终端设备中的中央处理器(Central Processing Unit,CPU)、微处理器(Micro Processor Unit,MPU)、数字信号处理器(Digital Signal Processor,DSP)、或现场可编程门阵列(FieldProgrammable Gate Array,FPGA)等实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (11)

1.一种容器集群扩展的方法,其特征在于,所述方法包括:
获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;
利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率,将当前时间容器集群的每种运行参数对应的扩展事件的出现概率进行加权求和,得到扩展预测值;
所述扩展预测值大于扩展阈值时,将容器集群进行扩展。
2.根据权利要求1所述的方法,其特征在于,所述容器集群的运行参数包括以下至少一种参数:所述容器集群对应的中央处理器CPU使用率、所述容器集群对应的内存使用率、所述容器集群对应的网络输入输出I/O吞吐率、所述容器集群对应的磁盘I/O吞吐率、所述容器集群对应的应用并发请求数、所述容器集群对应的应用响应时间。
3.根据权利要求1所述的方法,其特征在于,所述利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间每种容器集群的运行参数对应的容器集群扩展事件的出现概率,包括:计算扩展事件发生时当前时间容器集群的每种运行参数的出现概率和扩展事件的出现概率的乘积,再除以对应的容器集群的运行参数的出现概率,得到当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率。
4.根据权利要求2所述的方法,其特征在于,所述容器集群的运行参数的历史数据包括:容器集群的每一种运行参数中各个参数的出现次数、扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述扩展预测值小于等于扩展阈值时,容器集群不进行扩展。
6.一种容器集群扩展的装置,其特征在于,所述装置包括:获取模块、计算模块和管理模块;其中,
获取模块,用于获取容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数;
计算模块,用于利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算容器集群的扩展预测值;
管理模块,用于所述扩展预测值大于扩展阈值时,将容器集群进行扩展。
7.根据权利要求6所述的装置,其特征在于,所述容器集群的运行参数包括以下至少一种参数:所述容器集群对应的中央处理器CPU使用率、所述容器集群对应的内存使用率、所述容器集群对应的网络输入输出I/O吞吐率、所述容器集群对应的磁盘I/O吞吐率、所述容器集群对应的应用并发请求数、所述容器集群对应的应用响应时间。
8.根据权利要求6所述的装置,其特征在于,所述计算模块,具体用于利用所述容器集群的扩展事件的发生次数的历史数据、容器集群的运行参数的历史数据和当前时间容器集群的运行参数,计算当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率,将当前时间容器集群的每种运行参数对应的扩展事件的出现概率进行加权求和,得到扩展预测值。
9.根据权利要求6所述的装置,其特征在于,所述计算模块,具体用于计算扩展事件发生时当前时间容器集群的每种运行参数的出现概率和扩展事件的出现概率的乘积,再除以对应的容器集群的运行参数的出现概率,得到当前时间容器集群的每种运行参数对应的容器集群扩展事件的出现概率。
10.根据权利要求6所述的装置,其特征在于,所述容器集群的运行参数的历史数据包括:容器集群的每一种运行参数中各个参数的出现次数、扩展事件发生时容器集群的每一种运行参数中各个参数的出现概率。
11.根据权利要求6所述的装置,其特征在于,所述管理模块,还用于在所述扩展预测值小于等于扩展阈值时,不对容器集群进行扩展。
CN201611155813.3A 2016-12-14 2016-12-14 一种容器集群扩展的方法和装置 Active CN108228334B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611155813.3A CN108228334B (zh) 2016-12-14 2016-12-14 一种容器集群扩展的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611155813.3A CN108228334B (zh) 2016-12-14 2016-12-14 一种容器集群扩展的方法和装置

Publications (2)

Publication Number Publication Date
CN108228334A CN108228334A (zh) 2018-06-29
CN108228334B true CN108228334B (zh) 2021-06-04

Family

ID=62649974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611155813.3A Active CN108228334B (zh) 2016-12-14 2016-12-14 一种容器集群扩展的方法和装置

Country Status (1)

Country Link
CN (1) CN108228334B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113407297B (zh) * 2020-03-17 2023-12-26 中国移动通信集团浙江有限公司 容器管理方法、装置及计算设备
CN114237820A (zh) * 2021-12-07 2022-03-25 中兴通讯股份有限公司 一种容器预加载方法、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101695050A (zh) * 2009-10-19 2010-04-14 浪潮电子信息产业股份有限公司 一种基于网络流量自适应预测的动态负载均衡方法
CN101820384A (zh) * 2010-02-05 2010-09-01 浪潮(北京)电子信息产业有限公司 一种集群服务动态分配方法及装置
US8966084B2 (en) * 2011-06-17 2015-02-24 International Business Machines Corporation Virtual machine load balancing
US9716624B2 (en) * 2012-02-07 2017-07-25 Cloudera, Inc. Centralized configuration of a distributed computing cluster

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201718A (zh) * 2016-07-05 2016-12-07 北京邮电大学 一种基于负载预测的云计算资源动态伸缩方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101695050A (zh) * 2009-10-19 2010-04-14 浪潮电子信息产业股份有限公司 一种基于网络流量自适应预测的动态负载均衡方法
CN101820384A (zh) * 2010-02-05 2010-09-01 浪潮(北京)电子信息产业有限公司 一种集群服务动态分配方法及装置
US8966084B2 (en) * 2011-06-17 2015-02-24 International Business Machines Corporation Virtual machine load balancing
US9716624B2 (en) * 2012-02-07 2017-07-25 Cloudera, Inc. Centralized configuration of a distributed computing cluster

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于云计算架构的虚拟机池管理系统;倪珍;《中国优秀硕士学位论文全文数据库信息科技辑》;20130315;第6-47页 *
支持动态调度和负载均衡的云资源管理平台D-Cloud的设计与实现;刘坚;《中国优秀硕士学位论文全文数据库信息科技辑》;20160212(第2期);第2-42页 *

Also Published As

Publication number Publication date
CN108228334A (zh) 2018-06-29

Similar Documents

Publication Publication Date Title
Bhattacharjee et al. Barista: Efficient and scalable serverless serving system for deep learning prediction services
JP3817541B2 (ja) プログラムに基づいた応答時間ベースの作業負荷分配技法
CN113656179B (zh) 云计算资源的调度方法及装置、电子设备和存储介质
CN111225050B (zh) 云计算资源分配方法及装置
CN111708627A (zh) 基于分布式调度框架的任务调度方法以及装置
CN109725991B (zh) 任务处理方法、装置、设备及可读存储介质
CN112817721B (zh) 基于人工智能的任务调度方法、装置、计算机设备和介质
CN111984385A (zh) 基于装饰bim模型的任务调度方法和任务调度装置
CN106407395A (zh) 数据查询的处理方法及装置
CN108228334B (zh) 一种容器集群扩展的方法和装置
CN115421920A (zh) 金融产品的任务管理方法及装置、电子设备、存储介质
CN111625469A (zh) 压力测试方法、装置、设备及计算机可读存储介质
CN112885327B (zh) 语音合成方法、装置、设备及存储介质
GB2607475A (en) Generating a scaling plan for external systems during cloud tenant onboarding/offboarding
CN114860460B (zh) 一种数据库加速的方法、装置、计算机设备
CN113254200B (zh) 资源编排方法及智能体
CN115756756A (zh) 基于gpu虚拟化技术的显存资源分配方法、装置和设备
CN113742059B (zh) 任务分配方法、装置、计算机设备和存储介质
CN115712501A (zh) 一种适用于工程机械的云仿真方法和系统
CN111831425B (zh) 一种数据处理方法、装置及设备
CN112835931A (zh) 一种确定数据获取频率的方法及装置
CN111353696A (zh) 一种资源池的调度方法及装置
CN113900800B (zh) 一种边缘计算系统的分配方法
CN114780202A (zh) 一种函数计算资源池调整方法、装置、设备及介质
CN118093043A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100032 Beijing Finance Street, No. 29, Xicheng District

Applicant after: CHINA MOBILE COMMUNICATIONS GROUP Co.,Ltd.

Address before: 100032 Beijing Finance Street, No. 29, Xicheng District

Applicant before: China Mobile Communications Corp.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200407

Address after: Room 1006, building 16, yard 16, Yingcai North Third Street, future science city, Changping District, Beijing 100032

Applicant after: China Mobile Information Technology Co.,Ltd.

Applicant after: CHINA MOBILE COMMUNICATIONS GROUP Co.,Ltd.

Address before: 100032 Beijing Finance Street, No. 29, Xicheng District

Applicant before: CHINA MOBILE COMMUNICATIONS GROUP Co.,Ltd.

GR01 Patent grant
GR01 Patent grant