Kubernetes集群容器组调度方法、装置及介质制造方法及图纸

技术编号:37851792 阅读:6 留言:0更新日期:2023-06-14 22:42
本发明专利技术涉及一种Kubernetes集群容器组调度方法、装置及介质,方法包括:判断是否将磁盘IO繁忙程度作为调度条件;若是,则获取各个节点的磁盘指标信息,计算节点的磁盘IO繁忙程度;基于磁盘IO繁忙程度对每个节点进行等级划分,赋予对应节点评分值;根据节点的评分值确定容器组调度的目标节点;将容器组调度至目标节点执行创建动作并启动。本发明专利技术在Kubernetes原有的调度策略基础上扩展了基于磁盘特性的调度,将磁盘IO繁忙程度作为容器调度的条件,实现Kubernetes集群下容器组的可控调度,有利于将容器组调度到最优的节点上处理,保持Kubernetes集群处于最佳状态,使得资源利用更加合理化。加合理化。加合理化。

【技术实现步骤摘要】
Kubernetes集群容器组调度方法、装置及介质


[0001]本专利技术涉及计算机
,尤其是指一种Kubernetes集群容器组调度方法、装置及介质。

技术介绍

[0002]随着以微服务和容器(container)为核心的云原生(cloud native landscape)技术的兴起,越来越多的领域开始向容器技术迁移。经过几年时间的高速发展,在容器编排领域,kuberne tes(简称"k8s")已经成为事实上的标准。
[0003]当前的Kubernetes Scheduler具有丰富的调度策略,其将待发布到集群中的容器,经过调度器服务评估各个节点状态,来挑选出满足容器运行的节点,进而将容器发布到指定节点,因此基本能满足普通容器组(Pod)的调度需求。但是在Pod需要存储卷(volume)的场景中,volume本身的需求属性只有少部分条件列入调度考虑,并没有考虑磁盘IO的情况,因此无法很好的满足对于一些需要特殊volume的场景,比如数据库服务Mysql和Redis,它们对磁盘的读写性能极为敏感,当他们运行在kubernetes环境中时,如果容器调度到磁盘IO十分繁忙的节点会导致数据库服务无法及时响应请求,进而影响正常的业务。

技术实现思路

