CN116962417A - 容器云平台的租户健康度确定方法和装置 - Google Patents

容器云平台的租户健康度确定方法和装置 Download PDF

Info

Publication number
CN116962417A
CN116962417A CN202211085957.1A CN202211085957A CN116962417A CN 116962417 A CN116962417 A CN 116962417A CN 202211085957 A CN202211085957 A CN 202211085957A CN 116962417 A CN116962417 A CN 116962417A
Authority
CN
China
Prior art keywords
health
tenant
determining
index
health degree
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
Application number
CN202211085957.1A
Other languages
English (en)
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 Group Guangdong Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Guangdong 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 Group Guangdong Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202211085957.1A priority Critical patent/CN116962417A/zh
Publication of CN116962417A publication Critical patent/CN116962417A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本申请涉及计算机云平台技术领域,提供一种容器云平台的租户健康度确定方法和装置。所述方法包括:确定租户的各个指标的总使用率;根据各个指标的总使用率确定各个指标的健康度;确定各个指标的健康度权重值,以根据各个指标的健康度以及健康度权重值确定租户的健康度。本申请通过计算租户的健康度有助于减少运维人员管理集群的工作量,基于租户的健康度可以预先对集群节点进行资源调度,维持节点均衡,对处于健康状态的租户,可减少巡检次数和工作量,而针对状态不正常的租户,进行重点关注与问题排查,精准定位问题,为租户提供了直观的资源健康状态,租户可根据实际情况,提前对特殊应用进行迁移调度,以应对特殊场景出现的高负载情形。

Description

