Scale Clusters
You can scale up or down the count of the worker nodes of Kubernetes Cluster using the Edit operation of the Node Groups.
Node Groups is the name for the CRD called Machine Deployment which is a logical representation of nodes with same properties and you can scale the replica count of this to reach to the desired number of nodes in your cluster. You have can multiple node groups in a cluster for different purposes such has have different type of nodes for running different type of workloads.
Scaling UP/Down a node group
Go to the Capacity and Health page of your cluster and click of triple dot menu of the intended node group in the node groups table. Click on Edit with bring out option to update the node group.

Node Group Properties
Desired Nodes
Provide the number of nodes to be created and associated with the node group.
Automatically scale this Node Group
Enabling this option will annotate the Node Group for the Cluster-AutoScaler to manage the auto-scaling of this node group. Following annotations are added on the Machine Deployment Type Node Group resource: - cluster.x-k8s.io/cluster-api-autoscaler-node-group-min-size: < MinimumNodeCount ' - cluster.x-k8s.io/cluster-api-autoscaler-node-group-max-size: '< MinimumNodeCount >'
Strategy
The deployment strategy to use to replace existing machines(nodes). PCD supports only Rolling Update type.
Max Surge Type
Choose the type for the maximum number of machines that can be scheduled above the desired number of machines. Number and Percentage are supported options.
Max Surge Value
MaxSurge is the maximum number of machines that can be scheduled above the desired number of machines. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). This can not be 0 if MaxUnavailable is 0. Absolute number is calculated from percentage by rounding up. Defaults to 1. Example: when this is set to 30%, the new MachineSet can be scaled up immediately when the rolling update starts, such that the total number of old and new machines do not exceed 130% of desired machines. Once old machines have been killed, new MachineSet can be scaled up further, ensuring that total number of machines running at any time during the update is at most 130% of desired machines.
Max Unavailable Type
Choose the type for the maximum number of machines that can be unavailable during the node updates. Number and Percentage are supported options.
Max Unavailable Value
MaxUnavailable is the maximum number of machines that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). Absolute number is calculated from percentage by rounding down. This can not be 0 if MaxSurge is 0. Defaults to 0. Example: when this is set to 30%, the old MachineSet can be scaled down to 70% of desired machines immediately when the rolling update starts. Once new machines are ready, old MachineSet can be scaled down further, followed by scaling up the new MachineSet, ensuring that the total number of machines available at all times during the update is at least 70% of desired machines.
Using Kubernetes Cluster AutoScalar
Cluster Autoscaler monitors pending pods and adjusts node pools dynamically by:
Adding nodes when pending pods cannot be scheduled due to insufficient resources.
Removing underutilized nodes when workloads decrease, ensuring cost optimization.
Uses MachineDeployments objects to manage node scaling.
Communicates with the PCD OpenStack cloud provider to provision and remove instances dynamically.
Can be enabled/disabled for each node group.
Note: Every scale down operation down by Cluster AutoScalar takes at least 10 minutes to initiate, and is set by the flag --scale-down-unneeded-time=10m by default.
Last updated
Was this helpful?
