// Module included in the following assemblies:
//
// * installing/installing_gcp/installing-gcp-customizations.adoc
// * installing/installing_gcp/installing-gcp-network-customizations.adoc
// * installing/installing_gcp/installing-gcp-private.adoc
// * installing/installing_gcp/installing-gcp-vpc.adoc
// * installing/installing_gcp/installing-restricted-networks-gcp-installer-provisioned.adoc
// * installing/installing_gcp/installing-gcp-user-infra.adoc
// * installing/installing_gcp/installing-gcp-user-infra-vpc.adoc
// * installing/installing_gcp/installing-restricted-networks-gcp.adoc

ifeval::["{context}" == "installing-gcp-customizations"]
:ipi:
endif::[]
ifeval::["{context}" == "installing-gcp-network-customizations"]
:ipi:
endif::[]
ifeval::["{context}" == "installing-gcp-private"]
:ipi:
endif::[]
ifeval::["{context}" == "installing-gcp-vpc"]
:ipi:
endif::[]
ifeval::["{context}" == "installing-restricted-networks-gcp-installer-provisioned"]
:ipi:
endif::[]

:_mod-docs-content-type: PROCEDURE
[id="installation-custom-machine-types_{context}"]
= Using custom machine types

Using a custom machine type to install a {product-title} cluster is supported.

Consider the following when using a custom machine type:

* Similar to predefined instance types, custom machine types must meet the minimum resource requirements for control plane and compute machines. For more information, see "Minimum resource requirements for cluster installation".
* The name of the custom machine type must adhere to the following syntax:
+
--
`custom-<number_of_cpus>-<amount_of_memory_in_mb>`

For example, `custom-6-20480`.
--

ifdef::ipi[]
As part of the installation process, you specify the custom machine type in the `install-config.yaml` file.

.Sample `install-config.yaml` file with a custom machine type

[source,yaml]
----
compute:
- architecture: amd64
  hyperthreading: Enabled
  name: worker
  platform:
    gcp:
      type: custom-6-20480
  replicas: 2
controlPlane:
  architecture: amd64
  hyperthreading: Enabled
  name: master
  platform:
    gcp:
      type: custom-6-20480
  replicas: 3
----
endif::ipi[]

ifeval::["{context}" == "installing-gcp-customizations"]
:!ipi:
endif::[]
ifeval::["{context}" == "installing-gcp-network-customizations"]
:!ipi:
endif::[]
ifeval::["{context}" == "installing-gcp-private"]
:!ipi:
endif::[]
ifeval::["{context}" == "installing-gcp-vpc"]
:!ipi:
endif::[]
ifeval::["{context}" == "installing-restricted-networks-gcp-installer-provisioned"]
:!ipi:
endif::[]
