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

OSDOCS-17013-bm-upi-6: CQA for the BM UPI doc

This commit is contained in:
dfitzmau
2026-01-21 10:21:26 +00:00
parent 366187f828
commit 81d4d69607
33 changed files with 252 additions and 152 deletions

View File

@@ -186,8 +186,18 @@ include::modules/installation-user-infra-machines-advanced-customizing-live-netw
include::modules/installation-user-infra-machines-advanced-customizing-live-iscsi-manual.adoc[leveloffset=+4]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/installation-user-infra-machines-advanced-customizing-live-iscsi-ibft.adoc[leveloffset=+4]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
:boot-media!:
:boot!:
@@ -210,6 +220,11 @@ include::modules/installation-user-infra-machines-advanced-customizing-live-iscs
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -207,8 +207,18 @@ include::modules/installation-user-infra-machines-advanced-customizing-live-netw
include::modules/installation-user-infra-machines-advanced-customizing-live-iscsi-manual.adoc[leveloffset=+3]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/installation-user-infra-machines-advanced-customizing-live-iscsi-ibft.adoc[leveloffset=+3]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
:boot-media!:
:boot!:
@@ -231,6 +241,11 @@ include::modules/installation-user-infra-machines-advanced-customizing-live-iscs
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -202,8 +202,18 @@ include::modules/installation-user-infra-machines-advanced-customizing-live-netw
include::modules/installation-user-infra-machines-advanced-customizing-live-iscsi-manual.adoc[leveloffset=+4]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/installation-user-infra-machines-advanced-customizing-live-iscsi-ibft.adoc[leveloffset=+4]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
:boot-media!:
:boot!:
@@ -226,6 +236,11 @@ include::modules/installation-user-infra-machines-advanced-customizing-live-iscs
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -112,6 +112,11 @@ include::modules/installation-user-infra-machines-iso.adoc[leveloffset=+2]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -113,6 +113,11 @@ include::modules/installation-user-infra-machines-iso.adoc[leveloffset=+2]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -81,6 +81,11 @@ include::modules/installation-full-ibm-z-kvm-user-infra-machines-iso.adoc[levelo
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -64,6 +64,11 @@ include::modules/installation-ibm-z-user-infra-machines-iso.adoc[leveloffset=+1]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -65,6 +65,11 @@ include::modules/installation-ibm-z-user-infra-machines-iso.adoc[leveloffset=+1]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -89,6 +89,11 @@ include::modules/installation-full-ibm-z-kvm-user-infra-machines-iso.adoc[levelo
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -72,6 +72,11 @@ include::modules/installation-ibm-z-user-infra-machines-iso.adoc[leveloffset=+1]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -74,6 +74,11 @@ include::modules/installation-ibm-z-user-infra-machines-iso.adoc[leveloffset=+1]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -93,6 +93,11 @@ include::modules/installation-user-infra-machines-advanced.adoc[leveloffset=+2]
include::modules/installation-user-infra-machines-static-network.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page]
include::modules/configuring-dhcp-or-static-ip-addresses.adoc[leveloffset=+3]
include::modules/configuring-ip-address-without-static-hostname.adoc[leveloffset=+3]

View File

@@ -8,7 +8,10 @@
[id="creating-machines-bare-metal_{context}"]
= Installing {op-system} and starting the {product-title} bootstrap process
To install {product-title} on bare metal infrastructure that you provision, you must install {op-system-first} on the machines. When you install {op-system}, you must provide the Ignition config file that was generated by the {product-title} installation program for the type of machine you are installing. If you have configured suitable networking, DNS, and load balancing infrastructure, the {product-title} bootstrap process begins automatically after the {op-system} machines have rebooted.
[role="_abstract"]
To install {product-title} on bare-metal infrastructure that you provision, install {op-system-first} by using the generated Ignition config files. Providing these files ensures the bootstrap process begins automatically after the machines reboot.
If you have configured suitable networking, DNS, and load balancing infrastructure, the {product-title} bootstrap process begins automatically after the {op-system} machines have rebooted.
To install {op-system} on the machines, follow either the steps to use an ISO image or network PXE booting.

View File

@@ -125,27 +125,22 @@ endif::[]
[id="installation-configure-proxy_{context}"]
= Configuring the cluster-wide proxy during installation
Production environments can deny direct access to the internet and instead have
an HTTP or HTTPS proxy available. You can configure a new {product-title}
cluster to use a proxy by configuring the proxy settings in the
`install-config.yaml` file.
[role="_abstract"]
To enable internet access in environments that deny direct connections, configure a cluster-wide proxy in the `install-config.yaml` file. This configuration ensures that the new {product-title} cluster routes traffic through the specified HTTP or HTTPS proxy.
ifdef::bare-metal[]
[NOTE]
====
For bare metal installations, if you do not assign node IP addresses from the
range that is specified in the `networking.machineNetwork[].cidr` field in the
`install-config.yaml` file, you must include them in the `proxy.noProxy` field.
For bare-metal installations, if you do not assign node IP addresses from the range that is specified in the `networking.machineNetwork[].cidr` field in the `install-config.yaml` file, you must include them in the `proxy.noProxy` field.
====
endif::bare-metal[]
.Prerequisites
ifndef::gcp[]
* You have an existing `install-config.yaml` file.
// TODO: xref (../../installing/install_config/configuring-firewall.adoc#configuring-firewall)
endif::gcp[]
* You reviewed the sites that your cluster requires access to and determined whether any of them need to bypass the proxy. By default, all cluster egress traffic is proxied, including calls to hosting cloud provider APIs. You added sites to the `Proxy` object's `spec.noProxy` field to bypass the proxy if necessary.
* You have reviewed the sites that your cluster requires access to and determined whether any of them need to bypass the proxy. By default, all cluster egress traffic is proxied, including calls to hosting cloud provider APIs. You added sites to the `Proxy` object's `spec.noProxy` field to bypass the proxy if necessary.
+
[NOTE]
====
@@ -163,38 +158,35 @@ For installations on Amazon Web Services (AWS), {gcp-first}, Microsoft Azure, an
apiVersion: v1
baseDomain: my.domain.com
proxy:
httpProxy: http://<username>:<pswd>@<ip>:<port> <1>
httpsProxy: https://<username>:<pswd>@<ip>:<port> <2>
httpProxy: http://<username>:<pswd>@<ip>:<port>
httpsProxy: https://<username>:<pswd>@<ip>:<port>
ifndef::aws[]
noProxy: example.com <3>
noProxy: example.com
endif::aws[]
ifdef::aws[]
noProxy: ec2.<aws_region>.amazonaws.com,elasticloadbalancing.<aws_region>.amazonaws.com,s3.<aws_region>.amazonaws.com <3>
noProxy: ec2.<aws_region>.amazonaws.com,elasticloadbalancing.<aws_region>.amazonaws.com,s3.<aws_region>.amazonaws.com
endif::aws[]
additionalTrustBundle: | <4>
additionalTrustBundle: |
-----BEGIN CERTIFICATE-----
<MY_TRUSTED_CA_CERT>
-----END CERTIFICATE-----
additionalTrustBundlePolicy: <policy_to_add_additionalTrustBundle> <5>
additionalTrustBundlePolicy: <policy_to_add_additionalTrustBundle>
# ...
----
<1> A proxy URL to use for creating HTTP connections outside the cluster. The
URL scheme must be `http`.
<2> A proxy URL to use for creating HTTPS connections outside the cluster.
<3> A comma-separated list of destination domain names, IP addresses, or other network CIDRs to exclude from proxying. Preface a domain with `.` to match subdomains only. For example, `.y.com` matches `x.y.com`, but not `y.com`. Use `*` to bypass the proxy for all destinations.
+
where:
+
`proxy.httpProxy`:: Specifies a proxy URL to use for creating HTTP connections outside the cluster. The URL scheme must be `http`.
`proxy.httpsProxy`:: Specifies a proxy URL to use for creating HTTPS connections outside the cluster.
`proxy.noProxy`:: Specifies a comma-separated list of destination domain names, IP addresses, or other network CIDRs to exclude from proxying. Preface a domain with `.` to match subdomains only. For example, `.y.com` matches `x.y.com`, but not `y.com`. Use `*` to bypass the proxy for all destinations.
ifdef::aws[]
If you have added the Amazon `EC2`,`Elastic Load Balancing`, and `S3` VPC endpoints to your VPC, you must add these endpoints to the `noProxy` field.
If you have added the Amazon `EC2`, `Elastic Load Balancing`, and `S3` VPC endpoints to your VPC, you must add these endpoints to the `noProxy` field.
endif::aws[]
ifdef::vsphere[]
You must include vCenter's IP address and the IP range that you use for its machines.
endif::vsphere[]
<4> If provided, the installation program generates a config map that is named `user-ca-bundle` in
the `openshift-config` namespace that contains one or more additional CA
certificates that are required for proxying HTTPS connections. The Cluster Network
Operator then creates a `trusted-ca-bundle` config map that merges these contents
with the {op-system-first} trust bundle, and this config map is referenced in the `trustedCA` field of the `Proxy` object. The `additionalTrustBundle` field is required unless
the proxy's identity certificate is signed by an authority from the {op-system} trust
bundle.
<5> Optional: The policy to determine the configuration of the `Proxy` object to reference the `user-ca-bundle` config map in the `trustedCA` field. The allowed values are `Proxyonly` and `Always`. Use `Proxyonly` to reference the `user-ca-bundle` config map only when `http/https` proxy is configured. Use `Always` to always reference the `user-ca-bundle` config map. The default value is `Proxyonly`.
`additionalTrustBundle`:: If provided, the installation program generates a config map that is named `user-ca-bundle` in the `openshift-config` namespace to hold the additional CA certificates. If you provide `additionalTrustBundle` and at least one proxy setting, the `Proxy` object is configured to reference the `user-ca-bundle` config map in the `trustedCA` field. The Cluster Network Operator then creates a `trusted-ca-bundle` config map that merges the contents specified for the `trustedCA` parameter with the {op-system} trust bundle. The `additionalTrustBundle` field is required unless the proxy's identity certificate is signed by an authority from the {op-system} trust bundle.
`additionalTrustBundlePolicy`:: Specifies the policy that determines the configuration of the `Proxy` object to reference the `user-ca-bundle` config map in the `trustedCA` field. The allowed values are `Proxyonly` and `Always`. Use `Proxyonly` to reference the `user-ca-bundle` config map only when `http/https` proxy is configured. Use `Always` to always reference the `user-ca-bundle` config map. The default value is `Proxyonly`. Optional parameter.
+
[NOTE]
====
@@ -204,7 +196,7 @@ The installation program does not support the proxy `readinessEndpoints` field.
[NOTE]
====
If the installer times out, restart and then complete the deployment by using the `wait-for` command of the installer. For example:
+
[source,terminal]
----
$ ./openshift-install wait-for install-complete --log-level debug
@@ -212,16 +204,12 @@ $ ./openshift-install wait-for install-complete --log-level debug
====
. Save the file and reference it when installing {product-title}.
The installation program creates a cluster-wide proxy that is named `cluster` that uses the proxy
settings in the provided `install-config.yaml` file. If no proxy settings are
provided, a `cluster` `Proxy` object is still created, but it will have a nil
`spec`.
+
The installation program creates a cluster-wide proxy that is named `cluster` that uses the proxy settings in the provided `install-config.yaml` file. If no proxy settings are provided, a `cluster` `Proxy` object is still created, but it will have a nil `spec`.
+
[NOTE]
====
Only the `Proxy` object named `cluster` is supported, and no additional
proxies can be created.
Only the `Proxy` object named `cluster` is supported, and no additional proxies can be created.
====
ifeval::["{context}" == "installing-aws-china-region"]

View File

@@ -40,11 +40,12 @@ endif::[]
[id="installation-three-node-cluster_{context}"]
= Configuring a three-node cluster
[role="_abstract"]
ifndef::ibm-z,ibm-z-kvm[]
Optionally, you can deploy zero compute machines in a bare metal cluster that consists of three control plane machines only. This provides smaller, more resource efficient clusters for cluster administrators and developers to use for testing, development, and production.
To create smaller, resource-efficient clusters for testing and production, deploy a bare-metal cluster with zero compute machines. This optional configuration uses only three control plane machines, optimizing infrastructure resources for administrators and developers.
endif::ibm-z,ibm-z-kvm[]
ifdef::ibm-z,ibm-z-kvm[]
Optionally, you can deploy zero compute machines in a minimal three node cluster that consists of three control plane machines only. This provides smaller, more resource efficient clusters for cluster administrators and developers to use for testing, development, and production.
To create smaller, resource-efficient clusters for testing and production, deploy a bare-metal cluster with zero compute machines in a minimal three-node cluster. This optional configuration uses only three control plane machines, optimizing infrastructure resources for testing, development, and production purposes.
endif::ibm-z,ibm-z-kvm[]
In three-node {product-title} environments, the three control plane machines are schedulable, which means that your application workloads are scheduled to run on them.
@@ -63,6 +64,7 @@ compute:
- name: worker
platform: {}
replicas: 0
# ...
----
+
[NOTE]

View File

@@ -118,7 +118,8 @@ endif::[]
[id="installation-user-infra-generate-k8s-manifest-ignition_{context}"]
= Creating the Kubernetes manifest and Ignition config files
Because you must modify some cluster definition files and manually start the cluster machines, you must generate the Kubernetes manifest and Ignition config files that the cluster needs to configure the machines.
[role="_abstract"]
To customize cluster definitions and manually start machines, generate the Kubernetes manifest and Ignition config files. These assets provide the necessary instructions to configure the cluster infrastructure according to your specific deployment requirements.
The installation configuration file transforms into the Kubernetes manifests. The manifests wrap into the Ignition configuration files, which are later used to configure the cluster machines.
@@ -133,14 +134,14 @@ ifdef::ibm-z[]
[NOTE]
====
The installation program that generates the manifest and Ignition files is architecture specific and can be obtained from the
link:https://mirror.openshift.com/pub/openshift-v4/s390x/clients/ocp/latest/[client image mirror]. The Linux version of the installation program runs on s390x only. This installer program is also available as a Mac OS version.
link:https://mirror.openshift.com/pub/openshift-v4/s390x/clients/ocp/latest/[client image mirror]. The Linux version of the installation program runs on s390x only. This installer program is also available as a macOS version.
====
endif::ibm-z[]
ifdef::ibm-power[]
[NOTE]
====
The installation program that generates the manifest and Ignition files is architecture specific and can be obtained from the
link:https://mirror.openshift.com/pub/openshift-v4/ppc64le/clients/ocp/latest/[client image mirror]. The Linux version of the installation program (without an architecture postfix) runs on ppc64le only. This installer program is also available as a Mac OS version.
link:https://mirror.openshift.com/pub/openshift-v4/ppc64le/clients/ocp/latest/[client image mirror]. The Linux version of the installation program (without an architecture postfix) runs on ppc64le only. This installer program is also available as a macOS version.
====
endif::ibm-power[]
@@ -160,11 +161,12 @@ endif::gcp[]
+
[source,terminal]
----
$ ./openshift-install create manifests --dir <installation_directory> <1>
$ ./openshift-install create manifests --dir <installation_directory>
----
+
<1> For `<installation_directory>`, specify the installation directory that
contains the `install-config.yaml` file you created.
where
+
`<installation_directory>`:: Specifies the installation directory that contains the `install-config.yaml` file you created.
ifdef::aws,azure,ash,gcp[]
. Remove the Kubernetes manifest files that define the control plane machines:
@@ -220,10 +222,7 @@ ifdef::osp,vsphere[]
$ rm -f openshift/99_openshift-cluster-api_master-machines-*.yaml openshift/99_openshift-cluster-api_worker-machineset-*.yaml openshift/99_openshift-machine-api_master-control-plane-machine-set.yaml
----
+
Because you create and manage these resources yourself, you do not have
to initialize them.
+
* You can preserve the compute machine set files to create compute machines by using the machine API, but you must update references to them to match your environment.
Because you create and manage these resources yourself, you do not have to initialize them. You can preserve the compute machine set files to create compute machines by using the machine API, but you must update references to them to match your environment.
endif::osp,vsphere[]
ifdef::baremetal,baremetal-restricted,ibm-z,ibm-power,three-node-cluster[]
+
@@ -240,11 +239,11 @@ endif::baremetal,baremetal-restricted,ibm-z,ibm-power,three-node-cluster[]
. Check that the `mastersSchedulable` parameter in the `<installation_directory>/manifests/cluster-scheduler-02-config.yml` Kubernetes manifest file is set to `false`. This setting prevents pods from being scheduled on the control plane machines:
+
--
.. Open the `<installation_directory>/manifests/cluster-scheduler-02-config.yml` file.
+
.. Locate the `mastersSchedulable` parameter and ensure that it is set to `false`.
+
.. Save and exit the file.
--
ifdef::gcp,aws,azure,ash[]
ifndef::user-infra-vpc[]
@@ -254,8 +253,7 @@ to create DNS records on your behalf, remove the `privateZone` and `publicZone`
sections from the `<installation_directory>/manifests/cluster-dns-02-config.yml` DNS configuration file:
endif::user-infra-vpc[]
ifdef::user-infra-vpc[]
. Remove the `privateZone`
sections from the `<installation_directory>/manifests/cluster-dns-02-config.yml` DNS configuration file:
. Remove the `privateZone` sections from the `<installation_directory>/manifests/cluster-dns-02-config.yml` DNS configuration file:
endif::user-infra-vpc[]
+
[source,yaml]
@@ -267,7 +265,7 @@ metadata:
name: cluster
spec:
baseDomain: example.openshift.com
privateZone: <1>
privateZone:
id: mycluster-100419-private-zone
ifndef::user-infra-vpc[]
publicZone: <1>
@@ -275,7 +273,7 @@ ifndef::user-infra-vpc[]
endif::user-infra-vpc[]
status: {}
----
<1> Remove this section completely.
`spec.privateZone`: Remove this section completely.
+
ifndef::user-infra-vpc[]
If you do so, you must add ingress DNS records manually in a later step.
@@ -285,13 +283,14 @@ endif::gcp,aws,azure,ash[]
ifdef::user-infra-vpc[]
. Configure the cloud provider for your VPC.
+
--
.. Open the `<installation_directory>/manifests/cloud-provider-config.yaml` file.
+
.. Add the `network-project-id` parameter and set its value to the ID of project that hosts the shared VPC network.
+
.. Add the `network-name` parameter and set its value to the name of the shared VPC network that hosts the {product-title} cluster.
+
.. Replace the value of the `subnetwork-name` parameter with the value of the shared VPC subnet that hosts your compute machines.
+
--
The contents of the `<installation_directory>/manifests/cloud-provider-config.yaml` resemble the following example:
+
[source,yaml]
@@ -351,26 +350,33 @@ ifdef::azure-user-infra[]
. When configuring Azure on user-provisioned infrastructure, you must export
some common variables defined in the manifest files to use later in the Azure
Resource Manager (ARM) templates:
+
.. Export the infrastructure ID by using the following command:
+
[source,terminal]
----
$ export INFRA_ID=<infra_id> <1>
$ export INFRA_ID=<infra_id>
----
<1> The {product-title} cluster has been assigned an identifier (`INFRA_ID`) in the form of `<cluster_name>-<random_string>`. This will be used as the base name for most resources created using the provided ARM templates. This is the value of the `.status.infrastructureName` attribute from the `manifests/cluster-infrastructure-02-config.yml` file.
+
where:
+
`<infra_id>`:: Specifies that the {product-title} cluster has been assigned an identifier (`INFRA_ID`) in the form of `<cluster_name>-<random_string>`. This identifier is used as the base name for most resources created using the provided ARM templates. This is the value of the `.status.infrastructureName` attribute from the `manifests/cluster-infrastructure-02-config.yml` file.
+
.. Export the resource group by using the following command:
+
[source,terminal]
----
$ export RESOURCE_GROUP=<resource_group> <1>
$ export RESOURCE_GROUP=<resource_group>
----
<1> All resources created in this Azure deployment exists as part of a link:https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/overview#resource-groups[resource group]. The resource group name is also based on the `INFRA_ID`, in the form of `<cluster_name>-<random_string>-rg`. This is the value of the `.status.platformStatus.azure.resourceGroupName` attribute from the `manifests/cluster-infrastructure-02-config.yml` file.
+
where:
+
`<resource_group>`:: All resources created in this Azure deployment exists as part of a link:https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/overview#resource-groups[resource group]. The resource group name is also based on the `INFRA_ID`, in the form of `<cluster_name>-<random_string>-rg`. This is the value of the `.status.platformStatus.azure.resourceGroupName` attribute from the `manifests/cluster-infrastructure-02-config.yml` file.
endif::azure-user-infra[]
ifdef::ash[]
. Manually create your cloud credentials.
+
.. From the directory that contains the installation program, obtain details of the {product-title} release image that your `openshift-install` binary is built to use:
+
[source,terminal]
@@ -383,14 +389,14 @@ $ openshift-install version
----
release image quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64
----
+
.. Set a `$RELEASE_IMAGE` variable with the release image from your installation file by running the following command:
+
[source,terminal]
----
$ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}')
----
+
.. Extract the list of `CredentialsRequest` custom resources (CRs) from the {product-title} release image by running the following command:
+
[source,terminal]
@@ -398,13 +404,16 @@ $ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}'
$ oc adm release extract \
--from=$RELEASE_IMAGE \
--credentials-requests \
--included \// <1>
--install-config=<path_to_directory_with_installation_configuration>/install-config.yaml \// <2>
--to=<path_to_directory_for_credentials_requests> <3>
--included \//
--install-config=<path_to_directory_with_installation_configuration>/install-config.yaml \//
--to=<path_to_directory_for_credentials_requests>
----
<1> The `--included` parameter includes only the manifests that your specific cluster configuration requires.
<2> Specify the location of the `install-config.yaml` file.
<3> Specify the path to the directory where you want to store the `CredentialsRequest` objects. If the specified directory does not exist, this command creates it.
+
where:
+
`--included`:: Specifies to include only the manifests that your specific cluster configuration requires.
`<path_to_directory_with_installation_configuration>`:: Specifies the location of the `install-config.yaml` file.
`<path_to_directory_for_credentials_requests>`:: Specifies the path to the directory where you want to store the `CredentialsRequest` objects. If the specified directory does not exist, this command creates it.
+
This command creates a YAML file for each `CredentialsRequest` object.
+
@@ -428,7 +437,7 @@ spec:
roleBindings:
- role: Contributor
----
+
.. Create YAML files for secrets in the `openshift-install` manifests directory that you generated previously. The secrets must be stored using the namespace and secret name defined in the `spec.secretRef` for each `CredentialsRequest` object. The format for the secret data varies for each cloud provider.
+
.Sample `secrets.yaml` file
@@ -448,7 +457,7 @@ stringData:
azure_resourcegroup: ${resource_group}
azure_region: ${azure_region}
----
+
.. Create a `cco-configmap.yaml` file in the manifests directory with the Cloud Credential Operator (CCO) disabled:
+
.Sample `ConfigMap` object
@@ -470,9 +479,12 @@ endif::ash[]
+
[source,terminal]
----
$ ./openshift-install create ignition-configs --dir <installation_directory> <1>
$ ./openshift-install create ignition-configs --dir <installation_directory>
----
<1> For `<installation_directory>`, specify the same installation directory.
+
where:
+
`<installation_directory>`:: Specifies the same installation directory.
+
Ignition config files are created for the bootstrap, control plane, and compute nodes in the installation directory. The `kubeadmin-password` and `kubeconfig` files are created in the `./<installation_directory>/auth` directory:
+
@@ -494,7 +506,7 @@ ifdef::osp[]
----
$ export INFRA_ID=$(jq -r .infraID metadata.json)
----
+
[TIP]
Extract the `infraID` key from `metadata.json` and use it as a prefix for all of the {rh-openstack} resources that you create. By doing so, you avoid name conflicts when making multiple deployments in the same project.
endif::osp[]

