Skip to content

Commit cbccf7e

Browse files
rohennesopenshift-cherrypick-robot
authored and
openshift-cherrypick-robot
committed
TELCODOCS-1887: Adding section for IBI workflow
1 parent 8c4cf7d commit cbccf7e

23 files changed

+1287
-35
lines changed

_topic_maps/_topic_map.yml

Lines changed: 11 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -3317,38 +3317,17 @@ Topics:
33173317
File: cnf-image-based-upgrade-base
33183318
- Name: Performing an image-based upgrade for single-node OpenShift clusters using GitOps ZTP
33193319
File: ztp-image-based-upgrade
3320-
# Remove RDS from published docs until 4.16 RDS is released
3321-
# ---
3322-
# Name: Reference design specifications
3323-
# Dir: telco_ref_design_specs
3324-
# Distros: openshift-telco
3325-
# Topics:
3326-
# - Name: Telco reference design specifications
3327-
# File: telco-ref-design-specs-overview
3328-
# - Name: Telco RAN DU reference design specification
3329-
# Dir: ran
3330-
# Topics:
3331-
# - Name: Telco RAN DU reference design overview
3332-
# File: telco-ran-ref-design-spec
3333-
# - Name: Telco RAN DU use model overview
3334-
# File: telco-ran-du-overview
3335-
# - Name: RAN DU reference design components
3336-
# File: telco-ran-ref-du-components
3337-
# - Name: RAN DU reference design configuration CRs
3338-
# File: telco-ran-ref-du-crs
3339-
# - Name: Telco RAN DU software specifications
3340-
# File: telco-ran-ref-software-artifacts
3341-
# - Name: Telco core reference design specification
3342-
# Dir: core
3343-
# Topics:
3344-
# - Name: Telco core reference design overview
3345-
# File: telco-core-rds-overview
3346-
# - Name: Telco core use model overview
3347-
# File: telco-core-rds-use-cases
3348-
# - Name: Core reference design components
3349-
# File: telco-core-ref-design-components
3350-
# - Name: Core reference design configuration CRs
3351-
# File: telco-core-ref-crs
3320+
- Name: Image-based installation for single-node OpenShift
3321+
Dir: image-base-install
3322+
Topics:
3323+
- Name: Understanding image-based installation and deployment for single-node OpenShift
3324+
File: ibi-understanding-image-based-install
3325+
- Name: Preparing for a single-node OpenShift image-based installation
3326+
File: ibi-preparing-for-image-based-install
3327+
- Name: Installing single-node OpenShift using an image-based installation
3328+
File: ibi-factory-image-based-install
3329+
- Name: Deploying single-node OpenShift using the installation program
3330+
File: ibi-edge-image-based-install-standalone
33523331
---
33533332
Name: Specialized hardware and driver enablement
33543333
Dir: hardware_enablement
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../_attributes/
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="ibi-image-based-install-standalone"]
3+
= About image-based deployments for {sno}
4+
include::_attributes/common-attributes.adoc[]
5+
:context: ibi-edge-image-based-install
6+
7+
toc::[]
8+
9+
You can manually generate a configuration ISO by using the {product-title} installation program. Attach the configuration ISO to your preinstalled target host to complete the deployment.
10+
11+
include::modules/ibi-create-standalone-config-iso.adoc[leveloffset=+1]
12+
13+
[role="_additional-resources"]
14+
.Additional resources
15+
16+
* xref:../../openshift_images/managing_images/using-image-pull-secrets.adoc[[Using image pull secrets]
17+
18+
include::modules/ibi-installer-configuration-config.adoc[leveloffset=+2]
19+
20+
include::modules/ibi-extra-manifests-standalone.adoc[leveloffset=+1]
21+
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="ibi-image-based-install_{context}"]
3+
= About image-based installations for {sno} clusters
4+
include::_attributes/common-attributes.adoc[]
5+
:context: ibi-factory-image-based-install
6+
7+
toc::[]
8+
9+
Use the `openshift-install` installation program to create a live installation ISO for preinstalling {sno} on bare-metal hosts. For more information about downloading the installation program, see _"Installation process"_ in the _"Additional resources"_ section.
10+
11+
The installation program takes a seed image URL and other inputs, such as the release version of the seed image and the disk to use for the installation process, and creates a live installation ISO. You can then start the host using the live installation ISO to begin preinstallation. When preinstallation is complete, the host is ready to ship to a remote site for the final site-specific configuration and deployment.
12+
13+
The following are the high-level steps to preinstall a {sno} cluster using an image-based installation:
14+
15+
* Generate a seed image.
16+
* Create a live installation ISO using the installation program.
17+
* Start the host using the live installation ISO to preinstall the host.
18+
19+
[role="_additional-resources"]
20+
.Additional resources
21+
22+
* xref:../../installing/overview/index.adoc#installation-process_ocp-installation-overview[Installation process]
23+
24+
include::modules/ibi-create-iso-for-bmh.adoc[leveloffset=+1]
25+
26+
include::modules/ibi-provision-install-iso-to-bmh.adoc[leveloffset=+1]
27+
28+
include::modules/ibi-installer-installation-config.adoc[leveloffset=+1]
29+
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="ibi-preparing-for-image-based-install_{context}"]
3+
= Preparing for an image-based installation for {sno} clusters
4+
include::_attributes/common-attributes.adoc[]
5+
:context: ibi-preparing-image-based-install
6+
7+
toc::[]
8+
To prepare for an image-based installation for {sno} clusters, you must complete the following tasks:
9+
10+
* Create a seed image by using the {lcao}.
11+
* Verify that all software components meet the required versions. For further information, see "Software prerequisites for an image-based installation and deployment".
12+
13+
== Installing the {lcao}
14+
15+
Use the {lcao} to generate a seed image from a seed cluster. You can install the {lcao} using the {oc-first} or the web console.
16+
17+
include::modules/cnf-image-based-upgrade-installing-lifecycle-agent-using-cli.adoc[leveloffset=+2]
18+
19+
include::modules/cnf-image-based-upgrade-installing-lifecycle-agent-using-web-console.adoc[leveloffset=+2]
20+
21+
include::modules/cnf-image-based-upgrade-shared-container-partition.adoc[leveloffset=+1]
22+
23+
include::modules/cnf-image-based-upgrade-seed-image-config.adoc[leveloffset=+1]
24+
25+
include::modules/cnf-image-based-upgrade-generate-seed-image.adoc[leveloffset=+1]
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="ibi-image-based-install_overview"]
3+
= Understanding an image-based installation and deployment for {sno} clusters
4+
include::_attributes/common-attributes.adoc[]
5+
:context: ibi-understanding-image-based-install
6+
7+
toc::[]
8+
9+
Image-based installations streamline the deployment process for {sno} clusters by significantly reducing installation and deployment times.
10+
11+
This approach enables the preinstallation of configured and validated instances of {sno} on target hosts. These preinstalled hosts can be rapidly reconfigured and deployed at the far edge of the network, including in disconnected environments, with minimal intervention.
12+
13+
[id="ibi-installation-deployment-overview"]
14+
== Overview of image-based installation and deployment for {sno} clusters
15+
16+
Deploying infrastructure at the far edge of the network presents challenges for service providers with low bandwidth, high latency, and disconnected environments.
17+
18+
It is also costly and time-consuming to install and deploy {sno} clusters.
19+
20+
An image-based approach to installing and deploying {sno} clusters at the far edge of the network overcomes these challenges by separating the installation and deployment stages.
21+
22+
Imaged-based installation::
23+
Preinstall multiple hosts with {sno} at a central site, such as a service depot or a factory.
24+
Then, validate the base configuration for these hosts and leverage the image-based approach to perform reproducible factory installs at scale by using a single container image.
25+
26+
Image-based deployment::
27+
Ship the preinstalled and validated hosts to a remote site and rapidly reconfigure and deploy the clusters in a matter of minutes by using a configuration image.
28+
29+
[id="ibi-installation-overview"]
30+
=== Image-based installation for {sno} clusters
31+
Using the {lcao}, you can generate an OCI container image that encapsulates an instance of a {sno} cluster. This image is derived from a dedicated cluster that you can configure with the target {product-title} version.
32+
33+
You can reference this image in a live installation ISO to consistently preinstall configured and validated instances of {sno} to multiple hosts. This approach enables the preparation of hosts at a central location, for example in a factory or service depot, before shipping the preinstalled hosts to a remote site for rapid reconfiguration and deployment.
34+
35+
The following is a high-level overview of the image-based installation process:
36+
37+
* Generate an image from a {sno} cluster.
38+
* Use the {product-title} installation program to embed the seed image URL, and other installation artifacts, in a live installation ISO.
39+
* Start the host using the live installation ISO to preinstall the host.
40+
+
41+
During this process, the {product-title} installation program installs {op-system-first} to the disk, pulls the image you generated, and precaches release container images to the disk.
42+
43+
* When the installation completes, the host is ready to ship to the remote site for rapid reconfiguration and deployment.
44+
45+
[id="ibi-deployment-overview"]
46+
=== Image-based deployment for {sno} clusters
47+
48+
You can use the {product-title} installation program to configure and deploy a host that you preinstalled with an image-based installation. To configure the target host with site-specific details, you must create the following resources:
49+
50+
* The `install-config.yaml` installation manifest
51+
52+
* The `image-based-config.yaml` manifest
53+
54+
The `openshift-install` program uses these resources to generate a configuration ISO that you attach to the preinstalled target host to complete the deployment.
55+
56+
[id="ibi-installation-deployment-components"]
57+
== Image-based installation and deployment components
58+
59+
TThe following content describes the components in an image-based installation and deployment.
60+
61+
Seed image:: OCI container image generated from a dedicated cluster with the target {product-title} version.
62+
63+
Seed cluster:: Dedicated {sno} cluster that you use to create a seed image and is deployed with the target {product-title} version.
64+
65+
{lcao}:: Generates the seed image, embeds the seed image URL in the live installation ISO, and reconfigures the host during remote site deployment.
66+
67+
`openshift-install` installation program:: Use the `openshift-install` program to manually create a configuration ISO. Attach the configuration ISO to a preinstalled host to complete the deployment.
68+
69+
include::modules/ibi-image-based-install-cluster-guide.adoc[leveloffset=+1]
70+
71+
include::modules/ibi-validated-software-versions.adoc[leveloffset=+1]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../images/
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../modules/
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../snippets/

