Cluster Autoscaler
Definition
Cluster Autoscaler is a component used in Kubernetes environments to automatically adjust the size of a cluster based on the current workload demands. It scales up the cluster by adding nodes when there are pending pods that cannot be scheduled due to resource constraints and scales down by removing underutilized nodes, ensuring efficient resource utilization and cost management.
Secure Settings Example
apiVersion: autoscaling/v1
kind: ClusterAutoscaler
metadata:
name: cluster-autoscaler
namespace: kube-system
spec:
scaleDown:
enabled: true
delayAfterAdd: 10m
delayAfterDelete: 10s
delayAfterFailure: 3m
unneededTime: 10m
balanceSimilarNodeGroups: true
expander: least-waste
maxNodeProvisionTime: 15m
Insecure Settings Example
apiVersion: autoscaling/v1
kind: ClusterAutoscaler
metadata:
name: cluster-autoscaler
namespace: kube-system
spec:
scaleDown:
enabled: false
balanceSimilarNodeGroups: false
expander: random
maxNodeProvisionTime: 60m