Skip to content

Commit 8d3ab7c

Browse files
committed
OSDOCS-12533: ABI on OCI GA
1 parent d5ded08 commit 8d3ab7c

File tree

4 files changed

+87
-51
lines changed

4 files changed

+87
-51
lines changed

installing/installing_oci/installing-oci-agent-based-installer.adoc

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ toc::[]
88

99
In {product-title} {product-version}, you can use the Agent-based Installer to install a cluster on {oci-first}, so that you can run cluster workloads on infrastructure that supports dedicated, hybrid, public, and multiple cloud environments.
1010

11+
Installing a cluster on {oci} is supported for virtual machines (VMs) and bare-metal machines.
12+
1113
// The Agent-based Installer and OCI overview
1214
include::modules/installing-oci-about-agent-based-installer.adoc[leveloffset=+1]
1315

@@ -21,6 +23,22 @@ include::modules/installing-oci-about-agent-based-installer.adoc[leveloffset=+1]
2123
* link:https://docs.oracle.com/en-us/iaas/Content/Block/Concepts/blockvolumeperformance.htm#vpus[Volume Performance Units (Oracle documentation)]
2224
* link:https://docs.oracle.com/iaas/Content/openshift-on-oci/installing-agent-about-instance-configurations.htm[Instance Sizing Recommendations for {product-title} on {oci} Nodes (Oracle documentation)]
2325
26+
[id="abi-oci-process-checklist_{context}"]
27+
== Installation process workflow
28+
29+
The following workflow describes a high-level outline for the process of installing an {product-title} cluster on {oci} using the Agent-based Installer:
30+
31+
. Create {oci} resources and services (Oracle).
32+
. Disconnected environments: Prepare a web server that is accessible by {oci} instances (Red{nbsp}Hat).
33+
. Prepare configuration files for the Agent-based Installer (Red{nbsp}Hat).
34+
. Generate the agent ISO image (Red{nbsp}Hat).
35+
. Disconnected environments: Upload the rootfs image to the web server (Red{nbsp}Hat).
36+
. Configure your firewall for {product-title} (Red{nbsp}Hat).
37+
. Upload the agent ISO image to a storage bucket (Oracle).
38+
. Create a custom image from the uploaded agent ISO image (Oracle).
39+
. Create compute instances on {oci} (Oracle).
40+
. Verify that your cluster runs on {oci} (Oracle).
41+
2442
// Creating OCI infrastructure resources and services
2543
include::modules/abi-oci-resources-services.adoc[leveloffset=+1]
2644

@@ -39,6 +57,7 @@ include::modules/creating-config-files-cluster-install-oci.adoc[leveloffset=+1]
3957
* xref:../../installing/overview/installing-preparing.adoc#installing-preparing-selecting-cluster-type[Selecting a cluster installation type]
4058
* xref:../../installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc#about-the-agent-based-installer[Preparing to install with the Agent-based Installer]
4159
* xref:../../installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc#installing-ocp-agent-retrieve_installing-with-agent-based-installer[Downloading the Agent-based Installer]
60+
* xref:../../disconnected/mirroring/installing-mirroring-creating-registry.adoc#installing-mirroring-creating-registry[Creating a mirror registry with mirror registry for Red{nbsp}Hat OpenShift]
4261
* xref:../../disconnected/mirroring/installing-mirroring-installation-images.adoc#installation-mirror-repository_installing-mirroring-installation-images[Mirroring the {product-title} image repository]
4362
* xref:../../installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc#installing-ocp-agent-ztp_installing-with-agent-based-installer[Optional: Using ZTP manifests]
4463

@@ -55,10 +74,13 @@ include::modules/running-cluster-oci-agent-based.adoc[leveloffset=+1]
5574
* link:https://docs.oracle.com/iaas/Content/openshift-on-oci/installing-agent-about-instance-configurations.htm[Instance Sizing Recommendations for {product-title} on {oci} Nodes (Oracle documentation)]
5675
* link:https://docs.oracle.com/iaas/Content/openshift-on-oci/openshift-troubleshooting.htm[Troubleshooting {product-title} on {oci} (Oracle documentation)]
5776

58-
// Verifying a succesful cluster installation on OCI
77+
// Verifying that your Agent-based cluster installation runs on {oci}
5978
include::modules/verifying-cluster-install-oci-agent-based.adoc[leveloffset=+1]
6079

6180
[role="_additional-resources"]
62-
.Additional resources
81+
[id="additional-resources_{context}"]
82+
== Additional resources
6383

