Updated on 2024-07-05 GMT+08:00

Cost Insights for a Cluster

Cost Insights for a cluster helps cost O&M personnel analyze cluster costs and resource usages from multiple dimensions, such as namespace, application, and node pool, to identify applications that can be optimized. Currently, the cluster and namespace dimensions are supported.

Prerequisites

  • Cost Insights has been enabled.

Constraints

  • Processing bills takes some time. After Cost Insights is enabled, there is about two days delay before you can view your costs.
  • Cloud Native Cluster Monitoring must run normally to ensure accurate data displays of namespaces, workloads, and node pools on the Cost Insights page.

Navigation Path

  1. Log in to the CCE console and click the cluster name to access the cluster console.
  2. In the navigation pane, choose Cloud Native Cost Governance > Cost Insights.
  3. On the displayed page, analyze costs.

    Figure 1 Cost Insights for a cluster

Clusters

The Clusters tab displays the cost overview on a cluster, including the cost overhead and resource consumption of namespaces, workloads, and node pools. This helps O&M personnel identify applications with high cost overhead and low resource utilization.

You can filter data by time in the upper right corner.

Figure 2 Cost overview of a cluster

Parameter

Description

Month-to-date costs

Month-over-month change

Month-to-date costs: costs generated by the cluster from the start of the current month to the date of the most recent bill. If Cost Insights is enabled in the current month, the cost is accumulated from the date when Cost Insights is enabled to the date of the most recent bill.

Month-over-month change: (Month-to-date costs – Last month same-period costs)/Last month same-period costs

Forecasted month-end costs

Month-over-month change

Forecasted month-end costs: estimated total costs by the end of the current month.

Month-over-month change: (Forecasted month-end costs – Last month total costs)/Last month total costs

CPU usage

Used CPU

Total CPU

CPU usage: average CPU usage of all nodes in the cluster at the current time.

Formula: CPU usage = Used CPU on all nodes/Total CPU on all nodes x 100%

Memory usage

Used memory

Total memory

Memory usage: average memory usage of all nodes in the cluster at the current time.

Formula: Memory usage = Used memory on all nodes/Total memory on all nodes x 100%

Cost Breakdown

Cost breakdown during the specified time period, including the ECS cost, EVS cost, and CCE cluster management cost.

Daily Costs

Daily cost breakdown, which can be used to identify resources with high costs in a cluster.

Figure 3 Multi-dimension cluster costs

Parameter

Description

Namespace

Total Namespace Cost indicates the total cost (CPU cost, memory cost, and EVS cost) of the workloads in each selected namespace. Total Resource Cost indicates the total cost of compute resources (all ECSs and EVS disks) used by a cluster.

Total resource cost = Total namespace cost + Unallocated cost

The larger the gray area is, the more resources are not used, causing resource wastes.

Top 5 Workloads

Top 5 workloads with high costs.

Top 5 Node Pools

Top 5 mode pools with high costs.

Figure 4 Cost & resource summary

Module

Parameter

Description

Namespace Cost & Resource Summary

Namespace

Namespace name.

Estimated Cost

Namespace cost: the cost calculated based on the percentage of total node resources (CPU and memory) that are used in the namespaces, plus the cost of storage used by the workloads in the namespaces.

Total Core-Hours

Total number of core-hours consumed by the workloads in a namespace during the specified time period.

Average CPU Utilization

Average CPU usage of the workloads in a namespace during the specified time period. CPU usage = Used CPU/CPU request x 100%

Average Used CPU

Average CPU used by the workloads in a namespace during the specified time period.

CPU Request

The total CPU request of the workloads in a namespace on the date of the most recent bill during the specified time period.

Average Memory Utilization

Average memory usage of the workloads in a namespace during the specified time period. Memory usage = Used memory/Memory request x 100%

Average Used Memory

Average memory used by the workloads in a namespace during the specified time period.

Memory Request

The total memory request of the workloads in a namespace on the date of the most recent bill during the specified time period.

Workload Cost & Top 5 Costs

Workload

Workload name.

Estimated Cost

Workload cost: the cost calculated based on the percentage of total node resources (CPU and memory) that are used by a workload, plus the cost of storage used by the workload.

Total Core-Hours

Total number of core-hours consumed by a workload during the specified time period.

Core-Hour Unit Price

Price per CPU core per hour.

If the core-hour unit price of a workload or namespace is high, you can change the node type to reduce costs and improve resource utilization.

Namespace

Namespace that a workload belongs to.

Average CPU Utilization

Average CPU usage of a workload during the specified time period.

CPU usage = Used CPU/CPU request x 100%

Average Used CPU

Average CPU used by a workload during the specified time period.

