CN115665158A - 一种容器集群服务动态管理方法及系统 - Google Patents
一种容器集群服务动态管理方法及系统 Download PDFInfo
- Publication number
- CN115665158A CN115665158A CN202211342432.1A CN202211342432A CN115665158A CN 115665158 A CN115665158 A CN 115665158A CN 202211342432 A CN202211342432 A CN 202211342432A CN 115665158 A CN115665158 A CN 115665158A
- Authority
- CN
- China
- Prior art keywords
- workload
- scheduling
- resource
- node
- resources
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 26
- 230000007246 mechanism Effects 0.000 claims abstract description 50
- 238000012544 monitoring process Methods 0.000 claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 19
- 238000004458 analytical method Methods 0.000 claims abstract description 4
- 230000001960 triggered effect Effects 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种容器集群服务动态管理方法及系统,属于云计算技术领域,基于信息熵方法实现加权分析服务动态调度机制,包括监控模块和调度模块,监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,当工作负载某一资源使用情况突增,超过设定阈值,则启动调度模块;调度模块通过基于信息熵的算法计算触发启动调度模块的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。本发明能够解决当前运物理机的整体资源利用率比较低的问题。
Description
技术领域
本发明涉及云计算技术领域,具体地说是一种容器集群服务动态管理方法及系统。
背景技术
虚拟化技术已经成为云计算领域中不可或缺的一部分。容器化技术作为一种轻量虚拟化技术,相较于虚拟化方式,可以更加细粒度地利用资源。伴随着以Docker和Kubernetes为代表的容器工具迅速发展,容器化技术可以快速构建容器,所提供的标准镜像可以快速构建容器,实现秒级启动,在版本保存上更加轻便和低成本。
Docker和Kubernetes的资源管理机制都提供了默认服务调度设置和手动服务调度配置这两种途径,用户在创建容器时可以使用默认服务调度配置,也可以根据服务需求CPU、内存和I/O资源等,选择节点调度,但是无法在运行过程中根据应用容器的实际资源需求来调整服务调度。Kubernetes对所有容器服务的调度采用打分制度,不区分其中运行的应用类型。然而,在实时型应用容器和批处理型应用容器同时运行时,可能会由于资源分配不足或者不平衡导致实时型应用的性能无法达到服务要求;在服务强度(每秒最大请求数)变化时,无法及时动态调整。另外,不限制容器实例的增加,其占用的总资源可能会超过物理机资源限制,使得一些正常运行的容器实例由于资源不足而异常中断;当运行中的容器实例都偏向使用某种单一资源时,会造成该资源竞争激烈,而其他资源都处于空闲状态的现象,导致物理机的整体资源利用率比较低。
发明内容
本发明的技术任务是针对以上不足之处,提供一种容器集群服务动态管理方法及系统,能够解决当运行中的容器实例都偏向使用某种单一资源时,会造成该资源竞争激烈,而其他资源都处于空闲状态的现象,导致物理机的整体资源利用率比较低的问题。
本发明解决其技术问题所采用的技术方案是:
一种容器集群服务动态管理方法,基于信息熵方法实现加权分析服务动态调度机制,包括监控模块和调度模块,
监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,当工作负载某一资源使用情况突增,超过设定阈值,则启动调度模块;
调度模块通过基于信息熵的算法计算触发启动调度模块的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。相比kubernetes本身的调度方法,负载会优先调度到和其可利用资源相似的节点,而不是剩余资源最多和可利用资源分布最均匀的节点。
把信息中排除了冗余后的平均信息量称为“信息熵”,该方法基于信息熵实现容器集群服务监控和动态调度,解决运行中工作负载的动态调度问题,弹性伸缩调度负载,负载占有资源持续上升时,进行自适应扩容,并进行容器的重新调度,解决当运行中的容器实例都偏向使用某种单一资源时,会造成该资源竞争激烈,而其他资源都处于空闲状态的现象,导致物理机的整体资源利用率比较低的问题。
进一步的,监控模块采用List-Watch的缓存机制,当工作负载某一资源使用情况突增超过了预先设置好的阈值,则触发List-Watch机制,调度模块开始工作。
优选的,所述监控模块包括List-Watch缓存机制和agent触发器,
List-Watch缓存机制从监控中心获取节点资源剩余情况和工作负载资源使用情况;当List-Watch缓存机制监控到监控中心节点和工作负载资源使用情况发生变化时,则触发agent触发器的触发机制,触发机制根据具体资源使用情况变化大小判断是否超出次环境设置的阈值,超出阈值时,则触发工作负载的重新调度机制,请求调度模块,进行工作负载的动态调度。
进一步的,所述算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,其实现过程如下:
以各个节点资源使用情况为一个数据集,设数据集规格为N×C,其中N代表节点数,C代表资源类型数;数据集中资源数据的不均匀性越大,资源数据的信息熵就越大;
将公式(2)带入到各个节点和工作负载资源使用情况的计算,得出最适合工作负载调度的节点。
该调度算法在建模的时候,加入时间元素,从时间轴合理预测了节点资源使用情况,计算出节点使用资源情况是持续上升,还是周期往复,合理预测节点资源未来一段时间使用情况,进行预测试调度。
优选的,所述资源使用情况包括各个节点cpu、内存、存储、磁盘使用、网络请求资源使用情况。
本发明还要求保护一种容器集群服务动态管理系统,基于容器集群设计controller,controller包括监控模块和调度模块,
监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,当工作负载某一资源使用情况突增,超过设定阈值,则启动调度模块;
调度模块通过基于信息熵的算法计算触发启动调度模块的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。
进一步的,所述监控模块包括List-Watch缓存机制和agent触发器,
List-Watch缓存机制从监控中心获取节点资源剩余情况和工作负载资源使用情况;当List-Watch缓存机制监控到监控中心节点和工作负载资源使用情况发生变化时,则触发agent触发器的触发机制,所述触发机制根据具体资源使用情况变化大小判断是否超出此环境设置的阈值,超出阈值时,则触发工作负载的重新调度机制,请求调度模块,进行工作负载的动态调度。
优选的,所述调度模块包括算法子模块和调度器,算法子模块基于信息熵的原理计算出适合工作负载调度的节点,调度器负责把工作负载调度到指定节点。
进一步的,所述算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,其实现过程如下:
以各个节点资源使用情况为一个数据集,设数据集规格为N×C,其中N代表节点数,C代表资源类型数;数据集中资源数据的不均匀性越大,资源数据的信息熵就越大;
将公式(2)带入到各个节点和工作负载资源使用情况的计算,得出最适合工作负载调度的节点。
其中,所述资源使用情况包括各个节点cpu、内存、存储、磁盘使用、网络请求资源使用情况。
本发明还要求保护一种容器集群服务动态管理装置,该装置能够实现上述的容器集群服务动态管理方法。
本发明的一种容器集群服务动态管理方法及系统与现有技术相比,具有以下有益效果:
该方法基于信息熵实现容器集群服务监控和动态调度,解决运行中工作负载的动态调度问题,相比kubernetes本身的调度方法,负载会优先调度到和其可利用资源相似的节点,而不是剩余资源最多和可利用资源分布最均匀的节点;
能够实现弹性伸缩调度负载,负载占有资源持续上升时,进行自适应扩容,并进行容器的重新调度;
调度算法在建模的时候,加入时间元素,从时间轴合理预测了节点资源使用情况,计算出节点使用资源情况是持续上升,还是周期往复,合理预测节点资源未来一段时间使用情况,进行预测试调度。
附图说明
图1是本发明实施例提供的容器集群服务动态管理方法架构示图;
图2是本发明实施例提供的监控模块的流程示图;
图3是本发明实施例提供的调度模块的流程示图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明实施例提供了一种容器集群服务动态管理方法,基于容器集群设计一个controller,controller包括监控模块和调度模块,
监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,采用List-Watch的缓存机制,当工作负载某一资源使用情况突增超过了预先设置好的阈值,则触发List-Watch机制,调度模块开始工作;
调度模块通过基于信息熵的算法计算触发List-Watch机制的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,防止某一资源竞争激烈,导致其他资源空闲的问题。包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。相比kubernetes本身的调度方法,负载会优先调度到和其可利用资源相似的节点,而不是剩余资源最多和可利用资源分布最均匀的节点。
如图2所示,所述监控模块包括List-Watch缓存机制和agent触发器,
List-Watch缓存机制从监控中心获取节点资源剩余情况和工作负载资源使用情况,主要监控CPU、内存、存储、I/O等资源使用情况;当List-Watch缓存机制监控到监控中心节点和工作负载资源使用情况发生变化时,则触发agent触发器的触发机制,触发机制根据具体资源使用情况变化大小判断是否超出次环境设置的阈值,超出阈值时,则触发工作负载的重新调度机制,请求controller的调度模块,进行工作负载的动态调度。
如图3所示,调度模块包括算法子模块和调度器,所述算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。
引入基于信息熵的相似度算法对各个节点和工作负载此对资源利用情况进行建模分析,具体建模思路如下:
各个节点资源使用情况是不统一,每种类型资源对工作负载运行的影响程度也是不同,所以引入信息熵的概念应用到权重的计算上。这里我们以各个节点cpu、内存、存储、磁盘使用、网络请求等资源使用情况为一个数据集,假设数据集规格为N×C(N代表节点数,C代表资源类型数)。数据集中资源数据的不均匀性越大,资源数据的信息熵就越大。
这里p(ak,t)是属性值ak,t的概率,分子表示中的资源使用值与ak,t相等的相似度。N是数据集中的节点总数。观察公式(1),可以注意到如果中值的数值rk非常大,那么资源类型的信息熵也会很高。这和实际情况是不一样的。为了降低太多不同值甚至唯一值对资源使用情况的影响,算法重新定义了资源类型的信息熵
将公式(3)带入到各个节点和工作负载资源使用情况的计算,得出最适合工作负载调度的节点。
该调度算法在建模的时候,加入时间元素,从时间轴合理预测了节点资源使用情况,计算出节点使用资源情况是持续上升,还是周期往复,合理预测节点资源未来一段时间使用情况,进行预测试调度。
本发明实施例还提供一种容器集群服务动态管理系统,基于容器集群设计controller,controller包括监控模块和调度模块,
监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,当工作负载某一资源使用情况突增,超过设定阈值,则启动调度模块。
所述监控模块包括List-Watch缓存机制和agent触发器,
List-Watch缓存机制从监控中心获取节点资源剩余情况和工作负载资源使用情况;当List-Watch缓存机制监控到监控中心节点和工作负载资源使用情况发生变化时,则触发agent触发器的触发机制,所述触发机制根据具体资源使用情况变化大小判断是否超出此环境设置的阈值,超出阈值时,则触发工作负载的重新调度机制,请求调度模块,进行工作负载的动态调度。
调度模块通过基于信息熵的算法计算触发启动调度模块的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。
所述调度模块包括算法子模块和调度器,算法子模块基于信息熵的原理计算出适合工作负载调度的节点,调度器负责把工作负载调度到指定节点。
算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,其实现过程如下:
以各个节点cpu、内存、存储、磁盘使用、网络请求等资源使用情况为一个数据集,设数据集规格为N×C,其中N代表节点数,C代表资源类型数;数据集中资源数据的不均匀性越大,资源数据的信息熵就越大;
将公式(2)带入到各个节点和工作负载资源使用情况的计算,得出最适合工作负载调度的节点。
本发明实施例还提供了一种容器集群服务动态管理装置,该装置能够实现上述实施例中所述的容器集群服务动态管理方法。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (10)
1.一种容器集群服务动态管理方法,其特征在于,基于信息熵方法实现加权分析服务动态调度机制,包括监控模块和调度模块,
监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,当工作负载某一资源使用情况突增,超过设定阈值,则启动调度模块;
调度模块通过基于信息熵的算法计算触发启动调度模块的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。
2.根据权利要求1所述的一种容器集群服务动态管理方法,其特征在于,监控模块采用List-Watch的缓存机制,当工作负载某一资源使用情况突增超过了预先设置好的阈值,则触发List-Watch机制,调度模块开始工作。
3.根据权利要求2所述的一种容器集群服务动态管理方法,其特征在于,所述监控模块包括List-Watch缓存机制和agent触发器,
List-Watch缓存机制从监控中心获取节点资源剩余情况和工作负载资源使用情况;当List-Watch缓存机制监控到监控中心节点和工作负载资源使用情况发生变化时,则触发agent触发器的触发机制,触发机制根据具体资源使用情况变化大小判断是否超出次环境设置的阈值,超出阈值时,则触发工作负载的重新调度机制,请求调度模块,进行工作负载的动态调度。
5.根据权利要求4所述的一种容器集群服务动态管理方法,其特征在于,所述资源使用情况包括各个节点cpu、内存、存储、磁盘使用、网络请求资源使用情况。
6.一种容器集群服务动态管理系统,其特征在于,基于容器集群设计controller,controller包括监控模块和调度模块,
监控模块通过插件采集集群节点和工作负载的资源剩余和使用情况,当工作负载某一资源使用情况突增,超过设定阈值,则启动调度模块;
调度模块通过基于信息熵的算法计算触发启动调度模块的工作负载与集群节点的契合度,对运行中的工作负载进行动态调度,包括基于信息熵的原理计算出适合工作负载调度的节点以及工作负载调度到指定节点,算法子模块计算各个节点剩余资源与所述工作负载使用资源的相似度,相似度最小的节点则是需要调度的节点。
7.根据权利要求6所述的一种容器集群服务动态管理系统,其特征在于,所述监控模块包括List-Watch缓存机制和agent触发器,
List-Watch缓存机制从监控中心获取节点资源剩余情况和工作负载资源使用情况;当List-Watch缓存机制监控到监控中心节点和工作负载资源使用情况发生变化时,则触发agent触发器的触发机制,所述触发机制根据具体资源使用情况变化大小判断是否超出此环境设置的阈值,超出阈值时,则触发工作负载的重新调度机制,请求调度模块,进行工作负载的动态调度。
8.根据权利要求6或7所述的一种容器集群服务动态管理系统,其特征在于,所述调度模块包括算法子模块和调度器,算法子模块基于信息熵的原理计算出适合工作负载调度的节点,调度器负责把工作负载调度到指定节点。
10.一种容器集群服务动态管理装置,其特征在于,该装置能够实现权利要求1至5任一项所述的容器集群服务动态管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211342432.1A CN115665158A (zh) | 2022-10-31 | 2022-10-31 | 一种容器集群服务动态管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211342432.1A CN115665158A (zh) | 2022-10-31 | 2022-10-31 | 一种容器集群服务动态管理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115665158A true CN115665158A (zh) | 2023-01-31 |
Family
ID=84993621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211342432.1A Pending CN115665158A (zh) | 2022-10-31 | 2022-10-31 | 一种容器集群服务动态管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115665158A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117519948A (zh) * | 2023-12-11 | 2024-02-06 | 广东筠诚建筑科技有限公司 | 基于云平台实现建筑施工下的计算资源调整方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918198A (zh) * | 2019-02-18 | 2019-06-21 | 中国空间技术研究院 | 一种基于用户特征预测的仿真云平台负载调度系统及方法 |
CN111813502A (zh) * | 2020-07-10 | 2020-10-23 | 重庆邮电大学 | 面向工业边缘节点的计算资源管理调度方法 |
CN113010270A (zh) * | 2021-04-08 | 2021-06-22 | 桂林电子科技大学 | 基于Kubernetes平台资源动态负载均衡调度方法及系统 |
KR20220006490A (ko) * | 2021-12-29 | 2022-01-17 | 케이웨어 (주) | 워크로드 동적 자원 배치 및 최적화 수행관리를 위한 하이브리드 클라우드 자원 배분 방법 |
CN114675933A (zh) * | 2022-03-29 | 2022-06-28 | 浪潮云信息技术股份公司 | 一种容器集群调度方法、装置、设备、存储介质 |
-
2022
- 2022-10-31 CN CN202211342432.1A patent/CN115665158A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918198A (zh) * | 2019-02-18 | 2019-06-21 | 中国空间技术研究院 | 一种基于用户特征预测的仿真云平台负载调度系统及方法 |
CN111813502A (zh) * | 2020-07-10 | 2020-10-23 | 重庆邮电大学 | 面向工业边缘节点的计算资源管理调度方法 |
CN113010270A (zh) * | 2021-04-08 | 2021-06-22 | 桂林电子科技大学 | 基于Kubernetes平台资源动态负载均衡调度方法及系统 |
KR20220006490A (ko) * | 2021-12-29 | 2022-01-17 | 케이웨어 (주) | 워크로드 동적 자원 배치 및 최적화 수행관리를 위한 하이브리드 클라우드 자원 배분 방법 |
CN114675933A (zh) * | 2022-03-29 | 2022-06-28 | 浪潮云信息技术股份公司 | 一种容器集群调度方法、装置、设备、存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117519948A (zh) * | 2023-12-11 | 2024-02-06 | 广东筠诚建筑科技有限公司 | 基于云平台实现建筑施工下的计算资源调整方法及系统 |
CN117519948B (zh) * | 2023-12-11 | 2024-04-26 | 广东筠诚建筑科技有限公司 | 基于云平台实现建筑施工下的计算资源调整方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mekala et al. | Energy-efficient virtual machine selection based on resource ranking and utilization factor approach in cloud computing for IoT | |
CA2780231C (en) | Goal oriented performance management of workload utilizing accelerators | |
Wolke et al. | More than bin packing: Dynamic resource allocation strategies in cloud data centers | |
US8510745B2 (en) | Dynamic application placement under service and memory constraints | |
US8984523B2 (en) | Method for executing sequential code on the scalable processor at increased frequency while switching off the non-scalable processor core of a multicore chip | |
US9448849B2 (en) | Preventing oscillatory load behavior in a multi-node distributed system | |
US9870269B1 (en) | Job allocation in a clustered environment | |
WO2021159638A1 (zh) | 集群队列资源的调度方法、装置、设备及存储介质 | |
US11436054B1 (en) | Directing queries to nodes of a cluster of a container orchestration platform distributed across a host system and a hardware accelerator of the host system | |
Kimbrel et al. | Dynamic application placement under service and memory constraints | |
US11119563B2 (en) | Dynamic power capping of multi-server nodes in a chassis based on real-time resource utilization | |
Song et al. | A two-stage approach for task and resource management in multimedia cloud environment | |
US10768684B2 (en) | Reducing power by vacating subsets of CPUs and memory | |
CN112052092A (zh) | 一种风险感知的边缘计算任务分配方法 | |
US10715387B1 (en) | System for dynamic provisioning of host devices | |
US11966273B2 (en) | Throughput-optimized, quality-of-service aware power capping system | |
CN115665158A (zh) | 一种容器集群服务动态管理方法及系统 | |
US9384050B2 (en) | Scheduling method and scheduling system for multi-core processor system | |
Magotra et al. | Adaptive computational solutions to energy efficiency in cloud computing environment using VM consolidation | |
Guo | Ant colony optimization computing resource allocation algorithm based on cloud computing environment | |
CN111930516A (zh) | 一种负载均衡方法及相关装置 | |
Ray et al. | Is high performance computing (HPC) ready to handle big data? | |
US20130290669A1 (en) | Physical memory usage prediction | |
CN113742059A (zh) | 任务分配方法、装置、计算机设备和存储介质 | |
CN111858051A (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 |