modules/cnf-image-based-upgrade-seed-image-config.adoc

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,27 @@
11
// Module included in the following assemblies:
22
// * edge_computing/image-based-upgrade/cnf-preparing-for-image-based-upgrade.adoc
33

4+
ifeval::["{context}" == "ibi-preparing-image-based-install"]
5+
:ibi:
6+
endif::[]
7+
8+
ifeval::["{context}" == "generate-seed"]
9+
:ibu:
10+
endif::[]
11+
412
:_mod-docs-content-type: PROCEDURE
513
[id="cnf-image-based-upgrade-seed-image-config_{context}"]
614
= Seed image configuration
715

16+
ifdef::ibu[]
817
The seed image targets a set of {sno} clusters with the same hardware and similar configuration.
918
This means that the seed image must have all of the components and configuration that the seed cluster shares with the target clusters.
1019
Therefore, the seed image generated from the seed cluster cannot contain any cluster-specific configuration.
20+
endif::[]
21+
22+
ifdef::ibi[]
23+
You can create a seed image from a {sno} cluster with with the same hardware as your bare-metal host, and with a similar target cluster configuration. However, the seed image generated from the seed cluster cannot contain any cluster-specific configuration.
24+
endif::[]
1125

1226
The following table lists the components, resources, and configurations that you must and must not include in your seed image:
1327

