You can identify idle Google Kubernetes Engine (GKE) Standard clusters using insights and recommendations of the Idle Cluster Recommender. After you verify that the identified idle clusters are unused, you can delete them to save costs. The Idle Cluster Recommender is not relevant for Autopilot clusters, which incur minimal operational costs as you only pay for the resources that your workloads request. To learn more, see Autopilot Pricing.
GKE monitors your clusters and delivers guidance to optimize your usage through Recommender, a service that provides insights and recommendations for using resources on Google Cloud.
To learn more about how to manage insights and recommendations, see Optimize your usage of GKE with insights and recommendations.
Identify idle clusters
To identify idle clusters, view insights and
recommendations
generated by the Idle Cluster Recommender using the Google Cloud console,
the Google Cloud CLI, or the Recommender API. Use the insight subtypes shown
in the table in the following section and the
recommendation subtype CLUSTER_IDLE
. In the console, these
insights appear in the Cost Optimization tab on the Clusters page.
After you identify idle clusters, see the considerations when deleting idle clusters.
How the Recommender identifies idle clusters
This Recommender uses utilization signals to determine whether you should receive an insight or recommendation.
The following table describes the signals that the Idle Cluster Recommender uses and the threshold for each signal. Each signal triggers an independent insight. If there are multiple insights for the same cluster, GKE displays a single recommendation.
Insight subtype | Signal | Threshold | Details |
---|---|---|---|
CLUSTER_IDLE_NO_RUNNING_PODS |
No running customer Pods | Last 30 days |
There are zero Pods in the Running state outside of the
kube-system and gmp-system namespace in the
cluster metrics events logs for the cluster during the last 30 days.
|
CLUSTER_IDLE_NO_NODES |
No nodes or node pools | Last 30 days | There are zero nodes or zero node pools in the cluster metrics events logs for the cluster during the last 30 days. |
CLUSTER_IDLE_LOW_CPU_UTILIZATION |
Low CPU utilization and no new objects | Below 7% averaged over 1 hour and last 30 days | CPU utilization (averaged over 1 hour) is below 7% and there has been no change in object count during the last 30 days. |
Considerations when deleting idle clusters
Before you delete an idle cluster recommended by the Idle Cluster Recommender, consider the following possibilities:
- Does anyone use the cluster? For example, a cluster might be intentionally idle if its purpose is to maintain failover capacity.
- Should the cluster be scaled down instead of deleted? For example, a cluster running a useful workload might have low utilization and be identified as idle because more resources were provisioned than necessary.
Implement the recommendation to delete idle clusters
If you've received an insight and recommendation that you have an idle cluster that can be deleted and have ruled out the considerations for keeping the cluster running, follow the instructions in the recommendation and delete the cluster.
What's next
- Optimize your usage of GKE with insights and recommendations.
- Best practices for running cost-optimized Kubernetes applications on GKE.