Chapter 7. Installation configuration parameters for Nutanix
Before you deploy an OpenShift Container Platform cluster on Nutanix, you provide parameters to customize your cluster and the platform that hosts it. When you create the install-config.yaml
file, you provide values for the required parameters through the command line. You can then modify the install-config.yaml
file to customize your cluster further.
7.1. Available installation configuration parameters for Nutanix
The following tables specify the required, optional, and Nutanix-specific installation configuration parameters that you can set as part of the installation process.
After installation, you cannot modify these parameters in the install-config.yaml
file.
7.1.1. Required configuration parameters
Required installation configuration parameters are described in the following table:
Parameter | Description | Values |
---|---|---|
apiVersion: |
The API version for the | String |
baseDomain: |
The base domain of your cloud provider. The base domain is used to create routes to your OpenShift Container Platform cluster components. The full DNS name for your cluster is a combination of the |
A fully-qualified domain or subdomain name, such as |
metadata: |
Kubernetes resource | Object |
metadata: name: |
The name of the cluster. DNS records for the cluster are all subdomains of |
String of lowercase letters and hyphens ( |
platform: |
The configuration for the specific platform upon which to perform the installation: | Object |
pullSecret: | Get a pull secret from Red Hat OpenShift Cluster Manager to authenticate downloading container images for OpenShift Container Platform components from services such as Quay.io. |
{ "auths":{ "cloud.openshift.com":{ "auth":"b3Blb=", "email":"you@example.com" }, "quay.io":{ "auth":"b3Blb=", "email":"you@example.com" } } } |
7.1.2. Network configuration parameters
You can customize your installation configuration based on the requirements of your existing network infrastructure. For example, you can expand the IP address block for the cluster network or provide different IP address blocks than the defaults.
Only IPv4 addresses are supported.
Parameter | Description | Values |
---|---|---|
networking: | The configuration for the cluster network. | Object Note
You cannot modify parameters specified by the |
networking: networkType: | The Red Hat OpenShift Networking network plugin to install. |
|
networking: clusterNetwork: | The IP address blocks for pods.
The default value is If you specify multiple IP address blocks, the blocks must not overlap. | An array of objects. For example: networking: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 |
networking: clusterNetwork: cidr: |
Required if you use An IPv4 network. |
An IP address block in Classless Inter-Domain Routing (CIDR) notation. The prefix length for an IPv4 block is between |
networking: clusterNetwork: hostPrefix: |
The subnet prefix length to assign to each individual node. For example, if | A subnet prefix.
The default value is |
networking: serviceNetwork: |
The IP address block for services. The default value is The OVN-Kubernetes network plugins supports only a single IP address block for the service network. | An array with an IP address block in CIDR format. For example: networking: serviceNetwork: - 172.30.0.0/16 |
networking: machineNetwork: | The IP address blocks for machines. If you specify multiple IP address blocks, the blocks must not overlap. | An array of objects. For example: networking: machineNetwork: - cidr: 10.0.0.0/16 |
networking: machineNetwork: cidr: |
Required if you use | An IP network block in CIDR notation.
For example, Note
Set the |
7.1.3. Optional configuration parameters
Optional installation configuration parameters are described in the following table:
Parameter | Description | Values |
---|---|---|
additionalTrustBundle: | A PEM-encoded X.509 certificate bundle that is added to the nodes' trusted certificate store. This trust bundle may also be used when a proxy has been configured. | String |
capabilities: | Controls the installation of optional core cluster components. You can reduce the footprint of your OpenShift Container Platform cluster by disabling optional components. For more information, see the "Cluster capabilities" page in Installing. | String array |
capabilities: baselineCapabilitySet: |
Selects an initial set of optional capabilities to enable. Valid values are | String |
capabilities: additionalEnabledCapabilities: |
Extends the set of optional capabilities beyond what you specify in | String array |
cpuPartitioningMode: | Enables workload partitioning, which isolates OpenShift Container Platform services, cluster management workloads, and infrastructure pods to run on a reserved set of CPUs. Workload partitioning can only be enabled during installation and cannot be disabled after installation. While this field enables workload partitioning, it does not configure workloads to use specific CPUs. For more information, see the Workload partitioning page in the Scalability and Performance section. |
|
compute: | The configuration for the machines that comprise the compute nodes. |
Array of |
compute: architecture: |
Determines the instruction set architecture of the machines in the pool. Currently, clusters with varied architectures are not supported. All pools must specify the same architecture. Valid values are | String |
compute: hyperthreading: |
Whether to enable or disable simultaneous multithreading, or Important If you disable simultaneous multithreading, ensure that your capacity planning accounts for the dramatically decreased machine performance. |
|
compute: name: |
Required if you use |
|
compute: platform: |
Required if you use |
|
compute: replicas: | The number of compute machines, which are also known as worker machines, to provision. |
A positive integer greater than or equal to |
featureSet: | Enables the cluster for a feature set. A feature set is a collection of OpenShift Container Platform features that are not enabled by default. For more information about enabling a feature set during installation, see "Enabling features using feature gates". |
String. The name of the feature set to enable, such as |
controlPlane: | The configuration for the machines that comprise the control plane. |
Array of |
controlPlane: architecture: |
Determines the instruction set architecture of the machines in the pool. Currently, clusters with varied architectures are not supported. All pools must specify the same architecture. Valid values are | String |
controlPlane: hyperthreading: |
Whether to enable or disable simultaneous multithreading, or Important If you disable simultaneous multithreading, ensure that your capacity planning accounts for the dramatically decreased machine performance. |
|
controlPlane: name: |
Required if you use |
|
controlPlane: platform: |
Required if you use |
|
controlPlane: replicas: | The number of control plane machines to provision. |
Supported values are |
credentialsMode: | The Cloud Credential Operator (CCO) mode. If no mode is specified, the CCO dynamically tries to determine the capabilities of the provided credentials, with a preference for mint mode on the platforms where multiple modes are supported. Note Not all CCO modes are supported for all cloud providers. For more information about CCO modes, see the "Managing cloud provider credentials" entry in the Authentication and authorization content. |
|
fips: |
Enable or disable FIPS mode. The default is Important To enable FIPS mode for your cluster, you must run the installation program from a Red Hat Enterprise Linux (RHEL) computer configured to operate in FIPS mode. For more information about configuring FIPS mode on RHEL, see Switching RHEL to FIPS mode. When running Red Hat Enterprise Linux (RHEL) or Red Hat Enterprise Linux CoreOS (RHCOS) booted in FIPS mode, OpenShift Container Platform core components use the RHEL cryptographic libraries that have been submitted to NIST for FIPS 140-2/140-3 Validation on only the x86_64, ppc64le, and s390x architectures. Note If you are using Azure File storage, you cannot enable FIPS mode. |
|
imageContentSources: | Sources and repositories for the release-image content. |
Array of objects. Includes a |
imageContentSources: source: |
Required if you use | String |
imageContentSources: mirrors: | Specify one or more repositories that may also contain the same images. | Array of strings |
publish: | How to publish or expose the user-facing endpoints of your cluster, such as the Kubernetes API, OpenShift routes. |
Setting this field to Important
If the value of the field is set to |
sshKey: | The SSH key to authenticate access to your cluster machines. Note
For production OpenShift Container Platform clusters on which you want to perform installation debugging or disaster recovery, specify an SSH key that your |
For example, |
7.1.4. Additional Nutanix configuration parameters
Additional Nutanix configuration parameters are described in the following table:
Parameter | Description | Values |
---|---|---|
compute: platform: nutanix: categories: key: |
The name of a prism category key to apply to compute VMs. This parameter must be accompanied by the | String |
compute: platform: nutanix: categories: value: |
The value of a prism category key-value pair to apply to compute VMs. This parameter must be accompanied by the | String |
compute: platform: nutanix: failureDomains: | The failure domains that apply to only compute machines.
Failure domains are specified in | List. The name of one or more failures domains. |
compute: platform: nutanix: gpus: type: | The type of identifier used to attach a GPU to a compute machine. Valid values are "Name" or "DeviceID". | String |
compute: platform: nutanix: gpus: name: |
The name of the GPU device to attach to a compute machine. This parameter is required if the GPU | String |
compute: platform: nutanix: gpus: deviceID: |
The device identifier of the GPU device to attach to a compute machine. This information is available in Prism Central. This parameter is required if the GPU | Integer |
compute: platform: nutanix: project: type: | The type of identifier you use to select a project for compute VMs. Projects define logical groups of user roles for managing permissions, networks, and other parameters. For more information on projects, see Projects Overview. |
|
compute: platform: nutanix: project: name: or uuid: |
The name or UUID of a project with which compute VMs are associated. This parameter must be accompanied by the | String |
compute: platform: nutanix: bootType: |
The boot type that the compute machines use. You must use the |
|
compute: platform: nutanix: dataDisks: dataSourceImage: name: | Optional. The name of the data source image for the virtual machine disk in Prism Central. | String |
compute: platform: nutanix: dataDisks: dataSourceImage: referenceName: |
Optional. The reference name of the data source image in the failure domain. If you use this parameter, you must configure a matching | String |
compute: platform: nutanix: dataDisks: dataSourceImage: uuid: | The UUID of the data source image in Prism Central. This value is required. | String |
compute: platform: nutanix: dataDisks: deviceProperties: adapterType: | The adapter type of the disk address. If the disk type is "Disk", valid values are "SCSI", "IDE", "PCI", "SATA" or "SPAPR". If the disk type is "CDRom", valid values are "IDE" or "SATA". | String |
compute: platform: nutanix: dataDisks: deviceProperties: deviceIndex: |
The index of the disk address. Valid values are non-negative integers including 0. The device index for disks that share the same adapter type should start at 0 and increase consecutively. The default value is 0. For each virtual machine, the | Non-negative integer, including 0. |
compute: platform: nutanix: dataDisks: deviceProperties: deviceType: | The disk device type. Valid values are "Disk" and "CDRom". | String |
compute: platform: nutanix: dataDisks: diskSize: | The size of the disk to attach to the virtual machine. The minimum size is 1Gb. | Quantity format, such as 100G or 100Gi. For more information on this format, see link:https://pkg.go.dev/k8s.io/apimachinery/pkg/api/resource#Format. |
compute: platform: nutanix: dataDisks: storageConfig: diskMode: | The disk mode. Valid values are "Standard" or "Flash", and the default is "Standard". | String |
compute: platform: nutanix: dataDisks: storageConfig: storageContainer: name: | Optional. The name of the storage container object used by the virtual machine disk in Prism Central. | String |
compute: platform: nutanix: dataDisks: storageConfig: storageContainer: referenceName: |
Optional. The reference name of the storage container in the failure domain. If you use this, you must configure a matching | String |
compute: platform: nutanix: dataDisks: storageConfig: storageContainer: uuid: | The UUID of the storage container in Prism Central. | String |
controlPlane: platform: nutanix: categories: key: |
The name of a prism category key to apply to control plane VMs. This parameter must be accompanied by the | String |
controlPlane: platform: nutanix: categories: value: |
The value of a prism category key-value pair to apply to control plane VMs. This parameter must be accompanied by the | String |
controlPlane: platform: nutanix: failureDomains: | The failure domains that apply to only control plane machines.
Failure domains are specified in | List. The name of one or more failures domains. |
controlPlane: platform: nutanix: project: type: | The type of identifier you use to select a project for control plane VMs. Projects define logical groups of user roles for managing permissions, networks, and other parameters. For more information on projects, see Projects Overview. |
|
controlPlane: platform: nutanix: project: name: or uuid: |
The name or UUID of a project with which control plane VMs are associated. This parameter must be accompanied by the | String |
platform: nutanix: defaultMachinePlatform: categories: key: |
The name of a prism category key to apply to all VMs. This parameter must be accompanied by the | String |
platform: nutanix: defaultMachinePlatform: categories: value: |
The value of a prism category key-value pair to apply to all VMs. This parameter must be accompanied by the | String |
platform: nutanix: defaultMachinePlatform: failureDomains: | The failure domains that apply to both control plane and compute machines.
Failure domains are specified in | List. The name of one or more failures domains. |
platform: nutanix: defaultMachinePlatform: project: type: | The type of identifier you use to select a project for all VMs. Projects define logical groups of user roles for managing permissions, networks, and other parameters. For more information on projects, see Projects Overview. |
|
platform: nutanix: defaultMachinePlatform: project: name: or uuid: |
The name or UUID of a project with which all VMs are associated. This parameter must be accompanied by the | String |
platform: nutanix: defaultMachinePlatform: bootType: |
The boot type for all machines. You must use the |
|
platform: nutanix: apiVIP: | The virtual IP (VIP) address that you configured for control plane API access. | IP address |
platform: nutanix: failureDomains: - name: prismElement: name: uuid: subnetUUIDs: - | By default, the installation program installs cluster machines to a single Prism Element instance. You can specify additional Prism Element instances for fault tolerance, and then apply them to:
| A list of configured failure domains. For more information on usage, see "Configuring a failure domain" in "Installing a cluster on Nutanix". |
platform: nutanix: ingressVIP: | The virtual IP (VIP) address that you configured for cluster ingress. | IP address |
platform: nutanix: prismCentral: endpoint: address: | The Prism Central domain name or IP address. | String |
platform: nutanix: prismCentral: endpoint: port: | The port that is used to log into Prism Central. | String |
platform: nutanix: prismCentral: password: | The password for the Prism Central user name. | String |
platform: nutanix: prismCentral: username: | The user name that is used to log into Prism Central. | String |
platform: nutanix: prismElements: endpoint: address: | The Prism Element domain name or IP address. [1] | String |
platform: nutanix: prismElements: endpoint: port: | The port that is used to log into Prism Element. | String |
platform: nutanix: prismElements: uuid: | The universally unique identifier (UUID) for Prism Element. | String |
platform: nutanix: subnetUUIDs: | The UUID of the Prism Element network that contains the virtual IP addresses and DNS records that you configured. [2] | String |
platform: nutanix: clusterOSImage: | Optional: By default, the installation program downloads and installs the Red Hat Enterprise Linux CoreOS (RHCOS) image. If Prism Central does not have internet access, you can override the default behavior by hosting the RHCOS image on any HTTP server and pointing the installation program to the image. | An HTTP or HTTPS URL, optionally with a SHA-256 checksum. For example, http://example.com/images/rhcos-47.83.202103221318-0-nutanix.x86_64.qcow2 |
-
The
prismElements
section holds a list of Prism Elements (clusters). A Prism Element encompasses all of the Nutanix resources, for example virtual machines and subnets, that are used to host the OpenShift Container Platform cluster. - Only one subnet per Prism Element in an OpenShift Container Platform cluster is supported.