[0004]为此,本专利技术所要解决的技术问题在于克服现有技术中存在的技术缺陷,而提出一种Kubernetes集群容器组调度方法、装置及介质,其在Kubernetes原有的调度策略基础上扩展了基于磁盘特性的调度,将磁盘IO繁忙程度作为容器调度的条件,从而使得Kubernetes 集群的节点可以达到业务上的最优且可以控制,实现Kubernetes集群下容器组的可控调度,有利于将容器组调度到最优的节点上处理,保持Kubernetes集群处于最佳状态,使得资源利用更加合理化。
[0005]为解决上述技术问题,本专利技术提供了一种Kubernetes集群容器组调度方法,包括:当接收到待处理容器组调度请求时,判断是否将磁盘IO繁忙程度作为调度条件;若否,则按照Kubernetes原有调度策略对待处理容器组进行调度;若是,则获取Kubernetes集群中各个节点的磁盘指标信息,基于磁盘指标信息计算每个节点的磁盘IO繁忙程度;基于磁盘IO繁忙程度对每个节点进行等级划分,并根据等级划分结果赋予对应节点一评分值;在节点资源信息和节点存储资源信息均满足的情况下,根据节点的评分值确定所述待处理容器组调度的目标节点;将所述待处理容器组调度至所述目标节点执行创建动作并启动。
[0006]在本专利技术的一个实施例中,获取Kubernetes集群中各个节点的磁盘指标信息,包括:通过metrics接口获取所有节点的磁盘指标信息,其中所述磁盘指标信息包括存
储卷读字节总数、存储卷读字节花费时间,存储卷写字节总数和存储卷写字节花费时间。
[0007]在本专利技术的一个实施例中,基于磁盘指标信息计算每个节点的磁盘IO繁忙程度,包括:计算每个节点的磁盘IO繁忙程度的公式为:其中,表示节点的磁盘IO繁忙程度,表示所有存储卷读字节总数之和,表示所有存储卷读字节花费时间总和,表示所有存储卷写字节总数之和,表示所有存储卷写字节花费时间总和。在本专利技术的一个实施例中,基于磁盘IO繁忙程度对每个节点进行等级划分,包括:将节点等级划分为繁忙、中等和空闲三个级别;根据计算得到的每个节点的磁盘IO繁忙程度,将其划分到对应的等级。
[0008]在本专利技术的一个实施例中,根据等级划分结果赋予对应节点一评分值,包括:当待处理容器组请求调度至空闲节点,则依次对繁忙、中等和空闲的节点按照升序的方式赋予评分值;当待处理容器组请求调度至繁忙节点,则依次对繁忙、中等和空闲的节点按照降序的方式赋予评分值。
[0009]此外,本专利技术还提供一种Kubernetes集群容器组调度装置,包括调度器Scheduler;当接收到待处理容器组调度请求时,所述Scheduler判断是否将磁盘IO繁忙程度作为调度条件;若否,则按照Kubernetes原有调度策略对待处理容器组进行调度;若是,则所述Scheduler获取Kubernetes集群中各个节点的磁盘指标信息,基于磁盘指标信息计算每个节点的磁盘IO繁忙程度;基于磁盘IO繁忙程度对每个节点进行等级划分,并根据等级划分结果赋予对应节点一评分值;在节点资源信息和节点存储资源信息均满足的情况下,根据节点的评分值确定所述待处理容器组调度的目标节点;将所述待处理容器组调度至所述目标节点执行创建动作并启动。
[0010]在本专利技术的一个实施例中,所述Scheduler用于通过metrics接口获取所有节点的磁盘指标信息,其中所述磁盘指标信息包括存储卷读字节总数、存储卷读字节花费时间,存储卷写字节总数和存储卷写字节花费时间。
[0011]在本专利技术的一个实施例中,所述Scheduler用于基于磁盘指标信息计算每个节点的磁盘IO繁忙程度,其中,计算每个节点的磁盘IO繁忙程度的公式为:其中,表示节点的磁盘IO繁忙程度,表示所有存储卷读字节总数之和,表示所有存储卷读字节花费时间总和,表示所有存储卷写字节总数之和,表示所有存储卷写字节花费时间总和。在本专利技术的一个实施例中,所述Scheduler用于将节点等级划分为繁忙、中等和空闲三个级别;所述Scheduler还用于根据计算得到的每个节点的磁盘IO繁忙程度,将其划分到对应的等级。
[0012]并且,本专利技术还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在
于:该程序被处理器执行时实现上述所述方法的步骤。
[0013]本专利技术的上述技术方案相比现有技术具有以下优点:本专利技术所述的一种Kubernetes集群容器组调度方法,其在Kubernetes原有的调度策略基础上扩展了基于磁盘特性的调度,将磁盘IO繁忙程度作为容器调度的条件,通过该调度策略可以将容器调度到磁盘IO不繁忙的节点,当然也存在对磁盘IO不敏感的业务,那么也可以通过该调度策略将该类型业务调度到磁盘IO繁忙的节点,以便为后续需要磁盘IO的服务让出节点,从而使得Kubernetes 集群的节点可以达到业务上的最优且可以控制,实现Kubernetes集群下容器组的可控调度,有利于将容器组调度到最优的节点上处理,保持Kubernetes集群处于最佳状态,使得资源利用更加合理化。
[0014]此外,本专利技术还针对Kubernetes集群容器组调度方法提供了相应的实现装置及计算机可读存储介质,进一步使得所述方法更具有实用性,所述装置及计算机可读存储介质具有相应的优点。
附图说明
[0015]为了使本专利技术的内容更容易被清楚的理解,下面根据本专利技术的具体实施例并结合附图,对本专利技术作进一步详细的说明。
[0016]图1是本专利技术提出的一种Kubernetes集群容器组调度方法的流程示意图。
[0017]图2是本专利技术提出的基于Kubernetes集群容器组调度方法的多端交互场景示意图。
[0018]图3是本专利技术提出的一种Kubernetes集本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种Kubernetes集群容器组调度方法,其特征在于:包括:当接收到待处理容器组调度请求时,判断是否将磁盘IO繁忙程度作为调度条件;若否,则按照Kubernetes原有调度策略对待处理容器组进行调度;若是,则获取Kubernetes集群中各个节点的磁盘指标信息,基于磁盘指标信息计算每个节点的磁盘IO繁忙程度;基于磁盘IO繁忙程度对每个节点进行等级划分,并根据等级划分结果赋予对应节点一评分值;在节点资源信息和节点存储资源信息均满足的情况下,根据节点的评分值确定所述待处理容器组调度的目标节点;将所述待处理容器组调度至所述目标节点执行创建动作并启动;其中所述磁盘指标信息包括存储卷读字节总数、存储卷读字节花费时间,存储卷写字节总数和存储卷写字节花费时间;计算每个节点的磁盘IO繁忙程度的公式为:其中,表示节点的磁盘IO繁忙程度,表示所有存储卷读字节总数之和,表示所有存储卷读字节花费时间总和,表示所有存储卷写字节总数之和,表示所有存储卷写字节花费时间总和。2.根据权利要求1所述的一种Kubernetes集群容器组调度方法,其特征在于:获取Kubernetes集群中各个节点的磁盘指标信息,包括:通过metrics接口获取所有节点的磁盘指标信息。3.根据权利要求1或2所述的一种Kubernetes集群容器组调度方法,其特征在于:基于磁盘IO繁忙程度对每个节点进行等级划分,包括:将节点等级划分为繁忙、中等和空闲三个级别;根据计算得到的每个节点的磁盘IO繁忙程度,将其划分到对应的等级。4.根据权利要求3所述的一种Kubernetes集群容器组调度方法,其特征在于:根据等级划分结果赋予对应节点一评分值,包括:当待处理容器组请求调度至空闲节点,则依次对繁忙、中等和空闲的节点按照升序的方式赋予评分值;当待处理容器组请求调度至繁忙节点...

【专利技术属性】
技术研发人员:花磊付少松崔骥赵安全王亮张凯张振华
申请(专利权)人:江苏博云科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1