容器云平台的租户健康度确定方法和装置
技术领域
本申请涉及计算机云平台技术领域,具体涉及一种容器云平台的租户健康度确定方法和装置。
背景技术
在CaaS平台租户管理中,平台运维人员需要对各个容器组或者容器,进行逐一排查,才能发现节点不均衡的问题。在发现问题后,运维人员通常采用“简单”地删除容器方法来调整节点负载,如此可能会对重要业务产生影响,例如正在进行的秒杀业务,负载增高,如果容器被删除或重新调度,会造成短暂性能降级甚至业务中断,影响秒杀业务。对于租户而言,由于不可以直观看到自身资源占用状态,因此很难做预处理,基于此,如何确定租户的健康度是一个亟需解决的问题。
发明内容
本申请实施例提供一种容器云平台的租户健康度确定方法和装置,用以解决确定租户的健康度的问题。
第一方面,本申请实施例提供一种容器云平台的租户健康度确定方法,包括:
确定租户的各个指标的总使用率;
根据各个所述指标的总使用率确定各个所述指标的健康度;
确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
在一个实施例中,所述确定各个所述指标的健康度权重值,包括:
若所述指标为分布式存储,则根据所述分布式存储的历史健康度确定所述分布式存储的健康度权重值;
若所述指标为CPU和内存,则确定所述CPU和所述内存的信息承载量,以基于所述信息承载量以及所述分布式存储的健康度权重值分别确定所述CPU的健康度权重值以及所述内存的健康度权重值。
在一个实施例中,所述确定所述CPU和所述内存的信息承载量,包括:
根据所述CPU的历史健康度确定第一标准差,并根据所述内存的历史健康度确定第二标准差;
根据所述CPU的历史健康度以及内存的历史健康度分别对应的均值,确定所述CPU和所述内存的相关系数;
根据所述相关系数确定所述CPU和所述内存的冲突性系数,以根据所述冲突性系数、所述第一标准差以及所述第二标准差确定所述CPU和所述内存的信息承载量。
在一个实施例中,所述根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度,包括:
若各个所述健康度均大于设定健康度阈值,则将各个所述指标的健康度与各个所述指标的健康度权重值的加权和值作为所述租户的健康度;
若存在至少一个所述健康度小于设定健康度阈值,则根据各个所述指标的健康度确定最小健康度,以基于所述最小健康度以及各个所述指标的健康度确定所述租户的健康度。
在一个实施例中,所述确定租户的各个指标的使用率,包括:
确定所述租户的每个命名空间中各个所述指标在不同时间周期内的使用率;
根据各个所述指标在不同时间周期内的使用率以及各个所述指标的配额信息,确定各个所述指标在不同时间周期内的总使用率。
在一个实施例中,所述根据各个所述指标的总使用率确定各个所述指标的健康度,包括:
确定各个所述指标的总使用率所处的使用率区间,以基于所述使用率区间确定各个所述指标的健康度的确定方式;
根据各个所述指标的总使用率以及各个所述指标的健康度的确定方式,确定各个所述指标的健康度。
在一个实施例中,所述根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度之后,包括:
确定所述租户的健康度所处的预警区间,以基于所述预警区间发送健康度预警提示信息。
第二方面,本申请实施例提供一种容器云平台的租户健康度确定装置,包括:
总使用率确定模块,用于确定租户的各个指标的总使用率;
指标的健康度确定模块,用于根据各个所述指标的总使用率确定各个所述指标的健康度;
租户的健康度确定模块,用于确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述程序时实现第一方面所述的容器云平台的租户健康度确定方法的步骤。
第四方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面所述的容器云平台的租户健康度确定方法的步骤。
本申请实施例提供的容器云平台的租户健康度确定方法和装置,通过确定租户的各个指标的总使用率;根据各个指标的总使用率确定各个指标的健康度;确定各个指标的健康度权重值,以根据各个指标的健康度以及健康度权重值确定租户的健康度。本申请通过计算租户的健康度有助于减少运维人员管理集群的工作量,基于租户的健康度可以预先对集群节点进行资源调度,维持节点均衡,对处于健康状态的租户,可减少巡检次数和工作量,而针对状态不正常的租户,进行重点关注与问题排查,精准定位问题,为租户提供了直观的资源健康状态,租户可根据实际情况,提前对特殊应用进行迁移调度,以应对特殊场景出现的高负载情形。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的容器云平台的租户健康度确定方法的流程示意图;
图2是本申请实施例提供的容器云平台的租户健康度确定装置的结构示意图;
图3是本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例提供的容器云平台的租户健康度确定方法的流程示意图。参照图1,本申请实施例提供一种容器云平台的租户健康度确定方法,可以包括:
步骤100,确定租户的各个指标的总使用率;
需要说明的是,租户包括至少一个命名空间namespace,每个namespace可以看到当前空间下所有的pod资源的占用情况,但无法反映租户所有资源的占用情况,因此无法对租户进行较为全面的资源占用评估。基于此,本申请实施例会计算每个namespace中各个指标的总使用率,即计算每个namespace中各个指标的占用请款,其中,该指标包括CPU、内存、分布式存储(即Ceph存储)中的至少一项。例如,获取平台中各个命名空间namespace的CPU、内存和ceph存储等资源使用信息和配额,然后按15分钟,1小时,6小时,12小时等4个时间颗粒度进行计算得namespace的CPU、内存的资源指标,再通过4个不同周期内的指标均值以及配额信息确定各个指标的总使用率,以更全面的反馈当前租户的容器的服务状态。
步骤200,根据各个所述指标的总使用率确定各个所述指标的健康度;
在确定各个指标的总使用率后,基于各个指标的总使用率确定各个指标的健康度。例如,计算当前ceph存储用量指标,并按照0%-40%,40%-80%,80%-100%三个区间,评估总体的CPU、内存和ceph存储的指标所在区间,根据不同区间设计不同计算公式,计算租户的CPU、内存和ceph存储的健康度。
步骤300,确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
在确定各个指标的健康度后,进一步确定各个指标的健康度权重值,以基于各个指标的健康度以及健康度权重值确定租户的健康度。例如,当各项资源健康度均较高时,采用加权均值的方法计算租户的健康度;如果某项资源健康度超过设置的阈值,则采用惩罚加权算法计算租户的健康度。
本申请实施例提供的容器云平台的租户健康度确定方法,通过确定租户的各个指标的总使用率,然后根据各个指标的总使用率确定各个指标的健康度,确定各个指标的健康度权重值,以根据各个指标的健康度以及健康度权重值确定租户的健康度。基于此,有助于减少运维人员管理集群的工作量,基于租户的健康度可以预先对集群节点进行资源调度,维持节点均衡,对处于健康状态的租户,可减少巡检次数和工作量,而针对状态不正常的租户,进行重点关注与问题排查,精准定位问题,为租户提供了直观的资源健康状态,租户可根据实际情况,提前对特殊应用进行迁移调度,以应对特殊场景出现的高负载情形。
在上述实施例的基础上,所述确定各个所述指标的健康度权重值,包括:若指标为分布式存储,则根据分布式存储的历史健康度确定分布式存储的健康度权重值;若指标为CPU和内存,则确定CPU和内存的信息承载量,以基于信息承载量以及分布式存储的健康度权重值分别确定CPU的健康度权重值以及内存的健康度权重值。
例如,基于租户CPU、内存和ceph存储的历史健康度评估记录,通过机器学习算法,动态调整CPU、内存和ceph存储的健康度权重值,其中,CPU和内存性能指标具有较大的波动性和不稳定性,容易受到内外部的影响,例如某一时刻业务访问量激增或程序处理的事件过于复杂(图片解压缩,图片分析或PDF生成等),导致占用的资源增涨,从而影响健康度值下降,而CPU和内存通常是造成集群负载不均衡的原因,因而其健康度权重值需相对较高。而ceph存储指标具有稳定性增长趋势的特征,可预见性强,其健康度权重值可相对较低。基于此,可设定CPU的健康度和内存的健康度分别占租户的健康度权重范围:20%-70%,而ceph存储的健康度占用租户的健康度权重范围:10%-20%。
计算租户的ceph存储的健康度权重值,根据ceph存储健康度最近三次历史健康度,得出均值,设定健康度40分-80分,对应权重范围:10%-20%。可得计算公式:
c=0.0025x+0.1(10%≤c≤20%)
其中,x表示ceph存储最近三次健康度的均值。
设定CPU的健康度的权重范围:20-70%,内存的健康度的权重范围:20-70%,由于两个健康度数据具有波动性,且数据之间也具有相关关系,因此为计算出最优的权重比,本申请实施例设定选取各自最近的历史健康度,通过一种基于数据波动性的客观赋权法:CRITIC权重法,计算出2个健康度的权重比。
CRITIC权重法通过波动性(对比强度)和冲突性(相关性)指标,分析健康度之间的关联关系,并由对比强度与冲突性指标相乘,进行归一化处理,得到最终的权重比。例如,基于CRITIC权重法计算CPU和内存的信息承载量,以基于信息承载量以及分布式存储的健康度权重值分别确定CPU的健康度权重值以及内存的健康度权重值。如假设信息承载量为Ci,计算CPU和内存的权重比:
其中,CPU权重比为W1与内存的权重比为W2
计算CPU的健康度权重值:
计算内存的健康度权重值:
本申请实施例根据CPU、内存和ceph存储等资源历史健康度,选取最近CPU的健康度、内存的健康度以及ceph存储的健康度的历史记录,按照CRITIC权重法和均值算法,动态调整CPU的健康度、内存的健康度和ceph存储的健康度在租户整体健康度中占据的权重值,优化租户的健康度的算法,使得租户的健康度会更加趋近实际生产环境的资源状况,继而提高确定租户的健康度的准确性。
在上述实施例的基础上,所述确定所述CPU和所述内存的信息承载量,包括:根据CPU的历史健康度确定第一标准差,并根据内存的历史健康度确定第二标准差;根据CPU的历史健康度以及内存的历史健康度分别对应的均值,确定CPU和内存的相关系数;根据相关系数确定CPU和内存的冲突性系数,以根据冲突性系数、第一标准差以及第二标准差确定CPU和内存的信息承载量。
例如,基于CRITIC权重法计算CPU和内存的信息承载量,步骤如下所示:
步骤一、获取CPU的健康度和内存的健康度最近7次的历史健康度,即可得数据矩阵:
其中,x组为CPU的历史健康度,y组为内存的历史健康度。
步骤二、计算健康度的波动性指标,即对比强度。采用标准差表示各指标的内取值的差异波动情况,标准差越大表示该指标的数值差异越大,越能放映出更多的信息,该指标本身的评价强度也就越强,应该给该指标分配更多的权重。
步骤三、计算每组健康度的标准差:
S1表示第一组x组健康度的标准差,表示x组健康度的平均值,S2表示第一组y组健康度的标准差,/>表示y组健康度的平均值,n表示一组健康度的指标个数。
步骤四、计算健康度的相关系数r:
步骤五、计算健康度的冲突性系数R:
其中,m表示相关系数个数。
步骤六、计算信息承载量
Ci=Si×R
其中,Si包括S1和S2
本申请实施例根据CPU、内存和ceph存储等资源历史健康度,选取最近CPU的健康度、内存的健康度以及ceph存储的健康度的历史记录,按照CRITIC权重法和均值算法,动态调整CPU的健康度、内存的健康度和ceph存储的健康度在租户整体健康度中占据的权重值,优化租户的健康度的算法,使得租户的健康度会更加趋近实际生产环境的资源状况,继而提高确定租户的健康度的准确性。
在上述实施例的基础上,所述根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度,包括:若各个健康度均大于设定健康度阈值,则将各个指标的健康度与各个指标的健康度权重值的加权和值作为租户的健康度;若存在至少一个健康度小于设定健康度阈值,则根据各个指标的健康度确定最小健康度,以基于最小健康度以及各个指标的健康度确定租户的健康度。
例如,设定健康度阈值为20,以健康度阈值为界限,判断CPU、内存及ceph存储的健康度是否均大于20,设定CPU健康度为y1、内存健康度为y2、ceph存储健康度为y3,如果CPU、内存及ceph存储的健康度均大于20,则租户的健康度:
z=y1×a+y2×b+y3×c
如果CPU、内存及ceph存储的健康度存在一项健康度低于20,则采用惩罚算法计算租户健康度,确定CPU、内存及ceph存储的健康度三者中的最小健康度为min(y1,y2,y3),则租户的健康度:
本申请实施例根据CPU、内存和ceph存储等资源健康度是否超过健康阈值,采用加权算法计算租户健康度,基于此,有助于减少运维人员管理集群的工作量,基于租户的健康度可以预先对集群节点进行资源调度,维持节点均衡,对处于健康状态的租户,可减少巡检次数和工作量,而针对状态不正常的租户,进行重点关注与问题排查,精准定位问题,为租户提供了直观的资源健康状态,租户可根据实际情况,提前对特殊应用进行迁移调度,以应对特殊场景出现的高负载情形。
在上述实施例的基础上,所述确定租户的各个指标的使用率,包括:确定租户的每个命名空间中各个指标在不同时间周期内的使用率,然后根据各个指标在不同时间周期内的使用率以及各个指标的配额信息,确定各个指标在不同时间周期内的总使用率。
例如,租户的CPU、内存以及ceph存储的资源使用率信息可通过Prometheus监控服务获取,采集时间粒度为1分钟一次,通过扫描平台的namespace的CPU用量、内存用量以及ceph存储用量对应各自的租户。
需要说明的是,CPU用量和内存用量属于容器性能型指标,具有上下浮动的特征,且伴有偶然性的大幅度浮动,存在较大的不稳定性,因而从不同周期内求取均值作为有效数据。而ceph存储用量属于硬件型指标,且属于长期较稳定性持续增长型数据,因此可选取最新的数据。
分别计算租户在不同时间周期内所有的pod的资源之和,以及当前ceph存储用量之和。
定义时间周期为15min,1h,6h,12h,计算不同时间周期内,每分钟的资源使用量均值,也即,求m分钟内n个namespace的CPU用量、内存用量和ceph存储用量的均值。
获取m分钟内n个namespace的CPU用量,假设有n个namespace:
可得CPU用量数表15行n列
可得均值公式:
其中,a11表示第1分钟内第1个namespace已使用的CPU数量,表示m分钟内n个namespace的CPU用量总和。
因此,时间周期为15min,1h,6h,12h的CPU用量均值为:
同理可得内存在不同周期内的用量均值为:
获取当前租户所有namespace的ceph存量:
Tenantceph=∑namespacei request_ceph
其中,namespacei request_ceph表示namespace目前已使用的ceph存储大小,Tenantceph表示租户下所有namespace的ceph存储使用之和。
获取租户资源配额,包括Limit CPU限额、Limit内存限额、ceph存储配额,对应各自的租户,然后分别计算租户上所有的pod的资源配额之和以及ceph存储配额之和。
Arraycpu=∑namespacej volume_cpu
其中,namespacei volume_cpu表示第i个namespace配置的最大CPU数,Arraycpu表示租户下所有namespace配置的最大CPU数量之和。
Arraymemory=∑namespacei volume_memory
其中,namespacei volume_memory表示第i个namespace配置的最大内存容量,Arraymemory表示租户下所有namespace配置的最大内存容量之和。
Arrayceph=∑namespacei volume_ceph
其中,namespacei volume_ceph表示第i个namespace配置的最大内存容量,Arrayceph表示租户下所有namespace配置的最大内存容量之和。
计算租户的CPU,内存以及ceph存储的总使用率。
按照15min,1h,6h,12h计算不同周期内CPU的总使用率,内存的总使用率。
Ratiocpu表示租户CPU的总使用率:
Ratiomemory表示租户内存的总使用率:
Ratioceph表示租户ceph存储的总使用率:
Ratioceph=∑namespacei request_ceph/Arrayceph*100%
本申请实施例通过获取各个命名空间namespace的CPU、内存和ceph存储等资源使用信息和配额,然后计算不同时间周期内各namespace的CPU、内存的资源指标,通过不同时间周期内的指标均值以及配额信息确定各个指标的总使用率,基于此,可以更全面的反馈当前租户的容器的服务状态,提高确定租户的健康度的准确性。
在上述实施例的基础上,所述根据各个所述指标的总使用率确定各个所述指标的健康度,包括:确定各个指标的总使用率所处的使用率区间,以基于使用率区间确定各个指标的健康度的确定方式,然后,根据各个指标的总使用率以及各个指标的健康度的确定方式,确定各个指标的健康度。
例如,确定租户的CPU、内存和ceph存储的各自总使用率的所在的使用率区间,如设定第一区间为[0%-40%],设定第二区间为(40%-80%],设定第三区间为(80%-100%]。
当CPU、内存以及ceph存储的总使用率x在第一区间时,即0%≤x≤40%,设定CPU、内存及ceph存储的健康度:
y=100-0.005*(x*100)^2-0.05*x*100
其中,计算可得健康度分值在[100-90]。
当CPU、内存以及ceph存储的总使用率x在第二区间时,即40%<x≤80%,设定CPU、内存及ceph存储的健康度:
y=90-0.0125*(x*100)^2+0.5*x*100
其中,计算可得健康度分值在(90-50]。
当CPU、内存以及ceph存储的总使用率x在第三区间时,即80%<x≤100%,设定CPU、内存及ceph存储的健康度:
y=6.5*x*100-0.05*(x*100)^2-150
其中,计算可得健康度分值在(50-0]。
租户的CPU和内存的健康度取决于不同周期内的性能评估,周期越长,CPU和内存的实际性能评估越趋近某一个稳定值,因此周期越长的健康度评估值,对租户的最终指标计算中,所占比重应该越大,设定CPU、内存的健康度加权算法为:
Y==0.1*y1+0.2*y2+0.3*y3+0.4*y4
其中,y1表示指标在第一时间周期内的健康度,如15min;y2表示指标在第二时间周期内的健康度,如1h;y3表示指标在第三时间周期内的健康度,如6h;y4表示指标在第四时间周期内的健康度,如12h。
本申请实施例基于租户的CPU、内存和ceph存储等资源指标值所在的区间,设计不同的健康度变化趋势算法,计算对应的健康度,当租户性能指标较低时,租户应用健康度高,设计平缓的趋势公式;当租户性能指标较高时,应该引起更多的关注,设计更激进的公式。通过不同级别设置健康度的计算公式,提高了确定指标的健康度的准确性。
在上述实施例的基础上,所述根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度之后,包括:确定租户的健康度所处的预警区间,以基于预警区间发送健康度预警提示信息。例如,将租户的健康度分值划分不同预警区间,如(80,100]为健康,(60,80]为良好,(30,60]为警告,[0,30]为严重,基于预警区间发送健康度预警提示信息,例如,如果租户的健康度为50,此时通过告警模块发送告警信息。
本申请实施例通过设置预警区间,基于租户的健康度所在的预警区间发送对应的健康度预警提示信息,基于此,租户可以及时知道自身的健康状态,实现问题的精准排查和定位。
为了更清楚地说明本申请的容器云平台的租户健康度确定方法,通过以下具体实施例解析说明。
假设获取的某个节点下,某租户拥有3个namespace,其中,各个namespace的配额信息如表1所示:
表1
namespace CPU配额 内存配额 ceph存储配额
A 8 10Gi 1G
B 8 10Gi 1G
C 8 10Gi 1G
各个namespace在不同时间周期内的资源使用情况如表2至表4所示:
表2
表3
B 已使用CPU 已使用内存 已使用ceph存储
15min 6 6.1Gi 0.83G
1h 5 9.1Gi 0.83G
6h 4 7.7Gi 0.82G
12h 4 5.3Gi 0.81G
表4
C 已使用CPU 已使用内存 已使用ceph存储
15min 5 8.1Gi 0.83G
1h 5 7.7Gi 0.83G
6h 7 6.7Gi 0.82G
12h 4 5.1Gi 0.81G
历史健康度记录如表5所示:
表5
健康度 CPU 内存 ceph
1 45 47 44
2 56 54 44
3 87 71 45
4 34 55 46
5 44 66 46
6 42 43 47
7 67 64 47
步骤一:计算租户的CPU,内存和ceph存储的总使用率,例如,计算周期15min内所有namespace的CPU使用量:
15min:Tenant15_cpu=3+6+5=14;
1h:Tenant60_cpu=6+5+5=16;
6h:Tenant360_cpu=3+4+7=14;
12h:Tenant720_cpu=5+4+4=13;
计算周期15min内所有namespace的内存使用量:
Tenant15_memory=7.2+6.1+8.1=21.4;
Tenant60_memory=6.1+9.1+7.7=22.9;
Tenant360_memory=4.1+7.7+6.7=18.5;
Tenant720_memory=8.3+5.3+5.1=18.7;
Ceph存储当前使用量:
Tenantceph=0.83+0.83+0.83=2.49;
CPU配额:
Arraycpu=8+8+8=24;
内存配额:
Arraymemory=10+10+10=30;
Ceph存储配额:
Arrayceph1+1+1=3;
计算租户的CPU使用率:
计算租户的内存使用率:
Ceph存储使用率:
步骤二、计算CPU、内存和ceph存储各自的健康度。
由于Ratio15_cpu=58.33%,处于第二区间(40%<x≤80%),此时,采用公式y=90-0.0125*(x*100)^2+0.5*x*100计算CPU健康度。
CPU的健康度为:
y15_cpu=90-0.0125*(58.33%*100)^2+0.5*58.33%*100=76.64;
y60_cpu=90-0.0125*(66.78%*100)^2+0.5*66.78%*100=67.65;
y360_cpu=90-0.0125*(58.33%*100)^2+0.5*58.33%*100=76.64;
y720_cpu=90-0.0125*(54.17%*100)^2+0.5*54.17%*100=81.26;
Y1=0.1*y15_cpu+0.2*y60_cpu+0.3*y360_cpu+0.4*y720_cpu=76.69;
同理可得,内存的健康度为:
y15_memory=62.07
y60_memory=55.34
y360_memory=73.3
y720_memory=72.6
Y2=68.31
ceph存储的健康度为:Y3=45.05
步骤三、分析租户的CPU、内存以及ceph存储的历史健康度数据,计算健康度权重值。
ceph存储的健康度权重值为:
c=0.0025*(44+44+45)/3+0.1=0.21>20%
因此,ceph存储的健康度权重值c为20%。
根据上述的CPU健康度、内存健康度记录可得健康度矩阵:
其中,左侧表示CPU的历史健康度,右侧表示内存的历史健康度
计算CPU的健康度和内存的健康度之间的标准差:
其中,n表示每组健康度的个数,n=7;表示每组CPU的历史健康度的均值;xi表示某一组CPU的历史健康度的第i个健康度,/>表示每组内存的历史健康度的均值;yi表示某一组内存的历史健康度的第i个健康度。
计算CPU的健康度和内存的健康度之间的相关系数:
计算CPU的健康度和内存的健康度之间的冲突性系数:
其中,m表示相关系数个数,m=1;ri表示第i个相关性系数。
计算CPU的健康度和内存的健康度的信息承载量:
Ccpu=Scpu×R=18.1921*0.3272=5.95214293
Cmemory=Smemory×R=10.28638*0.3272=3.36552621
计算CPU和内存的权重比:
则CPU的健康度权重值为:
a=(1-c)×wcpu=0.8×0.6388017=0.511041364
内存的健康度权重值为:
b=(1-c)×wmemory=0.8×0.361198295=0.288958636
步骤四、判断CPU的健康度、内存的健康度、ceph存储的健康度均大于20,Y1=76.69>20,Y2=68.31>20,Y3=45.05>20。
因此,租户的健康度为:
Y=Y1*a+Y2*b+Y3*c
=76.35*0.511041364+68.305*0.288958636+45.05*0.2=67.77
本申请实施例通过获取租户namespace的CPU、内存和ceph存储的配额和使用量,计算租户的CPU、内存和ceph存储的健康度,根据健康度阈值判断,按照加权算法计算租户的健康度,基于此,有助于减少运维人员管理集群的工作量,基于租户的健康度可以预先对集群节点进行资源调度,维持节点均衡,对处于健康状态的租户,可减少巡检次数和工作量,而针对状态不正常的租户,进行重点关注与问题排查,精准定位问题,为租户提供了直观的资源健康状态,租户可根据实际情况,提前对特殊应用进行迁移调度,以应对特殊场景出现的高负载情形。
下面对本申请实施例提供的容器云平台的租户健康度确定装置进行描述,下文描述的容器云平台的租户健康度确定装置与上文描述的容器云平台的租户健康度确定方法可相互对应参照。
参考图2,图2是本申请实施例提供的容器云平台的租户健康度确定装置的结构示意图,本申请实施例提供的容器云平台的租户健康度确定装置包括总使用率确定模块201、指标的健康度确定模块202和租户的健康度确定模块203。
所述总使用率确定模块201,用于确定租户的各个指标的总使用率;
所述指标的健康度确定模块202,用于根据各个所述指标的总使用率确定各个所述指标的健康度;
所述租户的健康度确定模块203,用于确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
本申请实施例提供的容器云平台的租户健康度确定装置,通过确定租户的各个指标的总使用率,然后根据各个指标的总使用率确定各个指标的健康度,确定各个指标的健康度权重值,以根据各个指标的健康度以及健康度权重值确定租户的健康度。基于此,有助于减少运维人员管理集群的工作量,基于租户的健康度可以预先对集群节点进行资源调度,维持节点均衡,对处于健康状态的租户,可减少巡检次数和工作量,而针对状态不正常的租户,进行重点关注与问题排查,精准定位问题,为租户提供了直观的资源健康状态,租户可根据实际情况,提前对特殊应用进行迁移调度,以应对特殊场景出现的高负载情形。
在一个实施例中,所述租户的健康度确定模块203具体用于:
若所述指标为分布式存储,则根据所述分布式存储的历史健康度确定所述分布式存储的健康度权重值;
若所述指标为CPU和内存,则确定所述CPU和所述内存的信息承载量,以基于所述信息承载量以及所述分布式存储的健康度权重值分别确定所述CPU的健康度权重值以及所述内存的健康度权重值。
在一个实施例中,所述租户的健康度确定模块203具体用于:
根据所述CPU的历史健康度确定第一标准差,并根据所述内存的历史健康度确定第二标准差;
根据所述CPU的历史健康度以及内存的历史健康度分别对应的均值,确定所述CPU和所述内存的相关系数;
根据所述相关系数确定所述CPU和所述内存的冲突性系数,以根据所述冲突性系数、所述第一标准差以及所述第二标准差确定所述CPU和所述内存的信息承载量。
在一个实施例中,所述租户的健康度确定模块203具体用于:
若各个所述健康度均大于设定健康度阈值,则将各个所述指标的健康度与各个所述指标的健康度权重值的加权和值作为所述租户的健康度;
若存在至少一个所述健康度小于设定健康度阈值,则根据各个所述指标的健康度确定最小健康度,以基于所述最小健康度以及各个所述指标的健康度确定所述租户的健康度。
在一个实施例中,所述总使用率确定模块201具体用于:
确定所述租户的每个命名空间中各个所述指标在不同时间周期内的使用率;
根据各个所述指标在不同时间周期内的使用率以及各个所述指标的配额信息,确定各个所述指标在不同时间周期内的总使用率。
在一个实施例中,所述指标的健康度确定模块202具体用于:
确定各个所述指标的总使用率所处的使用率区间,以基于所述使用率区间确定各个所述指标的健康度的确定方式;
根据各个所述指标的总使用率以及各个所述指标的健康度的确定方式,确定各个所述指标的健康度。
在一个实施例中,所述租户的健康度确定模块203具体用于:
确定所述租户的健康度所处的预警区间,以基于所述预警区间发送健康度预警提示信息。
图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communication Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的计算机程序,以执行容器云平台的租户健康度确定方法的步骤,例如包括:
确定租户的各个指标的总使用率;
根据各个所述指标的总使用率确定各个所述指标的健康度;
确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各实施例所提供的容器云平台的租户健康度确定方法的步骤,例如包括:
确定租户的各个指标的总使用率;
根据各个所述指标的总使用率确定各个所述指标的健康度;
确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种容器云平台的租户健康度确定方法,其特征在于,包括:
确定租户的各个指标的总使用率;
根据各个所述指标的总使用率确定各个所述指标的健康度;
确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
2.根据权利要求1所述的容器云平台的租户健康度确定方法,其特征在于,所述确定各个所述指标的健康度权重值,包括:
若所述指标为分布式存储,则根据所述分布式存储的历史健康度确定所述分布式存储的健康度权重值;
若所述指标为CPU和内存,则确定所述CPU和所述内存的信息承载量,以基于所述信息承载量以及所述分布式存储的健康度权重值分别确定所述CPU的健康度权重值以及所述内存的健康度权重值。
3.根据权利要求2所述的容器云平台的租户健康度确定方法,其特征在于,所述确定所述CPU和所述内存的信息承载量,包括:
根据所述CPU的历史健康度确定第一标准差,并根据所述内存的历史健康度确定第二标准差;
根据所述CPU的历史健康度以及内存的历史健康度分别对应的均值,确定所述CPU和所述内存的相关系数;
根据所述相关系数确定所述CPU和所述内存的冲突性系数,以根据所述冲突性系数、所述第一标准差以及所述第二标准差确定所述CPU和所述内存的信息承载量。
4.根据权利要求1所述的容器云平台的租户健康度确定方法,其特征在于,所述根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度,包括:
若各个所述健康度均大于设定健康度阈值,则将各个所述指标的健康度与各个所述指标的健康度权重值的加权和值作为所述租户的健康度;
若存在至少一个所述健康度小于设定健康度阈值,则根据各个所述指标的健康度确定最小健康度,以基于所述最小健康度以及各个所述指标的健康度确定所述租户的健康度。
5.根据权利要求1所述的容器云平台的租户健康度确定方法,其特征在于,所述确定租户的各个指标的使用率,包括:
确定所述租户的每个命名空间中各个所述指标在不同时间周期内的使用率;
根据各个所述指标在不同时间周期内的使用率以及各个所述指标的配额信息,确定各个所述指标在不同时间周期内的总使用率。
6.根据权利要求1所述的容器云平台的租户健康度确定方法,其特征在于,所述根据各个所述指标的总使用率确定各个所述指标的健康度,包括:
确定各个所述指标的总使用率所处的使用率区间,以基于所述使用率区间确定各个所述指标的健康度的确定方式;
根据各个所述指标的总使用率以及各个所述指标的健康度的确定方式,确定各个所述指标的健康度。
7.根据权利要求1所述的容器云平台的租户健康度确定方法,其特征在于,所述根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度之后,包括:
确定所述租户的健康度所处的预警区间,以基于所述预警区间发送健康度预警提示信息。
8.一种容器云平台的租户健康度确定装置,其特征在于,包括:
总使用率确定模块,用于确定租户的各个指标的总使用率;
指标的健康度确定模块,用于根据各个所述指标的总使用率确定各个所述指标的健康度;
租户的健康度确定模块,用于确定各个所述指标的健康度权重值,以根据各个所述指标的健康度以及所述健康度权重值确定所述租户的健康度。
9.一种电子设备,包括处理器和存储有计算机程序的存储器,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的容器云平台的租户健康度确定方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的容器云平台的租户健康度确定方法的步骤。
CN202211085957.1A 2022-09-06 2022-09-06 容器云平台的租户健康度确定方法和装置 Pending CN116962417A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211085957.1A CN116962417A (zh) 2022-09-06 2022-09-06 容器云平台的租户健康度确定方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211085957.1A CN116962417A (zh) 2022-09-06 2022-09-06 容器云平台的租户健康度确定方法和装置

