You can use machine management to flexibly work with underlying infrastructure like Amazon Web Services (AWS), Azure, Google Cloud Platform (GCP), OpenStack, Red Hat Virtualization (RHV), and vSphere to manage the OKD cluster. You can control the cluster and perform auto-scaling, such as scaling up and down the cluster based on specific workload policies.

The OKD cluster can horizontally scale up and down when the load increases or decreases. It is important to have a cluster that adapts to changing workloads.

Machine management is implemented as a Custom Resource Definition(CRD). A CRD object defines a new unique object Kind in the cluster and enables the Kubernetes API server to handle the object’s entire lifecycle.

The Machine API Operator provisions the following resources:

  • MachineSet

  • Machine

  • Cluster Autoscaler

  • Machine Autoscaler

  • Machine Health Checks

What you can do with machine sets

As a cluster administrator you can:


Autoscale your cluster to ensure flexibility to changing workloads. To autoscale your OKD cluster, you must first deploy a cluster autoscaler, and then deploy a machine autoscaler for each machine set. The cluster autoscaler increases and decreases the size of the cluster based on deployment needs. The machine autoscaler adjusts the number of machines in the machine sets that you deploy in your OKD cluster.

User-provisioned infrastructure

User-provisioned infrastructure is an environment where you can deploy infrastructure such as compute, network, and storage resources that host the OKD. You can add compute machines to a cluster on user-provisioned infrastructure either as part of or after the installation process.

What you can do with RHEL compute machines

As a cluster administrator, you can: