一种基于kubernetes的物理资源调度方法及系统技术方案

技术编号:20049870 阅读:40 留言:0更新日期:2019-01-09 05:49
本发明专利技术涉及一种基于kubernetes的物理资源调度方法及系统,属于云计算领域。该方法包括:S1:当识别到承载业务的云服务Pod的资源请求时,分析确定业务类型和优先级;S2:收集各节点的中央处理器资源、内存资源、网络资源和磁盘资源信息及使用情况;S3:计算所有节点的资源评分;S4:对节点的资源评分进行排序;S5:将m个Pod调度到从N个待选节点中优选的m个节点上。该系统包括业务分析模块、资源信息采集模块、参数配置模块、评分模块和调度模块。本发明专利技术考虑了各类业务对节点CPU、内存、网卡带宽、磁盘容量等资源的不同需求,建立新的节点评分机制,引入了一致性参数,保证同一业务中各Pod的一致性需求。

【技术实现步骤摘要】
一种基于kubernetes的物理资源调度方法及系统
本专利技术属于云计算领域,涉及一种基于kubernetes的物理资源调度方法及资源调度系统。
技术介绍
kubernetes是由Google研发并开源的一个用于管理跨宿主机的容器集群的分布式系统引擎,它构建于Docker之上,允许用户创建和管理Docker容器集群,并为容器化的应用集群提供资源调度、自动化部署运营、服务发现、弹性伸缩、高可用等一整套功能。Pod是Kubernetes创建或部署的最小的基本单位,一个Pod代表集群上正在运行的一个工作单元,可以包含多个容器进程。kubernetes调度的核心就是如何从集群中选择合适的节点分配给Pod。当前kubernetes的资源调度算法大多基于CPU和内存使用率选择资源评分最高的节点,如Kubernetes内置的LeastRequestedPriority算法、公开专利CN106027643A。然而在异构机群中,节点的CPU和内存等通常都存在型号差异,单纯依靠CPU和内存指标不足以评价节点的性能。所以,在分配节点时不仅需要考虑CPU和内存两类资源,还需考虑节点的网卡带宽、磁盘容量等因素。与此同时,当前调度算法依次对单个Pod进行调度,忽略了同一业务中各Pod的一致性需求,更没有考虑不同业务对资源需求的差异性。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种基于kubernetes的物理资源调度方法及资源调度系统,该方法及系统考虑了各类业务对节点CPU、内存、网卡带宽、磁盘容量等资源的不同需求,建立新的节点评分机制,同时首次引入了一致性参数,用以保证同一业务中各Pod的一致性需求。因此,该方法及系统特别适用于多业务环境下的异构云。为达到上述目的,本专利技术提供如下技术方案:1、一种基于kubernetes的物理资源调度方法,适用于异构机型组成的混合云中资源的合理调度,该方法具体包括以下步骤:S1:当识别到承载业务的云服务Pod的资源请求时,确定其业务类型T和优先级P;S2:收集各节点的中央处理器资源、内存资源、网络资源和磁盘资源信息及使用情况;S3:计算所有节点的资源评分;S4:对节点的资源评分进行排序;按照评分从大到小的序列Q[N],其中Q[i]为第i个节点的资源评分,N为节点总数;S5:假设某业务在kubernetes中需创建m个Pod;则需将m个Pod调度到从N个待选节点中优选的m个节点上。进一步,步骤S1中,所述业务类型T∈{1,2,3,...,Tmax},所述优先级P∈{1,2,3,...,Pmax},其中Tmax为业务类型总数,Pmax为最高优先级;P值越大,业务优先级越高;所述步骤S1具体包括:S11:依据以往大量业务对中央处理器资源、内存资源、网络资源和磁盘资源的需求量为特征,通过K均值聚类算法分析,得到Tmax类业务,及各类的聚类中心;S12:当识别到新任务到达云服务资源池后,通过计算K均值聚类算法,即计算新业务到各聚类中心的欧氏距离,进而确定新业务的类型T和优先级P。进一步,步骤S3中,所述所有节点的资源评分计算公式为:其中,表示节点i的总评分,和分别表示节点i的中央处理器资源、内存资源、网络资源和磁盘资源评分,wCPU、wmemory、wnetwork和wdisk分别表示对应的权重,wCPU、wmemory、wnetwork和wdisk均不小于0,且wCPU+wmemory+wnetwork+wdisk=1。进一步,异构机型组成的混合云中,(1)定义中央处理器性能最好的节点在完全空闲时其对应的中央处理器资源评分为1,则任意节点的中央处理器资源评分不超过1;所述节点i的中央处理器资源评分计算公式为:其中,f_cpumax表示所有节点中中央处理器的最高主频,f_cpui表示节点i的中央处理器的主频,R_cpui表示节点i的中央处理器的使用率,且0≤R_cpui≤100%;显然,任意节点的中央处理器资源评分均介于0~1之间,且性能越好,使用率越少,评分越高。(2)定义内存性能最好的节点在完全空闲时其对应的内存资源评分为1,则任意节点的内存资源评分不超过1;所述节点i的内存资源评分计算公式为:其中,f_memorymax表示所有节点中最大的内存容量,f_memoryi表示节点i的内存大小,R_memoryi表示节点i的内存使用率,且0≤R_memoryi≤100%;显然,任意节点的内存资源得分均介于0~1之间,且容量越大,使用率越少,评分越高。(3)定义网卡性能最好的节点在完全空闲时其对应的网络资源评分为1,则任意节点的网络资源得分不评过1;所述节点i的网络资源评分计算公式为:其中,f_networkmax表示所有节点中最大的网络带宽,f_networki表示节点i的最大带宽,R_networki表示节点i的带宽使用率,且0≤R_networki≤100%;显然,任意节点的网络资源得分均介于0~1之间,且最大带宽越大,使用率越少,评分越高。(4)定义磁盘性能最好的节点在完全空闲时其对应的磁盘资源评分为1,则任意节点的磁盘资源评分不超过1;所述节点i的磁盘资源得评分计算公式为:其中,f_diskmax表示所有节点中最大的磁盘容量,f_diski表示节点i的磁盘大小,R_diski表示节点i的磁盘的使用率,且0≤R_diski≤100%;显然,任意节点的磁盘得分均介于0~1之间,且容量越大,使用率越少,评分越高。进一步,不同类型的业务对资源调度的需要不同,如计算密集型的业务对中央处理器和内存资源的要求更高,而I/O密集型的业务对网络资源的要求更高。计算资源总评分时,选择业务类型T的对应一组权值wCPU,wmemory,wnetwork和wdisk;根据业务类型的K均值聚类结果,对应于相应的权重值参数;所述权重值参数由用户根据业务类型灵活配置,在初始时给定默认值。进一步,所述步骤S5具体包括:S51:根据业务的优先级P确定其对应的一致性评价阀值CP;所述一致性评价阈值由用户灵活配置;S52:优选出满足一致性评价标准的m个最佳节点;步骤S52中所述的优选出满足一致性评价标准的m个最佳节点具体过程为:S521:初始时,i=1;S522:若i大于N-m+1,则返回空并结束优选过程,否则从i开始,依次选取Q[N]中的前m个值,即Q[i],Q[i+1],Q[i+2],…,Q[i+m-1];S523:计算选取的m个值的一致性;定义一致性为其方差σ,即其中S524:比较σ与一致性评价阈值CP的大小:若σ大于一致性评价阈值CP,则令i加1,重复步骤S522至S524;若σ小于或等于一致性评价阈值CP,则返回此时的i值,并结束优选过程。通过上述步骤,即可优选出第i号至第i+m-1号节点,由于优选序列Q[N]是从大到小排列的,显然通过上述过程优选的m个节点是满足一致性评价标准的m个最佳节点。2、一种基于kubernetes的物理资源调度系统,包括业务分析模块、资源信息采集模块、参数配置模块、评分模块和调度模块;所述业务分析模块:用于分析业务的类型和优先级,并将分析结果分别传送至参数配置模块和评分模块;所述资源信息采集模块:负责收集各节点的资源使用状态;包括:中央处理器资源、内存资源、网络资源和磁盘资源占用情况;本文档来自技高网...

