更新时间:2024-08-17 GMT+08:00

成本计算模型

工作负载成本计算原理

工作负载成本是由Pod成本聚合而成。

  • Pod成本:使用监控指标和实际账单作为输入,通过CPU、内存使用量占整体节点资源比例计算出来的成本,结合Pod关联PVC存储的成本。

    计算过程中,Pod的使用量为当前采样时刻下申请量(Request)和实际使用量(Real Used)中的最大值。如下图:

    图1 工作负载成本计算原理

    如:采样点1,Request CPU > Real Used CPU,Pod使用量取Request CPU值

    采样点2,Request CPU < Real Used CPU,Pod使用量取Real Used CPU值

  • 工作负载成本:该工作负载中所有Pod的成本总和。

命名空间成本计算原理

命名空间成本是由工作负载成本聚合而成,其计算公式为该命名空间下所有工作负载的成本总和。

部门成本计算原理

部门是一种逻辑的成本归结单元,用于将不同的集群、命名空间的成本聚合分析。为贴合实际的业务场景,一般会按照实际业务部门设立该成本单元,并关联业务部门使用的集群或者命名空间。

单个集群的成本由业务命名空间成本、未被分配的空闲成本、集群管理成本(CCE集群Master成本+系统命名空间成本)组成。其中未被分配空闲成本以及集群管理成本,被定义为公共成本。当部门按照命名空间进行设置时,需要关联业务命名空间,并设置公共成本的分摊比例。

图2 部门成本计算示例

示例中,Cluster1是部门A的专属集群,Cluster2是部门C的专属集群,而Cluster3为部门A和部门C的共享集群,且命名空间NS1属于部门A,NS2属于部门C。在计算部门成本时,可按照如上图将对应集群或命名空间划入对应部门,并将Cluster3中产生的公共成本设置分摊比例,在部门A和部门C中进行分摊。

计算过程常见问题

  • Pod Request和Used的资源,应该根据哪个来估算成本,进行计算Pod的费用,Pod的CPU、内存使用量等资源指标是动态变化的,如何做到准确的估算?

    在计算成本时的Pod使用量取值为Pod申请量(Request)和实际使用量(used)中的最大值。基于普罗监控数据,可以清晰识别分钟级别的应用资源,进行成本计算。

  • 节点中没有被分配的空闲成本,是如何处理的?

    节点中的空闲成本不会被分摊到工作负载或者命名空间成本中,可以作为集群的公共成本分摊到部门。空闲成本在各个部门的分摊比例支持设置。