CPU Request

CPU request of a workload on the date of the most recent bill during the specified time period.

Average Memory Utilization

Average memory usage of a workload during the specified time period.

Memory usage = Used memory/Memory request x 100%

Average Used Memory

Average memory used by a workload during the specified time period.

Memory Request

Memory request of a workload on the date of the most recent bill during the specified time period.

Node Pool Cost & Resource Summary

Node Pool

Node pool name.

Cost

Cost of nodes in a node pool during the specified time period.

Average CPU Usage

Average CPU usage of a node pool during the specified time period.

CPU usage = Total CPU used by nodes in a node pool/Total CPU in a node pool x 100%

Average Used CPU

Average CPU used by a node pool during the specified time period.

Idle CPU | Requested CPU | Total CPU

Idle CPU: total idle CPUs of all nodes in a node pool on the last day of the specified time period.

Requested CPU: total CPUs requested by all nodes in a node pool on the last day of the specified time period.

Total CPU: total CPUs of all nodes in a node pool on the last day of the specified time period.

Average Memory Usage

Average memory usage of a node pool during the specified time period.

Memory usage = Total memory used by nodes in a node pool/Total memory in a node pool x 100%

Average Used Memory

Average memory used by a node pool during the specified time period.

Idle Memory | Requested Memory | Total Memory

Idle Memory: total idle memory of all nodes in a node pool on the last day of the specified time period.

Requested Memory: total memory requested by all nodes in a node pool on the last day of the specified time period.

Total Memory: total memory of all nodes in a node pool on the last day of the specified time period.

Namespaces

The Namespaces tab displays the cost optimization analysis on the selected namespace and workloads in that namespace, which allow you to identify workloads with high overhead and low utilization for coat optimization.

Figure 5 Cost overview by namespace

Parameter

Description

Month-to-date costs

Month-over-month change

Month-to-date costs: costs generated in selected namespaces from the start of the current month to the date of the most recent bill. If Cost Insights is enabled in the current month, the cost is accumulated from the date when Cost Insights is enabled to the date of the most recent bill.

Month-over-month change: (Month-to-date costs – Last month same-period costs)/Last month same-period costs

Forecasted month-end costs

Month-over-month change

Forecasted month-end costs: estimated total costs in the selected namespaces by the end of the current month.

Month-over-month change: (Forecasted month-end costs – Last month total costs)/Last month total costs

CPU utilization

Used CPU

CPU request

CPU utilization: average CPU usage in the selected namespaces at the current time.

Formula: CPU usage = Total used CPU in the selected namespaces/Total CPU requests in the selected namespaces x 100%

Memory utilization

Used memory

Memory request

Memory utilization: Average memory usage in the selected namespaces at the current time.

Formula: Memory usage = Total used memory in the selected namespaces/Total memory requests in the selected namespaces x 100%

Cost Breakdown

Cost breakdown of top 5 namespaces among the selected namespaces during the specified time period.

Daily Costs

Daily cost breakdown of the selected namespaces for identifying namespaces with high costs.

Figure 6 Namespace costs

Parameter

Description

Resource Costs

Costs of resources in the selected namespaces during the specified time period, which consist of the CPU cost, memory cost, and storage cost.

Core-Hour Unit Prices

Changes of average unit price changes of core-hours consumed by workloads on the nodes in the selected namespaces.

Top 5 Namespaces by Core-Hours

Total core-hours consumed by top 5 namespaces among the selected namespaces during the specified time period.

CPU

Changes of CPU usages, requests, and limits in the selected namespaces.

Memory

Changes of memory usages, requests, and limits in the selected namespaces.

Resource Utilization

Changes of CPU usages and memory usages in the selected namespaces.

Figure 7 Workload cost details

Parameter

Description

Workload

Workload name.

Estimated Cost

The cost calculated based on the percentage of total node resources (CPU and memory) that are used by a workload, plus the cost of storage used by the workload.

Total Core-Hours

Total number of core-hours consumed by a workload during the specified time period, reflecting the CPU usage.

Core-Hour Unit Price

Price per CPU core per hour of the node where the workload is located, which can be used for node model optimization.

Namespace

Namespace that a workload belongs to.

Average CPU Utilization

Average CPU usage of a workload during the specified time period.

CPU usage = Used CPU/CPU request x 100%

Average Used CPU

Average CPU used by a workload during the specified time period.

CPU Request

CPU request of a workload on the last day of the specified time period.

Average Memory Utilization

Average memory usage of a workload during the specified time period.

Memory usage = Used memory/Memory request x 100%

Average Used Memory

Average memory used by a workload during the specified time period.

Memory Request

Memory request of a workload on the last day of the specified time period.