View File

@@ -9,7 +9,9 @@
= Default console configuration
[role="_abstract"]
{op-system-first} nodes installed from an {product-title} {product-version} boot image use a default console that is meant to accomodate most virtualized and bare metal setups. Different cloud and virtualization platforms may use different default settings depending on the chosen architecture. Bare metal installations use the kernel default settings which typically means the graphical console is the primary console and the serial console is disabled.
To ensure consistent system access, review the default console settings applied to {op-system-first} nodes. While the configuration accommodates most virtualized and bare-metal setups, specific platforms might require adjustments, particularly to enable the serial console on bare-metal hardware.
Bare-metal installations use the kernel default settings which typically means the graphical console is the primary console and the serial console is disabled.
The default consoles may not match your specific hardware configuration or you might have specific needs that require you to adjust the default console. For example:

View File

@@ -13,8 +13,8 @@ You can use the live ISO image or PXE environment to install {op-system} by inje
For an ISO image, the mechanism to do this is the `coreos-installer iso customize` subcommand, which modifies the `.iso` file with your configuration. Similarly, the mechanism for a PXE environment is the `coreos-installer pxe customize` subcommand, which creates a new `initramfs` file that includes your customizations.
The `customize` subcommand is a general purpose tool that can embed other types of customizations as well. The following tasks are examples of some of the more common customizations:
The `customize` subcommand is a general-purpose tool that can embed other types of customizations as well. The following tasks are examples of some of the more common customizations:
* Inject custom CA certificates for when corporate security policy requires their use.
* Configure network settings without the need for kernel arguments.
* Embed arbitrary preinstall and post-install scripts or binaries.
* Embed arbitrary pre-install and post-install scripts or binaries.