Publications (1)

Publication Number Publication Date
CN116962417A true CN116962417A (zh) 2023-10-27

Family

ID=88459110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211085957.1A Pending CN116962417A (zh) 2022-09-06 2022-09-06 容器云平台的租户健康度确定方法和装置

Country Status (1)

Country Link
CN (1) CN116962417A (zh)

Similar Documents

Publication Publication Date Title
WO2022111265A1 (zh) 一种信息告警方法、设备及存储介质
CN103902379A (zh) 一种任务调度方法、装置及服务器集群
CN112416590A (zh) 服务器系统资源调整方法、装置、计算机设备及存储介质
CN115509875A (zh) 一种服务器健康度评估方法和装置
CN114781932B (zh) 区域干旱防治的区划方法、计算机设备及计算机存储介质
CN110390563A (zh) 用户价值的量化方法、装置、计算机设备和存储介质
CN112132384A (zh) 工作效率评估方法、装置、存储介质及计算机设备
CN108390793A (zh) 一种分析系统稳定性的方法及装置
CN114461389A (zh) 服务器集群的负载均衡方法、装置及电子设备
CN112002949A (zh) 一种动力电池主动均衡的监测管理方法及系统
CN112398700A (zh) 一种服务降级方法及装置、存储介质、计算机设备
CN115858168A (zh) 一种基于重要性排序的地球应用模型编排系统及其方法
CN117112701B (zh) 分布式数据库中的节点切换方法、计算机设备及存储介质
CN116962417A (zh) 容器云平台的租户健康度确定方法和装置
CN117130851A (zh) 一种高性能计算集群运行效率评价方法及系统
CN109918366B (zh) 一种基于大数据的数据安全处理方法
CN111582679B (zh) 应用服务分区的处理方法、装置、设备及存储介质
CN111598390B (zh) 服务器高可用性评估方法、装置、设备和可读存储介质
CN111628901B (zh) 一种指标异常检测方法以及相关装置
CN105281967B (zh) 一种数据采集方法和系统
CN113988670A (zh) 综合性企业信用风险预警方法及系统
CN111913852A (zh) 存储系统的健康管理方法和装置
CN111124681A (zh) 一种集群负载分配方法及装置
CN116308721B (zh) 一种信息监督管理方法、装置、电子设备及存储介质
CN115757273B (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