:_mod-docs-content-type: ASSEMBLY
[id="nutanix-failure-domains"]
= Fault tolerant deployments using multiple Prism Elements
include::_attributes/common-attributes.adoc[]
:context: nutanix-failure-domains

toc::[]

[role="_abstract"]
By default, the installation program installs control plane and compute machines into a single Nutanix Prism Element (cluster). To improve the fault tolerance of your {product-title} cluster, you can specify that these machines be distributed across multiple Nutanix clusters by configuring failure domains.

A failure domain represents an additional Prism Element instance that is available to {product-title} machine pools during and after installation.

[id="nutanix-failure-domains-install-method_{context}"]
== Installation method and failure domain configuration

The {product-title} installation method determines how and when you configure failure domains:

* If you deploy using installer-provisioned infrastructure, you can configure failure domains in the installation configuration file before deploying the cluster.
+
You can also configure failure domains after the cluster is deployed, as described in the following section.

* If you deploy using infrastructure that you manage (user-provisioned infrastructure) no additional configuration is required. After the cluster is deployed, you can manually distribute control plane and compute machines across failure domains.

[id="nutanix-failure-domains-adding-to-existing-cluster_{context}"]
== Adding failure domains to an existing Nutanix cluster

By default, the installation program installs control plane and compute machines into a single Nutanix Prism Element (cluster). After an {product-title} cluster is deployed, you can improve its fault tolerance by adding additional Prism Element instances to the deployment using failure domains.

A failure domain represents a single Prism Element instance where new control plane and compute machines can be deployed and existing control plane and compute machines can be distributed.

include::modules/installation-nutanix-failure-domains-req.adoc[leveloffset=+2]

include::modules/post-installation-configuring-nutanix-failure-domains.adoc[leveloffset=+2]

include::modules/post-installation-adding-nutanix-failure-domains-control-planes.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources
* xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-checking-status_cpmso-getting-started[Checking the control plane machine set custom resource state]
* xref:../../machine_management/control_plane_machine_management/cpmso-managing-machines.adoc#cpmso-feat-replace_cpmso-managing-machines[Replacing a control plane machine]

include::modules/nutanix-failure-domains-compute-machines-reference.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources
* xref:../../installing/installing_nutanix/nutanix-failure-domains.adoc#post-installation-adding-nutanix-failure-domains-compute-machines-edit_nutanix-failure-domains[Editing existing compute machine sets to implement failure domains]
* xref:../../installing/installing_nutanix/nutanix-failure-domains.adoc#post-installation-adding-nutanix-failure-domains-compute-machines-replace_nutanix-failure-domains[Replacing existing compute machine sets to implement failure domains]

include::modules/post-installation-adding-nutanix-failure-domains-compute-machines-edit.adoc[leveloffset=+3]

[role="_additional-resources"]
.Additional resources
* xref:../../machine_management/modifying-machineset.adoc#modifying-machineset[Modifying a compute machine set]

include::modules/post-installation-adding-nutanix-failure-domains-compute-machines-replace.adoc[leveloffset=+3]

[role="_additional-resources"]
.Additional resources
* xref:../../machine_management/creating_machinesets/creating-machineset-nutanix.adoc#creating-machineset-nutanix[Creating a compute machine set on Nutanix]

//Improving reliability for multiple subnet configurations on Nutanix
include::modules/cpmso-ts-nutanix-multiple-subnet.adoc[leveloffset=+1]

[role="_additional-resources"]
[id="additional-resources_{context}"]
== Additional resources
* xref:../../installing/installing_nutanix/installing-nutanix-installer-provisioned.adoc#installation-configuring-nutanix-failure-domains_installing-nutanix-installer-provisioned[Configuring failure domains]
* xref:../../installing/installing_nutanix/nutanix-failure-domains.adoc#nutanix-failure-domains-adding-to-existing-cluster_nutanix-failure-domains[Adding failure domains to an existing Nutanix cluster]