View File

@@ -13,7 +13,7 @@ You can provide certificate authority (CA) certificates to Ignition with the `--
[NOTE]
====
Custom CA certificates affect how Ignition fetches remote resources but they do not affect the certificates installed onto the system.
Custom CA certificates affect how Ignition fetches remote resources, but they do not affect the certificates installed onto the system.
====
.Procedure
@@ -21,15 +21,16 @@ Custom CA certificates affect how Ignition fetches remote resources but they do
. Download the `coreos-installer` binary from the link:https://mirror.openshift.com/pub/openshift-v4/clients/coreos-installer/latest/[`coreos-installer` image mirror] page.
ifeval::["{boot-media}" == "ISO image"]
. Retrieve the {op-system} ISO image from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to customize the ISO image for use with a custom CA:
. Retrieve the {op-system} ISO image from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page, and run the following command to customize the ISO image for use with a custom CA:
+
[source,terminal]
----
$ coreos-installer iso customize rhcos-<version>-live.x86_64.iso --ignition-ca cert.pem
----
endif::[]
ifeval::["{boot-media}" == "PXE environment"]
. Retrieve the {op-system} `kernel`, `initramfs` and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file for use with a custom CA:
. Retrieve the {op-system} `kernel`, `initramfs`, and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page, and run the following command to create a new customized `initramfs` file for use with a custom CA:
+
[source,terminal]
----

View File

@@ -13,7 +13,7 @@ You can set the iSCSI target and initiator values for automatic mounting, bootin
.Prerequisites
. You have an iSCSI target you want to install {op-system} on.
. Optional: you have multipathed your iSCSI target.
. Optional: You have multipathed your iSCSI target.
.Procedure
@@ -36,16 +36,16 @@ $ coreos-installer iso customize \
+
where:
+
`mount-iscsi.sh`:: The script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target and any commands enabling multipathing.
`unmount-iscsi.sh`:: The script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`/dev/mapper/mpatha`:: The path to the device. If you are using multipath, the multipath device, `/dev/mapper/mpatha`, If there are multiple multipath devices connected, or to be explicit, you can use the World Wide Name (WWN) symlink available in `/dev/disk/by-path`.
`config.ign`:: The Ignition configuration for the destination system.
`rd.iscsi.firmware=1`:: The iSCSI parameter is read from the BIOS firmware.
`rd.multipath=default`:: Optional: include this parameter if you are enabling multipathing.
`mount-iscsi.sh`:: Specifies the script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target and any commands enabling multipathing.
`unmount-iscsi.sh`:: Specifies the script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`/dev/mapper/mpatha`:: Specifies the path to the device. If you are using multipath, the multipath device, `/dev/mapper/mpatha`, If there are multiple multipath devices connected, or to be explicit, you can use the World Wide Name (WWN) symlink available in `/dev/disk/by-path`.
`config.ign`:: Specifies the Ignition configuration for the destination system.
`rd.iscsi.firmware=1`::Specifies the iSCSI parameter is read from the BIOS firmware.
`rd.multipath=default`:: Specifies if you want to enable multipathing. Optional parameter.
endif::[]
ifeval::["{boot-media}" == "PXE environment"]
. Retrieve the {op-system} `kernel`, `initramfs` and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file with the following information:
. Retrieve the {op-system} `kernel`, `initramfs`, and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file with the following information:
+
[source,text]
----
@@ -61,12 +61,12 @@ $ coreos-installer pxe customize \
+
where:
+
`mount-iscsi.sh`:: The script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target.
`unmount-iscsi.sh`:: The script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`/dev/mapper/mpatha`:: The path to the device. If you are using multipath, the multipath device, `/dev/mapper/mpatha`, If there are multiple multipath devices connected, or to be explicit, you can use the World Wide Name (WWN) symlink available in `/dev/disk/by-path`.
`config.ign`:: The Ignition configuration for the destination system.
`rd.iscsi.firmware=1`:: The iSCSI parameter is read from the BIOS firmware.
`rd.multipath=default`:: Optional: include this parameter if you are enabling multipathing.
`mount-iscsi.sh`:: Specifies the script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target.
`unmount-iscsi.sh`:: Specifies the script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`/dev/mapper/mpatha`:: Specifies the path to the device. If you are using multipath, the multipath device, `/dev/mapper/mpatha`, If there are multiple multipath devices connected, or to be explicit, you can use the World Wide Name (WWN) symlink available in `/dev/disk/by-path`.
`config.ign`:: Specifies the Ignition configuration for the destination system.
`rd.iscsi.firmware=1`:: Specifies the iSCSI parameter is read from the BIOS firmware.
`rd.multipath=default`:: Specifies if you want to enable multipathing. Optional parameter.
endif::[]
+
For more information about the iSCSI options supported by `dracut`, see the link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page].
For more information about see the `dracut.cmdline` manual page.

View File

@@ -9,7 +9,7 @@
= Customizing a live install {boot-media} for an iSCSI boot device
[role="_abstract"]
You can set the iSCSI target and initiator values for automatic mounting, booting and configuration using a customized version of the live {op-system} image.
You can set the iSCSI target and initiator values for automatic mounting, booting and configuration by using a customized version of the live {op-system} image.
.Prerequisites
. You have an iSCSI target you want to install {op-system} on.
@@ -35,16 +35,16 @@ $ coreos-installer iso customize \
+
where:
+
`mount-iscsi.sh`:: The script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target and any commands enabling multipathing.
`unmount-iscsi.sh`:: The script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`<target_iqn>`:: The location of the destination system. You must provide the IP address of the target portal, the associated port number, the target iSCSI node in IQN format, and the iSCSI logical unit number (LUN).
`config.ign`:: The Ignition configuration for the destination system.
`<initiator_iqn>`:: The iSCSI initiator, or client, name in IQN format. The initiator forms a session to connect to the iSCSI target.
`<target_iqn>`:: The the iSCSI target, or server, name in IQN format.
`mount-iscsi.sh`:: Specifies the script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target and any commands enabling multipathing.
`unmount-iscsi.sh`:: Specifies the script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`<target_iqn>`:: Specifies the location of the destination system. You must provide the IP address of the target portal, the associated port number, the target iSCSI node in IQN format, and the iSCSI logical unit number (LUN).
`config.ign`:: Specifies the Ignition configuration for the destination system.
`<initiator_iqn>`::Specifies the iSCSI initiator, or client, name in IQN format. The initiator forms a session to connect to the iSCSI target.
`<target_iqn>`::Specifies the iSCSI target, or server, name in IQN format.
endif::[]
ifeval::["{boot-media}" == "PXE environment"]
. Retrieve the {op-system} `kernel`, `initramfs` and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file with the following information:
. Retrieve the {op-system} `kernel`, `initramfs`, and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file with the following information:
+
[source,text]
----
@@ -60,12 +60,12 @@ $ coreos-installer pxe customize \
+
where:
+
`mount-iscsi.sh`:: The script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target and any commands enabling multipathing.
`unmount-iscsi.sh`:: The script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`<target_iqn>`:: The location of the destination system. You must provide the IP address of the target portal, the associated port number, the target iSCSI node in IQN format, and the iSCSI logical unit number (LUN).
`config.ign`:: The Ignition configuration for the destination system.
`<initiator_iqn>`:: The iSCSI initiator, or client, name in IQN format. The initiator forms a session to connect to the iSCSI target.
`<target_iqn>`:: The the iSCSI target, or server, name in IQN format.
`mount-iscsi.sh`:: Specifies the script that gets run before installation. It should contain the `iscsiadm` commands for mounting the iSCSI target and any commands enabling multipathing.
`unmount-iscsi.sh`:: Specifies the script that gets run after installation. It should contain the command `iscsiadm --mode node --logout=all`.
`<target_iqn>`:: Specifies the location of the destination system. You must provide the IP address of the target portal, the associated port number, the target iSCSI node in IQN format, and the iSCSI logical unit number (LUN).
`config.ign`:: Specifies the Ignition configuration for the destination system.
`<initiator_iqn>`:: Specifies the iSCSI initiator, or client, name in IQN format. The initiator forms a session to connect to the iSCSI target.
`<target_iqn>`:: Specifies the iSCSI target, or server, name in IQN format.
endif::[]
+
For more information about the iSCSI options supported by `dracut`, see the link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page].
For more information about the iSCSI options supported by `dracut`, see the `dracut.cmdline` manual page.

View File

@@ -9,7 +9,7 @@
= Modifying a live install {boot-media} with customized network settings
[role="_abstract"]
You can embed a NetworkManager keyfile into the live {boot-media} and pass it through to the installed system with the `--network-keyfile` flag of the `customize` subcommand.
You can embed a NetworkManager keyfile into the live {boot-media} and pass it through to the installed system with the `--network-keyfile` flag of the `customize` subcommand. By doing this task, you can apply persistent network configurations to the installed system.
[WARNING]
====
@@ -80,7 +80,7 @@ $ coreos-installer iso customize rhcos-<version>-live.x86_64.iso \
endif::[]
ifeval::["{boot-media}" == "PXE environment"]
. Retrieve the {op-system} `kernel`, `initramfs` and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file that contains your configured networking:
. Retrieve the {op-system} `kernel`, `initramfs`, and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and run the following command to create a new customized `initramfs` file that contains your configured networking:
+
[source,terminal]
----

View File

@@ -9,7 +9,7 @@
= Modifying a live install {boot-media} to enable the serial console
[role="_abstract"]
On clusters installed with {product-title} 4.12 and above, the serial console is disabled by default and all output is written to the graphical console. You can enable the serial console with the following procedure.
To redirect system output from the default graphical interface, enable the serial console by modifying the live install {boot-media}. This configuration ensures access to boot messages on {product-title} 4.12 and later clusters.
.Procedure
@@ -21,9 +21,9 @@ ifeval::["{boot-media}" == "ISO image"]
[source,terminal]
----
$ coreos-installer iso customize rhcos-<version>-live.x86_64.iso \
--dest-ignition <path> \//
--dest-console tty0 \//
--dest-console ttyS0,<options> \//
--dest-ignition <path> \
--dest-console tty0 \
--dest-console ttyS0,<options> \
--dest-device /dev/disk/by-id/scsi-<serial_number>
----
+
@@ -53,15 +53,15 @@ You can now recustomize the live {boot-media} or use it in its original state.
endif::[]
ifeval::["{boot-media}" == "PXE environment"]
. Retrieve the {op-system} `kernel`, `initramfs` and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and the Ignition config file, and then run the following command to create a new customized `initramfs` file that enables the serial console to receive output:
. Retrieve the {op-system} `kernel`, `initramfs`, and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and the Ignition config file, and then run the following command to create a new customized `initramfs` file that enables the serial console to receive output:
+
[source,terminal]
----
$ coreos-installer pxe customize rhcos-<version>-live-initramfs.x86_64.img \
--dest-ignition <path> \//
--dest-console tty0 \//
--dest-console ttyS0,<options> \//
--dest-device /dev/disk/by-id/scsi-<serial_number> \//
--dest-ignition <path> \
--dest-console tty0 \
--dest-console ttyS0,<options> \
--dest-device /dev/disk/by-id/scsi-<serial_number> \
-o rhcos-<version>-custom-initramfs.x86_64.img
----
+

View File

@@ -16,9 +16,7 @@ endif::[]
ifeval::["{boot-media}" == "PXE environment"]
`coreos-installer pxe customize`
endif::[]
subcommand. When you boot the {boot-media}, the customizations are applied automatically.
You can use this feature to configure the {boot-media} to automatically install {op-system}.
subcommand. When you boot the {boot-media}, the customizations are applied automatically. You can use this feature to configure the {boot-media} to automatically install {op-system}.
.Procedure
@@ -36,7 +34,7 @@ $ coreos-installer iso customize rhcos-<version>-live.x86_64.iso \
+
where:
+
`--dest-ignition`:: The Ignition config file that is generated from the `openshift-installer` installation program.
`--dest-ignition`:: Specifies the Ignition config file that is generated from the `openshift-installer` installation program.
`--dest-device`:: When you specify this option, the {boot-media} automatically runs an installation. Otherwise, the image remains configured for installation, but does not install automatically unless you specify the `coreos.inst.install_dev` kernel argument.
. Optional: To remove the {boot-media} customizations and return the image to its pristine state, run:
@@ -50,7 +48,7 @@ You can now re-customize the live {boot-media} or use it in its pristine state.
endif::[]
ifeval::["{boot-media}" == "PXE environment"]
. Retrieve the {op-system} `kernel`, `initramfs` and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and the Ignition config file, and then run the following command to create a new `initramfs` file that contains the customizations from your Ignition config:
. Retrieve the {op-system} `kernel`, `initramfs`, and `rootfs` files from the link:https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/latest/[{op-system} image mirror] page and the Ignition config file, and then run the following command to create a new `initramfs` file that contains the customizations from your Ignition config:
+
[source,terminal]
----
@@ -62,8 +60,8 @@ $ coreos-installer pxe customize rhcos-<version>-live-initramfs.x86_64.img \
+
where:
+
`--dest-ignition`:: The Ignition config file that is generated from `openshift-installer`.
`<serial_number>`:: When you specify this option, the {boot-media} automatically runs an install. Otherwise, the image remains configured for installing, but does not do so automatically unless you specify the `coreos.inst.install_dev` kernel argument.
`--dest-ignition`:: Specifies the Ignition config file that is generated from `openshift-installer`.
`<serial_number>`:: When you specify this option, the {boot-media} automatically runs an install. Otherwise, the image remains configured for installation, but does not do so automatically unless you specify the `coreos.inst.install_dev` kernel argument.
`<version>`:: Use the customized `initramfs` file in your PXE configuration. Add the `ignition.firstboot` and `ignition.platform.id=metal` kernel arguments if they are not already present.
endif::[]
+

View File

@@ -18,7 +18,9 @@ endif::[]
ifndef::agent[]
[role="_abstract"]
Disk partitions are created on {product-title} cluster nodes during the {op-system-first} installation. Each {op-system} node of a particular architecture uses the same partition layout, unless you override the default partitioning configuration. During the {op-system} installation, the size of the root file system is increased to use any remaining available space on the target device.
During {op-system-first} installation, {product-title} applies a default partition layout that automatically expands the root file system to fill available space. By understanding this default configuration, you can override partitioning settings to customize the layout for specific node architecture requirements.
During the {op-system} installation, the size of the root file system is increased to use any remaining available space on the target device.
[IMPORTANT]
====
@@ -41,7 +43,7 @@ If you have resized your disk size to host a larger file system, consider creati
endif::agent[]
ifdef::agent[]
[role="_abstract"]
In general, you must use the default disk partitioning that is created during the {op-system} installation. However, there are cases where you might want to create a separate partition for a directory that you expect to grow.
To accommodate directories expected to grow, create separate partitions during the {op-system} installation. This configuration overrides the default partitioning layout, ensuring specific storage requirements are met for dynamic data.
endif::agent[]
{product-title} supports the addition of a single partition to attach storage to either the `/var` directory or a subdirectory of `/var`. For example:
@@ -56,7 +58,7 @@ as more images and containers are added to a system.
For disk sizes larger than 100GB, and especially larger than 1TB, create a separate `/var` partition.
====
Storing the contents of a `/var` directory separately makes it easier to grow storage for those areas as needed and reinstall {product-title} at a later date so to keep that data intact. This method eliminates the need to re-pull containers or copy large log files during system updates.
Storing the contents of a `/var` directory separately makes it easier to grow storage for those areas as needed and reinstall {product-title} at a later date to keep that data intact. This method eliminates the need to re-pull containers or copy large log files during system updates.
The use of a separate partition for the `/var` directory or a subdirectory of `/var` also prevents data growth in the partitioned directory from filling up the root file system.
@@ -130,7 +132,10 @@ ifndef::agent[]
----
$ openshift-install create ignition-configs --dir <installation_directory>
----
* `<installation_directory>`: Specify the name installation directory.
+
where:
+
`<installation_directory>`:: Specifies the name of the installation directory.
+
Ignition config files are created for the bootstrap, control plane, and compute nodes in the installation directory:
+

View File

@@ -45,7 +45,7 @@ endif::[]
where:
+
`--console=tty0`:: The desired secondary console. In this case, the graphical console. Omitting this option will disable the graphical console.
`--console=ttyS0`:: The desired primary console. In this case the serial console. The `options` field defines the baud rate and other settings. A common value for this field is `115200n8`. If no options are provided, the default kernel value of `9600n8` is used. For more information on the format of this option, see link:https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html[Linux kernel serial console] documentation.
`--console=ttyS0`:: The desired primary console. In this case, the serial console. The `options` field defines the baud rate and other settings. A common value for this field is `115200n8`. If no options are provided, the default kernel value of `9600n8` is used. For more information on the format of this option, see link:https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html[Linux kernel serial console] documentation.
. Reboot into the installed system.
+

View File

@@ -14,13 +14,15 @@ endif::[]
= Identifying Ignition configs
[role="_abstract"]
When doing an {op-system} manual installation, there are two types of Ignition configs that you can provide, with different reasons for providing each one:
To manually install {op-system}, identify the distinct Ignition configuration types and their specific deployment purposes. By understanding these configurations, you can provide the correct provisioning instructions for your infrastructure requirements.
When manually installing {op-system}, you can provide the following two types of Ignition configs:
* **Permanent install Ignition config**: Every manual {op-system} installation needs to pass one of the Ignition config files generated by `openshift-installer`, such as `bootstrap.ign`, `master.ign` and `worker.ign`, to carry out the installation.
[IMPORTANT]
====
It is not recommended to modify these Ignition config files directly. You can update the manifest files that are wrapped into the Ignition config files, as outlined in examples in the preceding sections.
Do not modify these Ignition config files directly. You can update the manifest files that are wrapped into the Ignition config files, as outlined in examples in the preceding sections.
====
For PXE installations, you can pass the Ignition configs on the `APPEND` line using the `coreos.inst.ignition_url=` option. For ISO installations, after the ISO boots to the shell prompt, you must identify the Ignition config on the `coreos-installer` command line with the `--ignition-url=` option. In both cases, only HTTP and HTTPS protocols are supported.

View File

@@ -14,7 +14,7 @@ endif::[]
= Using advanced networking options for PXE and ISO installations
[role="_abstract"]
Networking for {product-title} nodes uses DHCP by default to gather all necessary configuration settings.
To configure connectivity in environments that do not support the default DHCP, apply advanced networking options such as static IP addresses. These configurations ensure {product-title} nodes can successfully gather configuration settings during PXE and ISO installations.
To set up static IP addresses or configure special settings, such as bonding, you can do one of the following:

View File

@@ -23,7 +23,7 @@ Saved partitions might be data partitions from an existing {product-title} syste
If you save existing partitions, and those partitions do not leave enough space for {op-system}, the installation fails without damaging the saved partitions.
====
The following examples preserves any existing partition during an ISO installation in which the partition label begins with `data` (`data*`):
The following examples preserve any existing partition during an ISO installation in which the partition label begins with `data` (`data*`):
ifndef::restricted[]
[source,terminal]

View File

@@ -14,13 +14,13 @@ endif::[]
= Advanced {op-system} installation configuration
[role="_abstract"]
A key benefit for manually provisioning the {op-system-first} nodes for {product-title} is to be able to do configuration that is not available through default {product-title} installation methods. This section describes some of the configurations that you can do using techniques that include:
To apply advanced configurations unavailable through default installation methods, manually provision {op-system-first} nodes for {product-title}. This approach enables granular control over the node infrastructure to meet specific deployment requirements.
* Passing kernel arguments to the live installer
* Running `coreos-installer` manually from the live system
* Customizing a live ISO or PXE boot image
The advanced configuration topics for manual {op-system-first} installations detailed in this section relate to disk partitioning, networking, and using Ignition configs in different ways.
The advanced configuration topics for manual {op-system-first} installations detailed in this section relate to disk partitioning, networking, and configuring Ignition in different ways.
ifeval::["{context}" == "installing-restricted-networks-bare-metal"]
:!restricted:

View File

@@ -21,12 +21,13 @@ endif::[]
[id="installation-user-infra-machines-iso_{context}"]
= Installing {op-system} by using an ISO image
You can use an ISO image to install {op-system} on the machines.
[role="_abstract"]
To provision physical or virtual machines, install {op-system} by using a bootable ISO image. By using this method, you can deploy the operating system directly from local media or a virtual drive.
.Prerequisites
* You have created the Ignition config files for your cluster.
* You have configured a suitable network, DNS and load balancing infrastructure.
* You have configured a suitable network, DNS, and load balancing infrastructure.
* You have an HTTP server that can be accessed from your computer, and from the machines that you create.
* You have reviewed the _Advanced {op-system} installation configuration_ section for different ways to configure features, such as networking and disk partitioning.

View File

@@ -18,14 +18,11 @@ endif::[]
:_mod-docs-content-type: PROCEDURE
[id="installation-user-infra-machines-pxe_{context}"]
ifndef::only-pxe[]
= Installing {op-system} by using PXE or iPXE booting
endif::only-pxe[]
ifdef::only-pxe[]
= Installing {op-system} by using PXE booting
endif::only-pxe[]
[role="_abstract"]
@@ -189,13 +186,12 @@ LABEL pxeboot
+
where:
+
`kernel`:: Specify the location of the live `kernel` file that you uploaded to your HTTP
server. The URL must be HTTP, TFTP, or FTP; HTTPS and NFS are not supported.
`kernel`:: Specify the location of the live `kernel` file that you uploaded to your HTTP server. The URL must be HTTP, TFTP, or FTP; HTTPS and NFS are not supported.
`initrd=main`:: If you use multiple NICs, specify a single interface in the `ip` option. For example, to use DHCP on a NIC that is named `eno1`, set `ip=eno1:dhcp`. Specify the locations of the {op-system} files that you uploaded to your HTTP server. The `initrd` parameter value is the location of the `initramfs` file, the `coreos.live.rootfs_url` parameter value is the location of the `rootfs` file, and the `coreos.inst.ignition_url` parameter value is the location of the bootstrap Ignition config file. You can also add more kernel arguments to the `APPEND` line to configure networking or other boot options.
+
[NOTE]
====
This configuration does not enable serial console access on machines with a graphical console. To configure a different console, add one or more `console=` arguments to the `APPEND` line. For example, add `console=tty0 console=ttyS0` to set the first PC serial port as the primary console and the graphical console as a secondary console. For more information, see link:https://access.redhat.com/articles/7212[How does one set up a serial terminal and/or console in Red Hat Enterprise Linux?] and "Enabling the serial console for PXE and ISO installation" in the "Advanced {op-system} installation configuration" section.
This configuration does not enable serial console access on machines with a graphical console. To configure a different console, add one or more `console=` arguments to the `APPEND` line. For example, add `console=tty0 console=ttyS0` to set the first PC serial port as the primary console and the graphical console as a secondary console. For more information, see link:https://access.redhat.com/articles/7212[How does one set up a serial terminal and/or console in Red Hat Enterprise Linux?] and "Enabling the serial console for PXE and ISO installation" in the "Advanced {op-system} installation configuration" section.
====
ifndef::only-pxe[]

View File

@@ -68,7 +68,7 @@ The following information provides examples for configuring networking and bondi
Ordering is important when adding the kernel arguments: `ip=`, `nameserver=`, and then `bond=`.
====
The networking options are passed to the `dracut` tool during system boot. For more information about the networking options supported by `dracut`, see the link:https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html[`dracut.cmdline` manual page].
The networking options are passed to the `dracut` tool during system boot. For more information about the networking options supported by `dracut`, see `dracut.cmdline` manual page.
endif::ibm-z-kvm[]
ifdef::ibm-z-kvm[]