6484
* xref:../../installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc#installing-ocp-agent-gather-log_installing-with-agent-based-installer[Gathering log data from a failed Agent-based installation]
85+
86+
* xref:../../nodes/nodes/nodes-nodes-adding-node-iso.adoc#adding-node-iso[Adding worker nodes to an on-premise cluster]

modules/abi-oci-resources-services.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
[id="abi-oci-resources-services_{context}"]
77
= Creating {oci} infrastructure resources and services
88

9-
You must create an {oci} environment on your virtual machine (VM) shape. By creating this environment, you can install {product-title} and deploy a cluster on an infrastructure that supports a wide range of cloud options and strong security policies. Having prior knowledge of {oci} components can help you with understanding the concept of {oci} resources and how you can configure them to meet your organizational needs.
9+
You must create an {oci} environment on your virtual machine (VM) or bare-metal shape. By creating this environment, you can install {product-title} and deploy a cluster on an infrastructure that supports a wide range of cloud options and strong security policies. Having prior knowledge of {oci} components can help you with understanding the concept of {oci} resources and how you can configure them to meet your organizational needs.
1010

11-
The Agent-based installer method for installing an {product-title} cluster on {oci} requires that you manually create {oci} resources and services.
11+
The Agent-based Installer method for installing an {product-title} cluster on {oci} requires that you manually create {oci} resources and services.
1212

1313
[IMPORTANT]
1414
====

modules/creating-config-files-cluster-install-oci.adoc

Lines changed: 54 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
[id="creating-config-files-cluster-install-oci_{context}"]
77
= Creating configuration files for installing a cluster on {oci}
88

9-
You need to create the `install-config.yaml` and the `agent-config.yaml` configuration files so that you can use the Agent-based Installer to generate a bootable ISO image. The Agent-based installation comprises a bootable ISO that has the Assisted discovery agent and the Assisted Service. Both of these components are required to perform the cluster installation, but the latter component runs on only one of the hosts.
9+
You must create the `install-config.yaml` and the `agent-config.yaml` configuration files so that you can use the Agent-based Installer to generate a bootable ISO image. The Agent-based installation comprises a bootable ISO that has the Assisted discovery agent and the Assisted Service. Both of these components are required to perform the cluster installation, but the latter component runs on only one of the hosts.
1010

11-
At a later stage, you must follow the steps in the Oracle documentation for uploading your generated agent ISO image to Oracles default Object Storage bucket, which is the initial step for integrating your {product-title} cluster on {oci-first}.
11+
At a later stage, you must follow the steps in the Oracle documentation for uploading your generated agent ISO image to Oracle's default Object Storage bucket, which is the initial step for integrating your {product-title} cluster on {oci-first}.
1212

1313
[NOTE]
1414
====
@@ -19,16 +19,12 @@ You can also use the Agent-based Installer to generate or accept Zero Touch Prov
1919
* You reviewed details about the {product-title} installation and update processes.
2020
* You read the documentation on selecting a cluster installation method and preparing the method for users.
2121
* You have read the "Preparing to install with the Agent-based Installer" documentation.
22-
* You downloaded the Agent-Based Installer and the command-line interface (CLI) from the {hybrid-console}.
23-
* You have logged in to the {product-title} with administrator privileges.
24-
25-
.Procedure
26-
27-
. For a disconnected environment, mirror the {product-mirror-registry} to your local container image registry.
22+
* You downloaded the Agent-Based Installer and the command-line interface (CLI) from the link:https://console.redhat.com/openshift/install/metal/agent-based[{hybrid-console}].
23+
* If you are installing in a disconnected environment, you have prepared a mirror registry in your environment and mirrored release images to the registry.
2824
+
2925
[IMPORTANT]
3026
====
31-
Check that your `openshift-install` binary version relates to your local image container registry and not a shared registry, such as {quay}.
27+
Check that your `openshift-install` binary version relates to your local image container registry and not a shared registry, such as {quay}, by running the following command:
3228
3329
[source,terminal]
3430
----
@@ -44,10 +40,20 @@ release image registry.ci.openshift.org/origin/release:4.17ocp-release@sha256:0d
4440
release architecture amd64
4541
----
4642
====
43+
* You have logged in to the {product-title} with administrator privileges.
4744
48-
. Configure the `install-config.yaml` configuration file to meet the needs of your organization.
45+
.Procedure
46+
47+
. Create an installation directory to store configuration files in by running the following command:
4948
+
50-
.Example `install-config.yaml` configuration file that demonstrates setting an external platform
49+
[source,terminal]
50+
----
51+
$ mkdir ~/<directory_name>
52+
----
53+
54+
. Configure the `install-config.yaml` configuration file to meet the needs of your organization and save the file in the directory you created.
55+
+
56+
.`install-config.yaml` file that sets an external platform
5157
+
5258
[source,yaml]
5359
----
@@ -82,26 +88,48 @@ pullSecret: '<pull_secret>' <6>
8288
# ...
8389
----
8490
<1> The base domain of your cloud provider.
85-
<2> The IP address from the virtual cloud network (VCN) that the CIDR allocates to resources and components that operate on your network.
86-
<3> Depending on your infrastructure, you can select either `x86_64`, or `amd64`.
91+
<2> The IP address from the virtual cloud network (VCN) that the CIDR allocates to resources and components that operate on your network.
92+
<3> Depending on your infrastructure, you can select either `arm64` or `amd64`.
8793
<4> Set `OCI` as the external platform, so that {product-title} can integrate with {oci}.
8894
<5> Specify your SSH public key.
8995
<6> The pull secret that you need for authenticate purposes when downloading container images for {product-title} components and services, such as Quay.io. See link:https://console.redhat.com/openshift/install/pull-secret[Install {product-title} 4] from the {hybrid-console}.
9096
91-
. Create a directory on your local system named `openshift`.
97+
. Create a directory on your local system named `openshift`. This must be a subdirectory of the installation directory.
9298
+
9399
[IMPORTANT]
94100
====
95-
Do not move the `install-config.yaml` and `agent-config.yaml` configuration files to the `openshift` directory.
101+
Do not move the `install-config.yaml` or `agent-config.yaml` configuration files to the `openshift` directory.
96102
====
97103

