Kubernetes

Understanding the cost of your containerized workloads

CloudZero combines container usage data with your cloud provider costs to give you accurate allocation of costs within a Kubernetes cluster. Pod CPU and memory usage are automatically correlated with costs to give you detailed breakdowns of real cost by cluster, namespace, workload, or label down to the hour. Additionally, CloudZero doesn't require you to manually define complex rules for allocating Kubernetes costs. CloudZero uses a proprietary algorithm that automatically calculates costs based on industry best practices and our own experience working with customers.

Kubernetes Integration Methods

CloudZero supports three methods of ingesting Kubernetes data:

📘

ECS SCAD is Not Currently Supported

CloudZero does not currently support ECS SCAD. Only EKS SCAD is supported.

The following table summarizes the differences between these methods:

AttributeCloudZero Agent for KubernetesEKS SCADGKE Cost Allocation
Supported platformsSelf-managed Kubernetes, AWS EKS, Azure Kubernetes Service (AKS), Google Cloud GKEAWS EKS onlyGoogle Cloud GKE only
Setup methodInstall an agent on your clustersEnable a setting in AWSEnable a setting in GCP
Data types collectedResource usage dataEKS SCAD with AMP: Resource usage data, including resource requests and actual utilization. EKS SCAD without AMP: Resource usage data, including resource requests only.Cost data
Calculation of idle costsYesYesNo
Supported pod labelsAllaws:eks:cluster-name, aws:eks:deployment, aws:eks:namespace, aws:eks:node, aws:eks:workload-name, aws:eks:workload-typeAll

How Automatic Cost Allocation Works

For all integration methods except GKE Cost Allocation, Kubernetes cost allocation is based on the cost of the node combined with pod-level CPU and memory usage, calculated using a custom cost model that CloudZero developed. This allows us to assign a portion of the node’s total cost to the pod. This is handled automatically in the CloudZero platform; there is no need for manual allocation rules.

Generally speaking, this proportional algorithm works across a broad range of instance types, including those with SSD, NVMe SSD, GPU cores, GPU memory, and networking enhancements.

The final result is a new way to explore your container costs over time by cluster, workload, or namespace using CloudZero. For example, we can use CloudZero to take a look at one of our clusters and see how its costs decrease as we scale down the cluster.

Cluster Idle Costs

The CloudZero platform considers an instance's CPU or memory fully utilized in a given hour if pods running on that instance used or requested (maximum of the two) an average of 75% or more of its available capacity. If a lesser amount was used, the difference is assigned to an Idle bucket representing the unused capacity of the instances comprising the cluster.

📘

GKE Cost Allocation Limitations

Note that the GKE Cost Allocation integration method cannot provide resource usage data or calculate idle costs.