@@ -47,9 +61,10 @@ a|Local volumes
4761
* `LocalVolume` for LSO
4862
* `LVMCluster` CR for LVMS
4963
|No
50-
64+
ifdef::ibu[]
5165
|{oadp-short} `DataProtectionApplication` CR
5266
|No
67+
endif::[]
5368
|====
5469
. Dual-stack networking is not supported in this release.
5570
. If the seed cluster is installed in a disconnected environment, the target clusters must also be installed in a disconnected environment.
@@ -127,4 +142,13 @@ The following table lists the components, resources, and configurations that you
127142
a|`SriovNetwork.yaml`
128143
`SriovNetworkNodePolicy.yaml`
129144
|If the configuration, including namespaces, is exactly the same on both the seed and target cluster, you can include them in the seed image. Otherwise, apply them as extra manifests.
130-
|====
145+
|====
146+
147+
148+
ifeval::["{context}" == "ibi-preparing-image-based-install"]
149+
:!ibi:
150+
endif::[]
151+
152+
ifeval::["{context}" == "generate-seed"]
153+
:!ibu:
154+
endif::[]

modules/cnf-image-based-upgrade-shared-container-partition.adoc

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,31 @@
11
// Module included in the following assemblies:
22
// * edge_computing/image-based-upgrade/cnf-preparing-for-image-based-upgrade.adoc
33

4+
ifeval::["{context}" == "ibi-preparing-image-based-install"]
5+
:ibi:
6+
endif::[]
7+
8+
ifeval::["{context}" == "shared-container-partition"]
9+
:ibu:
10+
endif::[]
11+
412
:_mod-docs-content-type: PROCEDURE
513
[id="cnf-image-based-upgrade-shared-container-partition_{context}"]
614
= Configuring a shared container partition between ostree stateroots
715

16+
ifdef::ibu[]
817
Apply a `MachineConfig` to both the seed and the target clusters during installation time to create a separate partition and share the `/var/lib/containers` partition between the two `ostree` stateroots that will be used during the upgrade process.
18+
endif::[]
919

1020
[IMPORTANT]
1121
====
1222
You must complete this procedure at installation time.
1323
====
1424

25+
ifdef::ibi[]
26+
Apply a `MachineConfig` to the seed cluster to create a separate partition and share the `/var/lib/containers` partition between the two `ostree` stateroots that will be used during the preinstall process.
27+
endif::[]
28+
1529
.Procedure
1630

1731
* Apply a `MachineConfig` to create a separate partition:
@@ -65,4 +79,12 @@ spec:
6579
----
6680
<1> Specify the root disk.
6781
<2> Specify the start of the partition in MiB. If the value is too small, the installation will fail.
68-
<3> Specify a minimum size for the partition of 500 GB to ensure adequate disk space for precached images. If the value is too small, the deployments after installation will fail.
82+
<3> Specify a minimum size for the partition of 500 GB to ensure adequate disk space for precached images. If the value is too small, the deployments after installation will fail.
83+
84+
ifeval::["{context}" == "ibi-preparing-image-based-install"]
85+
:!ibi:
86+
endif::[]
87+
88+
ifeval::["{context}" == "shared-container-partition"]
89+
:!ibu:
90+
endif::[]

0 commit comments

Comments
 (0)