:_mod-docs-content-type: ASSEMBLY
[id="creating-infrastructure-machinesets"]
= Creating infrastructure machine sets
include::_attributes/common-attributes.adoc[]
:context: creating-infrastructure-machinesets

toc::[]

[role="_abstract"]
To reduce subscription costs, you can use infrastructure machine sets to create machines that host only infrastructure components, such as the default router, the integrated container image registry, cluster metrics, and monitoring. These infrastructure machines are not counted toward the total number of subscriptions that are required to run the environment.

For information about infrastructure nodes and which components can run on infrastructure nodes, see the "Red Hat OpenShift control plane and infrastructure nodes" section in the OpenShift sizing and subscription guide for enterprise Kubernetes document.

To create an infrastructure node, see "Creating a compute machine set", "Creating an infrastructure node", or "Creating an infrastructure node". Use the sample compute machine set for your cloud to deploy an infrastructure machine set. Modify the sample configuration file with the details of your environment.

include::snippets/machine-user-provisioned-limitations.adoc[leveloffset=+1]

include::modules/infrastructure-components.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* link:https://www.redhat.com/en/resources/openshift-subscription-sizing-guide[OpenShift sizing and subscription guide for enterprise Kubernetes]

include::modules/machineset-yaml-aws.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* xref:../machine_management/creating_machinesets/creating-machineset-aws.adoc#machineset-non-guaranteed-instance_creating-machineset-aws[Machine sets that deploy machines as Spot Instances]

include::modules/machineset-yaml-azure.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* xref:../machine_management/creating_machinesets/creating-machineset-azure.adoc#machineset-non-guaranteed-instance_creating-machineset-azure[Machine sets that deploy machines as Spot VMs]
* xref:../machine_management/creating_machinesets/creating-machineset-azure.adoc#installation-azure-marketplace-subscribe_creating-machineset-azure[Using the Azure Marketplace offering]

include::modules/machineset-yaml-azure-stack-hub.adoc[leveloffset=+1]

include::modules/machineset-yaml-ibm-cloud.adoc[leveloffset=+1]

include::modules/machineset-yaml-gcp.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* xref:../machine_management/creating_machinesets/creating-machineset-gcp.adoc#machineset-non-guaranteed-instance_legacy-preempt[Machine sets that deploy machines as preemptible VM instances]

include::modules/machineset-yaml-nutanix.adoc[leveloffset=+1]

include::modules/machineset-yaml-osp.adoc[leveloffset=+1]

include::modules/machineset-yaml-vsphere.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* xref:../machine_configuration/mco-update-boot-images-manual.adoc#mco-update-boot-images-manual[Manually updating the boot image]

include::modules/machineset-creating.adoc[leveloffset=+1]

include::modules/creating-an-infra-node.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* xref:../machine_management/creating-infrastructure-machinesets.adoc#infrastructure-components_creating-infrastructure-machinesets[{product-title} infrastructure components]
* xref:../machine_management/creating-infrastructure-machinesets.adoc#moving-resources-to-infrastructure-machinesets_creating-infrastructure-machinesets[Moving resources to infrastructure machine sets]

include::modules/creating-infra-machines.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* xref:../architecture/control-plane.adoc#architecture-machine-config-pools_control-plane[Node configuration management with machine config pools]

include::modules/binding-infra-node-workloads-using-taints-tolerations.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* xref:../machine_management/creating-infrastructure-machinesets.adoc#infrastructure-components_creating-infrastructure-machinesets[{product-title} infrastructure components]
* xref:../nodes/scheduling/nodes-scheduler-about.adoc#nodes-scheduler-about[Controlling pod placement using the scheduler]
* xref:../machine_management/creating-infrastructure-machinesets.adoc#moving-resources-to-infrastructure-machinesets_creating-infrastructure-machinesets[Moving resources to infrastructure machine sets]
* xref:../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations-about_nodes-scheduler-taints-tolerations[Understanding taints and tolerations]

include::modules/infra-machine-sets-moving.adoc[leveloffset=+1]

include::modules/infrastructure-moving-router.adoc[leveloffset=+2]

include::modules/infrastructure-moving-registry.adoc[leveloffset=+2]

include::modules/infrastructure-moving-monitoring.adoc[leveloffset=+2]

include::modules/nodes-pods-vertical-autoscaler-moving-vpa.adoc[leveloffset=+2]

include::modules/nodes-cluster-resource-override-move-infra.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources
* link:https://docs.redhat.com/en/documentation/monitoring_stack_for_red_hat_openshift/latest/html/configuring_core_platform_monitoring/configuring-performance-and-scalability#moving-monitoring-components-to-different-nodes_configuring-performance-and-scalability[Moving monitoring components to different nodes]

[role="_additional-resources"]
[id="additional-resources_{context}"]
== Additional resources
* link:https://www.redhat.com/en/resources/openshift-subscription-sizing-guide[OpenShift sizing and subscription guide for enterprise Kubernetes]
* xref:../machine_management/creating-infrastructure-machinesets.adoc#machineset-creating_creating-infrastructure-machinesets[Create an infrastructure machine set]
* xref:../machine_management/creating-infrastructure-machinesets.adoc#creating-an-infra-node_creating-infrastructure-machinesets[Label an infrastructure node]
* xref:../machine_management/creating-infrastructure-machinesets.adoc#creating-infra-machines_creating-infrastructure-machinesets[Use a machine config pool]