98-
. Complete the steps in the link:https://docs.oracle.com/iaas/Content/openshift-on-oci/install-prereq.htm#install-configuration-files["Configuration Files"] section of the _Oracle_ documentation to download {oci-ccm-full} and {oci-csi-full} manifests as an archive file and save the archive file in your `openshift` directory. You need the {oci-ccm} manifests for deploying the {oci-ccm} during cluster installation so that {product-title} can connect to the external {oci} platform. You need the {oci-csi} custom manifests for deploying the {oci-csi} driver during cluster installation so that {product-title} can claim required objects from {oci}.
104+
. If you used a stack to provision OCI infrastructure resources: Copy and paste the `dynamic_custom_manifest` output of the OCI stack into a file titled `manifest.yaml` and save the file in the `openshift` directory.
105+
106+
. If you did not use a stack to provision OCI infrastructure resources: Download and prepare custom manifests to create an Agent ISO image:
107+
108+
.. Go to link:https://docs.oracle.com/iaas/Content/openshift-on-oci/install-prereq.htm#install-configuration-files[Configuration Files] (Oracle documentation) and follow the link to the custom manifests directory on GitHub.
109+
110+
.. Copy the contents of the `condensed-manifest.yml` file and save it locally to a file in the `openshift` directory.
111+
112+
.. In the `condensed-manifest.yml` file, update the sections marked with `TODO` to specify the compartment {ocid-first}, VCN {ocid}, subnet {ocid} from the load balancer, and the security lists {ocid}.
99113

100-
. Access the custom manifest files that are provided in the link:https://docs.oracle.com/iaas/Content/openshift-on-oci/install-prereq.htm#install-configuration-files["Configuration Files"] section of the _Oracle_ documentation.
114+
. Configure the `agent-config.yaml` configuration file to meet your organization's requirements.
101115
+
102-
.. Change the `oci-cloud-controller-manager` secret that is defined in the `oci-ccm.yml` configuration file to match your organization's region, compartment {ocid}, VCN {ocid}, and the subnet {ocid} from the load balancer.
116+
.Sample `agent-config.yaml` file for an IPv4 network.
117+
[source,yaml]
118+
----
119+
apiVersion: v1beta1
120+
metadata:
121+
name: <cluster_name> // <1>
122+
namespace: <cluster_namespace> <2>
123+
rendezvousIP: <ip_address_from_CIDR> <3>
124+
bootArtifactsBaseURL: <server_URL> <4>
125+
# ...
126+
----
127+
<1> The cluster name that you specified in your DNS record.
128+
<2> The namespace of your cluster on {product-title}.
129+
<3> If you use IPv4 as the network IP address format, ensure that you set the `rendezvousIP` parameter to an IPv4 address that the VCN's Classless Inter-Domain Routing (CIDR) method allocates on your network. Also ensure that at least one instance from the pool of instances that you booted with the ISO matches the IP address value you set for the `rendezvousIP` parameter.
130+
<4> The URL of the server where you want to upload the rootfs image. This parameter is required only for disconnected environments.
103131