【技术保护点】
1.一种基于kubernetes的物理资源调度方法,其特征在于,该方法适用于异构机型组成的混合云中资源的合理调度,具体包括以下步骤:S1:当识别到承载业务的云服务Pod的资源请求时,确定其业务类型T和优先级P;S2:收集各节点的中央处理器资源、内存资源、网络资源和磁盘资源信息及使用情况;S3:计算所有节点的资源评分;S4:对节点的资源评分进行排序;按照评分从大到小的序列Q[N],其中Q[i]为第i个节点的资源评分,N为节点总数;S5:假设某业务在kubernetes中需创建m个Pod;则需将m个Pod调度到从N个待选节点中优选的m个节点上。

【技术特征摘要】
1.一种基于kubernetes的物理资源调度方法,其特征在于,该方法适用于异构机型组成的混合云中资源的合理调度,具体包括以下步骤:S1:当识别到承载业务的云服务Pod的资源请求时,确定其业务类型T和优先级P;S2:收集各节点的中央处理器资源、内存资源、网络资源和磁盘资源信息及使用情况;S3:计算所有节点的资源评分;S4:对节点的资源评分进行排序;按照评分从大到小的序列Q[N],其中Q[i]为第i个节点的资源评分,N为节点总数;S5:假设某业务在kubernetes中需创建m个Pod;则需将m个Pod调度到从N个待选节点中优选的m个节点上。2.根据权利要求1所述的一种基于kubernetes的物理资源调度方法,其特征在于,步骤S1中,所述业务类型T∈{1,2,3,...,Tmax},所述优先级P∈{1,2,3,...,Pmax},其中Tmax为业务类型总数,Pmax为最高优先级;P值越大,业务优先级越高;所述步骤S1具体包括:S11:依据以往大量业务对中央处理器资源、内存资源、网络资源和磁盘资源的需求量为特征,通过K均值聚类算法分析,得到Tmax类业务,及各类的聚类中心;S12:当识别到新任务到达云服务资源池后,通过计算K均值聚类算法,即计算新业务到各聚类中心的欧氏距离,进而确定新业务的类型T和优先级P。3.根据权利要求2所述的一种基于kubernetes的物理资源调度方法,其特征在于,步骤S3中,所述所有节点的资源评分计算公式为:其中,表示节点i的总评分,和分别表示节点i的中央处理器资源、内存资源、网络资源和磁盘资源评分,wCPU、wmemory、wnetwork和wdisk分别表示对应的权重,wCPU、wmemory、wnetwork和wdisk均不小于0,且wCPU+wmemory+wnetwork+wdisk=1。4.根据权利要求3所述的一种基于kubernetes的物理资源调度方法,其特征在于,异构机型组成的混合云中,(1)定义中央处理器性能最好的节点在完全空闲时其对应的中央处理器资源评分为1,则任意节点的中央处理器资源评分不超过1;所述节点i的中央处理器资源评分计算公式为:其中,f_cpumax表示所有节点中中央处理器的最高主频,f_cpui表示节点i的中央处理器的主频,R_cpui表示节点i的中央处理器的使用率,且0≤R_cpui≤100%;(2)定义内存性能最好的节点在完全空闲时其对应的内存资源评分为1,则任意节点的内存资源评分不超过1;所述节点i的内存资源评分计算公式为:其中,f_memorymax表示所有节点中最大的内存容量,f_memoryi表示节点i的内存大小,R_memoryi表示节点i的内存使用率,且0≤R_memoryi≤100%;(3)定义网卡性能最好的节点在完全空闲时其对应的网络资源评分为1,则任意节点的网络资源得分不超过1;所述节点i的网络资源评分计算公式为:其中,f_networkmax表示所有节点中最大的网络带宽,f_networki表示节点i的最大带宽,R_networki表示节点i的带宽使用率,且0≤R_networki≤100%;(4)定义磁盘性能最好的节点在完全空闲时其对应的磁盘资源评分为1,则任意节点的磁盘资源评分不超过1;所述节点i的磁盘资源得评分计算公式为:其中,f_diskmax表示所有节点中最大的磁盘容量,f_diski表示节点i的磁盘大小,R_diski表示节点i的磁盘的使用率,且0≤R_diski≤100%。5.根据权利要求4所述的一种基于kubernetes...

【专利技术属性】
技术研发人员:蒋溢祝清意邹洋熊安萍
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:重庆,50

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

1