1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00

OSDOCS-17013-bm-upi-5: CQAs bare metal UPI doc

This commit is contained in:
dfitzmau
2026-01-13 15:13:41 +00:00
committed by openshift-cherrypick-robot
parent cb10261d37
commit fe6af57511

View File

@@ -50,45 +50,41 @@ ifeval::["{context}" == "installing-platform-agnostic"]
endif::[]
:_mod-docs-content-type: CONCEPT
// Assumption is that attribute once outside ifdef works for several level one headings.
[id="installation-bare-metal-config-yaml_{context}"]
ifndef::ibm-z,ibm-z-kvm,ibm-power,agnostic[]
= Sample install-config.yaml file for bare metal
endif::ibm-z,ibm-z-kvm,ibm-power,agnostic[]
ifdef::ibm-z,ibm-z-kvm[]
= Sample install-config.yaml file for {ibm-z-title}
endif::ibm-z,ibm-z-kvm[]
ifdef::ibm-power[]
= Sample install-config.yaml file for {ibm-power-title}
endif::ibm-power[]
ifdef::agnostic[]
= Sample install-config.yaml file for other platforms
endif::agnostic[]
You can customize the `install-config.yaml` file to specify more details about your {product-title} cluster's platform or modify the values of the required parameters.
[role="_abstract"]
You can customize the `install-config.yaml` file to specify more details about your {product-title} cluster platform or modify the values of the required parameters.
[source,yaml,subs="attributes+"]
----
apiVersion: v1
baseDomain: example.com <1>
compute: <2>
- hyperthreading: Enabled <3>
baseDomain: example.com
compute:
- hyperthreading: Enabled
name: worker
replicas: 0 <4>
replicas: 0
ifdef::ibm-z,ibm-z-kvm[]
architecture: s390x
endif::ibm-z,ibm-z-kvm[]
ifdef::ibm-power[]
architecture: ppc64le
endif::ibm-power[]
controlPlane: <2>
hyperthreading: Enabled <3>
controlPlane:
hyperthreading: Enabled
name: master
replicas: 3 <5>
replicas: 3
ifdef::ibm-z,ibm-z-kvm[]
architecture: s390x
endif::ibm-z,ibm-z-kvm[]
@@ -96,54 +92,54 @@ ifdef::ibm-power[]
architecture: ppc64le
endif::ibm-power[]
metadata:
name: test <6>
name: test
networking:
clusterNetwork:
- cidr: 10.128.0.0/14 <7>
hostPrefix: 23 <8>
networkType: OVNKubernetes <9>
serviceNetwork: <10>
- cidr: 10.128.0.0/14
hostPrefix: 23
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform:
none: {} <11>
none: {}
ifndef::openshift-origin[]
fips: false <12>
fips: false
endif::openshift-origin[]
ifndef::restricted[]
ifndef::openshift-origin[]
pullSecret: '{"auths": ...}' <13>
pullSecret: '{"auths": ...}'
endif::openshift-origin[]
ifdef::openshift-origin[]
pullSecret: '{"auths": ...}' <12>
pullSecret: '{"auths": ...}'
endif::openshift-origin[]
ifndef::openshift-origin[]
sshKey: 'ssh-ed25519 AAAA...' <14>
sshKey: 'ssh-ed25519 AAAA...'
endif::openshift-origin[]
ifdef::openshift-origin[]
sshKey: 'ssh-ed25519 AAAA...' <13>
sshKey: 'ssh-ed25519 AAAA...'
endif::openshift-origin[]
endif::restricted[]
ifdef::restricted[]
ifndef::openshift-origin[]
pullSecret: '{"auths":{"<local_registry>": {"auth": "<credentials>","email": "you@example.com"}}}' <13>
pullSecret: '{"auths":{"<local_registry>": {"auth": "<credentials>","email": "you@example.com"}}}'
endif::openshift-origin[]
ifdef::openshift-origin[]
pullSecret: '{"auths":{"<local_registry>": {"auth": "<credentials>","email": "you@example.com"}}}' <12>
pullSecret: '{"auths":{"<local_registry>": {"auth": "<credentials>","email": "you@example.com"}}}'
endif::openshift-origin[]
ifndef::openshift-origin[]
sshKey: 'ssh-ed25519 AAAA...' <14>
sshKey: 'ssh-ed25519 AAAA...'
endif::openshift-origin[]
ifdef::openshift-origin[]
sshKey: 'ssh-ed25519 AAAA...' <13>
sshKey: 'ssh-ed25519 AAAA...'
endif::openshift-origin[]
endif::restricted[]
ifdef::restricted[]
ifndef::openshift-origin[]
additionalTrustBundle: | <15>
additionalTrustBundle: |
-----BEGIN CERTIFICATE-----
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
-----END CERTIFICATE-----
imageContentSources: <16>
imageContentSources:
- mirrors:
ifdef::ibm-z,ibm-z-kvm[]
- <local_repository>/ocp4/openshift4
@@ -161,11 +157,11 @@ ifndef::ibm-z,ibm-z-kvm[]
endif::ibm-z,ibm-z-kvm[]
endif::openshift-origin[]
ifdef::openshift-origin[]
additionalTrustBundle: | <14>
additionalTrustBundle: |
-----BEGIN CERTIFICATE-----
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
-----END CERTIFICATE-----
imageContentSources: <15>
imageContentSources:
- mirrors:
ifdef::ibm-z,ibm-z-kvm[]
- <local_repository>/ocp4/openshift4
@@ -184,69 +180,74 @@ endif::ibm-z,ibm-z-kvm[]
endif::openshift-origin[]
endif::restricted[]
----
<1> The base domain of the cluster. All DNS records must be sub-domains of this base and include the cluster name.
<2> The `controlPlane` section is a single mapping, but the `compute` section is a sequence of mappings. To meet the requirements of the different data structures, the first line of the `compute` section must begin with a hyphen, `-`, and the first line of the `controlPlane` section must not. Only one control plane pool is used.
where:
`baseDomain`:: Specifies the base domain of the cluster. All DNS records must be sub-domains of this base and include the cluster name.
`compute`:: Specifies the `compute` node configurations, which is a sequence of mappings. To meet the requirements of the different data structures, the first line of the `compute` section must begin with a hyphen, `-`.
`controlPlane`:: Specifies the `controlPlane` node configurations, which is a single mapping. To meet the requirements of the different data structures, the first line of the `controlPlane` section must not. Only one control plane pool is used.
ifndef::ibm-power[]
<3> Specifies whether to enable or disable simultaneous multithreading (SMT), or hyperthreading. By default, SMT is enabled to increase the performance of the cores in your machines. You can disable it by setting the parameter value to `Disabled`. If you disable SMT, you must disable it in all cluster machines; this includes both control plane and compute machines.
`hyperthreading`:: Specifies whether to enable or disable simultaneous multithreading (SMT), or hyperthreading. By default, SMT is enabled to increase the performance of the cores in your machines. You can disable it by setting the parameter value to `Disabled`. If you disable SMT, you must disable it in all cluster machines; this includes both control plane and compute machines.
endif::ibm-power[]
ifdef::ibm-power[]
<3> Simultaneous multithreading (SMT) is configured as a post-installation task.
`hyperthreading`:: Specifies simultaneous multithreading (SMT), which you configure as a post-installation task.
endif::ibm-power[]
ifndef::ibm-z,ibm-z-kvm,ibm-power[]
+
[NOTE]
====
Simultaneous multithreading (SMT) is enabled by default. If SMT is not enabled in your BIOS settings, the `hyperthreading` parameter has no effect.
====
+
[IMPORTANT]
====
If you disable `hyperthreading`, whether in the BIOS or in the `install-config.yaml` file, ensure that your capacity planning accounts for the dramatically decreased machine performance.
====
endif::ibm-z,ibm-z-kvm,ibm-power[]
ifdef::ibm-z,ibm-z-kvm[]
+
[NOTE]
====
Simultaneous multithreading (SMT) is enabled by default. If SMT is not available on your {product-title} nodes, the `hyperthreading` parameter has no effect.
====
+
[IMPORTANT]
====
If you disable `hyperthreading`, whether on your {product-title} nodes or in the `install-config.yaml` file, ensure that your capacity planning accounts for the dramatically decreased machine performance.
====
endif::ibm-z,ibm-z-kvm[]
<4> You must set this value to `0` when you install {product-title} on user-provisioned infrastructure. In installer-provisioned installations, the parameter controls the number of compute machines that the cluster creates and manages for you. In user-provisioned installations, you must manually deploy the compute machines before you finish installing the cluster.
+
`compute.replicas`:: Specifies the number of compute machines that the cluster creates and manages for you on installer-provisioned installations. You must set this value to `0` when you install {product-title} on user-provisioned infrastructure. Additionally for user-provisioned installations, you must manually deploy the compute machines before you finish installing the cluster.
[NOTE]
====
If you are installing a three-node cluster, do not deploy any compute machines when you install the {op-system-first} machines.
====
+
<5> The number of control plane machines that you add to the cluster. Because the cluster uses these values as the number of etcd endpoints in the cluster, the value must match the number of control plane machines that you deploy.
<6> The cluster name that you specified in your DNS records.
<7> A block of IP addresses from which pod IP addresses are allocated. This block must not overlap with existing physical networks. These IP addresses are used for the pod network. If you need to access the pods from an external network, you must configure load balancers and routers to manage the traffic.
+
`controlPlane.replicas`:: Specifies the number of control plane machines that you add to the cluster. Because the cluster uses these values as the number of etcd endpoints in the cluster, the value must match the number of control plane machines that you deploy.
`metadata.name`:: Specifies the cluster name that you specified in your DNS records.
`clusterNetwork.cidr`:: Specifies a block of IP addresses from which pod IP addresses are allocated. This block must not overlap with existing physical networks. These IP addresses are used for the pod network. If you need to access the pods from an external network, you must configure load balancers and routers to manage the traffic.
[NOTE]
====
Class E CIDR range is reserved for a future use. To use the Class E CIDR range, you must ensure your networking environment accepts the IP addresses within the Class E CIDR range.
====
+
<8> The subnet prefix length to assign to each individual node. For example, if `hostPrefix` is set to `23`, then each node is assigned a `/23` subnet out of the given `cidr`, which allows for 510 (2^(32 - 23) - 2) pod IP addresses. If you are required to provide access to nodes from an external network, configure load balancers and routers to manage the traffic.
<9> The cluster network plugin to install. The default value `OVNKubernetes` is the only supported value.
<10> The IP address pool to use for service IP addresses. You can enter only one IP address pool. This block must not overlap with existing physical networks. If you need to access the services from an external network, configure load balancers and routers to manage the traffic.
<11> You must set the platform to `none`. You cannot provide additional platform configuration variables for
`cidr.hostPrefix`:: Specifies the subnet prefix length to assign to each individual node. For example, if `hostPrefix` is set to `23`, then each node is assigned a `/23` subnet out of the given `cidr`, which allows for 510 (2^(32 - 23) - 2) pod IP addresses. If you are required to provide access to nodes from an external network, configure load balancers and routers to manage the traffic.
`networkType`:: Specifies the cluster network plugin to install. The default value `OVNKubernetes` is the only supported value.
`serviceNetwork`:: Specifies the IP address pool to use for service IP addresses. You can enter only one IP address pool. This block must not overlap with existing physical networks. If you need to access the services from an external network, configure load balancers and routers to manage the traffic.
`platform`:: Specifies the platform. You must set the platform to `none`. You cannot provide additional platform configuration variables for
ifndef::ibm-z,ibm-z-kvm,ibm-power[your platform.]
ifdef::ibm-z,ibm-z-kvm[{ibm-z-name} infrastructure.]
ifdef::ibm-power[{ibm-power-name} infrastructure.]
+
[IMPORTANT]
====
Clusters that are installed with the platform type `none` are unable to use some features, such as managing compute machines with the Machine API. This limitation applies even if the compute machines that are attached to the cluster are installed on a platform that would normally support the feature. This parameter cannot be changed after installation.
====
ifndef::openshift-origin[]
<12> Whether to enable or disable FIPS mode. By default, FIPS mode is not enabled. If FIPS mode is enabled, the {op-system-first} machines that {product-title} runs on bypass the default Kubernetes cryptography suite and use the cryptography modules that are provided with {op-system} instead.
+
`fips`:: Specifies either enabling or disabling FIPS mode. By default, FIPS mode is not enabled. If FIPS mode is enabled, the {op-system-first} machines that {product-title} runs on bypass the default Kubernetes cryptography suite and use the cryptography modules that are provided with {op-system} instead.
--
include::snippets/fips-snippet.adoc[]
--
@@ -254,46 +255,47 @@ include::snippets/fips-snippet.adoc[]
endif::openshift-origin[]
ifndef::restricted[]
ifndef::openshift-origin[]
<13> The {cluster-manager-url-pull}. This pull secret allows you to authenticate with the services that are provided by the included authorities, including Quay.io, which serves the container images for {product-title} components.
`pullSecret`:: Specifies the {cluster-manager-url-pull}. This pull secret allows you to authenticate with the services that are provided by the included authorities, including Quay.io, which serves the container images for {product-title} components.
endif::openshift-origin[]
ifdef::openshift-origin[]
<12> The {cluster-manager-url-pull}. This pull secret allows you to authenticate with the services that are provided by the included authorities, including Quay.io, which serves the container images for {product-title} components.
`pullSecret`:: Specifies the {cluster-manager-url-pull}. This pull secret allows you to authenticate with the services that are provided by the included authorities, including Quay.io, which serves the container images for {product-title} components.
endif::openshift-origin[]
endif::restricted[]
ifdef::restricted[]
ifndef::openshift-origin[]
<13> For `<local_registry>`, specify the registry domain name, and optionally the port, that your mirror registry uses to serve content. For example, `registry.example.com` or `registry.example.com:5000`. For `<credentials>`, specify the base64-encoded user name and password for your mirror registry.
`pullSecret`:: Specifies the registry domain name for `<local_registry>`, and optionally the port, that your mirror registry uses to serve content. For example, `registry.example.com` or `registry.example.com:5000`. For `<credentials>`, specify the base64-encoded user name and password for your mirror registry.
endif::openshift-origin[]
ifdef::openshift-origin[]
<12> For `<local_registry>`, specify the registry domain name, and optionally the port, that your mirror registry uses to serve content. For example, `registry.example.com` or `registry.example.com:5000`. For `<credentials>`, specify the base64-encoded user name and password for your mirror registry.
`pullSecret`:: Specifies the registry domain name for `<local_registry>`, and optionally the port, that your mirror registry uses to serve content. For example, `registry.example.com` or `registry.example.com:5000`. For `<credentials>`, specify the base64-encoded user name and password for your mirror registry.
endif::openshift-origin[]
endif::restricted[]
ifndef::openshift-origin[]
<14> The SSH public key for the `core` user in {op-system-first}.
`sshKey`:: Specifies the SSH public key for the `core` user in {op-system-first}.
endif::openshift-origin[]
ifdef::openshift-origin[]
<13> The SSH public key for the `core` user in {op-system-first}.
`sshKey`:: Specifies the SSH public key for the `core` user in {op-system-first}.
endif::openshift-origin[]
+
[NOTE]
====
For production {product-title} clusters on which you want to perform installation debugging or disaster recovery, specify an SSH key that your `ssh-agent` process uses.
====
ifdef::restricted[]
ifndef::ibm-z,ibm-z-kvm[]
ifndef::openshift-origin[]
<15> Provide the contents of the certificate file that you used for your mirror registry.
`additionalTrustBundle`:: Specifies the contents of the certificate file that you used for your mirror registry.
endif::openshift-origin[]
ifdef::openshift-origin[]
<14> Provide the contents of the certificate file that you used for your mirror registry.
`additionalTrustBundle`:: Specifies the contents of the certificate file that you used for your mirror registry.
endif::openshift-origin[]
endif::ibm-z,ibm-z-kvm[]
ifdef::ibm-z,ibm-z-kvm[]
<15> Add the `additionalTrustBundle` parameter and value. The value must be the contents of the certificate file that you used for your mirror registry. The certificate file can be an existing, trusted certificate authority or the self-signed certificate that you generated for the mirror registry.
`additionalTrustBundle`:: Specifies the `additionalTrustBundle` parameter and value. The value must be the contents of the certificate file that you used for your mirror registry. The certificate file can be an existing, trusted certificate authority or the self-signed certificate that you generated for the mirror registry.
endif::ibm-z,ibm-z-kvm[]
ifndef::openshift-origin[]
<16> Provide the `imageContentSources` section according to the output of the command that you used to mirror the repository.
+
`imageContentSources`:: Specifies the `imageContentSources` section according to the output of the command that you used to mirror the repository.
[IMPORTANT]
====
* When using the `oc adm release mirror` command, use the output from the `imageContentSources` section.
@@ -302,11 +304,10 @@ ifndef::openshift-origin[]
====
endif::openshift-origin[]
ifdef::openshift-origin[]
<15> Provide the `imageContentSources` section from the output of the command to mirror the repository.
`imageContentSources`:: Specifies the `imageContentSources` section from the output of the command to mirror the repository.
endif::openshift-origin[]
endif::restricted[]
ifeval::["{context}" == "installing-restricted-networks-bare-metal"]
:!restricted:
endif::[]