104-
. Use the Agent-based Installer to generate a minimal ISO image, which excludes the rootfs image, by entering the following command in your {product-title} CLI. You can use this image later in the process to boot all your cluster’s nodes.
132+
. Generate a minimal ISO image, which excludes the rootfs image, by entering the following command in your installation directory:
105133
+
106134
[source,terminal]
107135
----
@@ -116,40 +144,22 @@ The command also completes the following actions:
116144
+
117145
[IMPORTANT]
118146
====
119-
The Agent-based Installer uses {op-system-first}. The rootfs image, which is mentioned in a later listed item, is required for booting, recovering, and repairing your operating system.
147+
The Agent-based Installer uses {op-system-first}. The rootfs image, which is mentioned in a later step, is required for booting, recovering, and repairing your operating system.
120148
====
121149

122-
. Configure the `agent-config.yaml` configuration file to meet your organization’s requirements.
123-
+
124-
.Example `agent-config.yaml` configuration file that sets values for an IPv4 formatted network.
125-
[source,yaml]
126-
----
127-
apiVersion: v1alpha1
128-
metadata:
129-
name: <cluster_name> // <1>
130-
namespace: <cluster_namespace> <2>
131-
rendezvousIP: <ip_address_from_CIDR> <3>
132-
bootArtifactsBaseURL: <server_URL> <4>
133-
# ...
134-
----
135-
<1> The cluster name that you specified in your DNS record.
136-
<2> The namespace of your cluster on {product-title}.
137-
<3> If you use IPv4 as the network IP address format, ensure that you set the `rendezvousIP` parameter to an IPv4 address that the VCN’s Classless Inter-Domain Routing (CIDR) method allocates on your network. Also ensure that at least one instance from the pool of instances that you booted with the ISO matches the IP address value you set for `rendezvousIP`.
138-
<4> The URL of the server where you want to upload the rootfs image.
150+
. Disconnected environments only: Upload the rootfs image to a web server.
139151

140-
. Apply one of the following two updates to your `agent-config.yaml` configuration file:
141-
+
142-
* For a disconnected network: After you run the command to generate a minimal ISO Image, the Agent-based installer saves the rootfs image into the `./<installation_directory>/boot-artifacts` directory on your local system. Use your preferred web server, such as any Hypertext Transfer Protocol daemon (`httpd`), to upload rootfs to the location stated in the `bootArtifactsBaseURL` parameter in the `agent-config.yaml` configuration file.
152+
.. Go to the `./<installation_directory>/boot-artifacts` directory that was generated when you created the minimal ISO image.
153+
154+
.. Use your preferred web server, such as any Hypertext Transfer Protocol daemon (`httpd`), to upload the rootfs image to the location specified in the `bootArtifactsBaseURL` parameter of the `agent-config.yaml` file.
143155
+
144-
For example, if the `bootArtifactsBaseURL` parameter states `\http://192.168.122.20`, you would upload the generated rootfs image to this location, so that the Agent-based installer can access the image from `\http://192.168.122.20/agent.x86_64-rootfs.img`. After the Agent-based installer boots the minimal ISO for the external platform, the Agent-based Installer downloads the rootfs image from the `\http://192.168.122.20/agent.x86_64-rootfs.img` location into the system memory.
156+
For example, if the `bootArtifactsBaseURL` parameter states `\http://192.168.122.20`, you would upload the generated rootfs image to this location so that the Agent-based installer can access the image from `\http://192.168.122.20/agent.x86_64-rootfs.img`. After the Agent-based installer boots the minimal ISO for the external platform, the Agent-based Installer downloads the rootfs image from the `\http://192.168.122.20/agent.x86_64-rootfs.img` location into the system memory.
145157
+
146158
[NOTE]
147159
====
148-
The Agent-based Installer also adds the value of the `bootArtifactsBaseURL` to the minimal ISO Images configuration, so that when the Operator boots a clusters node, the Agent-based Installer downloads the rootfs image into system memory.
160+
The Agent-based Installer also adds the value of the `bootArtifactsBaseURL` to the minimal ISO Image's configuration, so that when the Operator boots a cluster's node, the Agent-based Installer downloads the rootfs image into system memory.
149161
====
150162
+
151-
* For a connected network: You do not need to specify the `bootArtifactsBaseURL` parameter in the `agent-config.yaml` configuration file. The default behavior of the Agent-based Installer reads the rootfs URL location from `\https://rhcos.mirror.openshift.com`. After the Agent-based Installer boots the minimal ISO for the external platform, the Agent-based Installer then downloads the rootfs file into your system’s memory from the default {op-system} URL.
152-
+
153163
[IMPORTANT]
154164
====
155165
Consider that the full ISO image, which is in excess of `1` GB, includes the rootfs image. The image is larger than the minimal ISO Image, which is typically less than `150` MB.

0 commit comments

Comments
 (0)