Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!

We spend hours scrolling social media and waste money on things we forget, but won’t spend 30 minutes a day earning certifications that can change our lives.
Master in DevOps, SRE, DevSecOps & MLOps by DevOpsSchool!

Learn from Guru Rajesh Kumar and double your salary in just one year.


Get Started Now!

Openshift Admin: How to add node to the cluster in openshift ARO


New Method : How to Add Nodes to ARO (Worker Node Scaling)


If you are using the latest ARO architecture, which now uses Azure Machine Pools (based on the OpenShift Cluster API) instead of classic VMSS.

This newer approach abstracts away VMSS management from the user, and ARO uses ARM-managed resources and custom Azure Resource Providers to provision nodes under the hood.


🔍 So, where are your nodes coming from?

In the latest ARO versions:

  • Worker nodes are not shown as standalone VMSS in your Azure subscription.
  • They are instead part of ARO-managed infrastructure, controlled by OpenShift Machine API and ARO Resource Provider.

✅ What You Can Do Instead

🔧 Use OpenShift MachineSet to Add/Scale Nodes

  1. List MachineSets: oc get machinesets -n openshift-machine-api
  2. Check your current node count: oc get nodes
  3. Scale a MachineSet:
    Increase replicas of a MachineSet: oc scale machineset <machineset-name> -n openshift-machine-api --replicas=6
  4. Verify nodes: oc get nodes

🛠 Example: Scaling Worker Nodes from 3 → 6

# View existing MachineSets
oc get machinesets -n openshift-machine-api

# Example output:
# NAME                     DESIRED  CURRENT  READY
# aro-clustername-worker-<zone>   3        3       3

# Scale it
oc scale machineset aro-clustername-worker-<zone> -n openshift-machine-api --replicas=6
Code language: PHP (php)

The MachineSet controller will provision new worker VMs via ARO’s API integration and automatically register them to the cluster.


🧭 Where to See the Nodes in Azure?

Even though no VMSS is shown, you can:

  • Go to Azure → Resource Group (e.g., MC_<resource-group>_<cluster-name>_<region>)
  • Filter for Virtual Machines — you’ll see VMs named like: aro-<clustername>-worker-<zone>-<random>

These are the actual worker VMs, but ARO manages their lifecycle — so do not modify them directly.


📌 Summary

TaskWhere to Do It
Scale nodesoc scale machineset
View nodesoc get nodes
VM visibilityAzure Resource Group → Virtual Machines
Avoid touchingNo manual VMSS or VM operations in Azure

Old Method : How to Add Nodes to ARO (Worker Node Scaling)

🔍 Key Concept: ARO Cluster Node Scaling

ARO does not support self-managed scaling of worker nodes via the OpenShift UI or CLI directly. Instead, you must scale the cluster using Azure-native methods, because Microsoft fully manages the ARO control plane and infrastructure.


ARO worker nodes run as Azure Virtual Machine Scale Sets (VMSS). You scale the cluster by modifying the VMSS instance count.

📌 Option 1: Azure Portal (Easiest Way)

  1. Go to Azure Portal
  2. Navigate to your ARO Resource Group (usually named like aro-<clustername>).
  3. Find the VM Scale Set named something like aro-<clustername>-worker or similar.
  4. Click the “Instance count” setting.
  5. Increase the number of instances (nodes).
  6. Click “Save”.

💡 OpenShift will automatically recognize and schedule pods on the new nodes.


📌 Option 2: Azure CLI

You can scale using az vmss commands:

# Get the VMSS name
az vmss list --resource-group aro-<your-rg-name> --query "[].name"

# Scale to desired count (example: 6 nodes)
az vmss scale \
  --resource-group aro-<your-rg-name> \
  --name <vmss-name> \
  --new-capacity 6
Code language: PHP (php)

📌 Option 3: Terraform (Infrastructure-as-Code)

If you’re managing ARO via Terraform, adjust your VMSS configuration:

resource "azurerm_linux_virtual_machine_scale_set" "aro_worker" {
  name                = "aro-worker"
  resource_group_name = azurerm_resource_group.aro.name
  location            = azurerm_resource_group.aro.location

  # Change this to scale
  instances           = 6
  ...
}
Code language: PHP (php)

⚠️ Important Notes

  • You cannot add nodes via OpenShift Web Console or CLI like traditional OpenShift clusters.
  • ARO does not allow you to provision control plane (master) nodes or custom node pools — Microsoft manages them.
  • If you want different node types (e.g., GPU, FPGAs, spot VMs), you must use MachineSets bound to specific VMSS configurations — but this is an advanced and Azure-integrated setup.

🧠 Tips

  • For autoscaling, you can enable VMSS autoscaling (via Azure Monitor) for dynamic scale-out.
  • Use oc get nodes to verify new nodes are ready and oc adm top nodes to monitor resource usage.

Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x