Skip to content

Commit b76c33e

Browse files
authored
Merge pull request #68177 from jneczypor/OSDOCS-8375
OSDOCS-8375: Migrate "Getting Started with Rosa - Deploy the Cluster (Detailed UI)"
2 parents 59b9400 + b8122c9 commit b76c33e

13 files changed

+321
-2
lines changed

_topic_maps/_topic_map_rosa.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,8 @@ Topics:
137137
File: cloud-experts-getting-started-hcp
138138
- Name: Simple UI guide
139139
File: cloud-experts-getting-started-simple-ui-guide
140+
- Name: Detailed UI guide
141+
File: cloud-experts-getting-started-detailed-ui
140142
- Name: Creating an admin user
141143
File: cloud-experts-getting-started-admin
142144
- Name: Setting up an identity provider
@@ -145,7 +147,6 @@ Topics:
145147
File: cloud-experts-getting-started-admin-rights
146148
- Name: Accessing your cluster
147149
File: cloud-experts-getting-started-accessing
148-
149150
---
150151
Name: Getting started
151152
Dir: rosa_getting_started
Lines changed: 318 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,318 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="cloud-experts-getting-started-detailed-ui"]
3+
= Tutorial: Detailed UI guide
4+
include::_attributes/attributes-openshift-dedicated.adoc[]
5+
:context: cloud-experts-getting-started-detailed-ui
6+
7+
toc::[]
8+
9+
//rosaworkshop.io content metadata
10+
//Brought into ROSA product docs 2023-11-20
11+
12+
This tutorial outlines the detailed steps to deploy a {product-title} (ROSA) cluster using the Red Hat OpenShift Cluster Manager user interface (UI).
13+
14+
== Deployment workflow
15+
The overall deployment workflow follows these steps:
16+
17+
. Create the account wide roles and policies.
18+
. Associate your AWS account with your Red Hat account.
19+
.. Create and link the Red Hat OpenShift Cluster Manager role.
20+
.. Create and link the user role.
21+
. Create the cluster.
22+
23+
Step 1 only needs to be performed the *first time* you are deploying into an AWS account. Step 2 only needs to be performed the *first time* you are using the UI. For successive clusters of the same y-stream version, you only need to create the cluster.
24+
25+
== Creating account wide roles
26+
27+
[NOTE]
28+
====
29+
If you already have account roles from an earlier deployment, skip this step. The UI will detect your existing roles after you select an associated AWS account.
30+
====
31+
32+
If this is the _first time_ you are deploying ROSA in this account and you have _not_ yet created the account roles, create the account-wide roles and policies, including the Operator policies.
33+
34+
* In your terminal, run the following command to create the account-wide roles:
35+
+
36+
[source,terminal]
37+
----
38+
$ rosa create account-roles --mode auto --yes
39+
----
40+
+
41+
.Example output
42+
+
43+
[source,terminal]
44+
----
45+
I: Creating roles using 'arn:aws:iam::000000000000:user/rosa-user'
46+
I: Created role 'ManagedOpenShift-ControlPlane-Role' with ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-ControlPlane-Role'
47+
I: Created role 'ManagedOpenShift-Worker-Role' with ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-Worker-Role'
48+
I: Created role 'ManagedOpenShift-Support-Role' with ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-Support-Role'
49+
I: Created role 'ManagedOpenShift-Installer-Role' with ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-Installer-Role'
50+
I: Created policy with ARN 'arn:aws:iam::000000000000:policy/ManagedOpenShift-openshift-machine-api-aws-cloud-credentials'
51+
I: Created policy with ARN 'arn:aws:iam::000000000000:policy/ManagedOpenShift-openshift-cloud-credential-operator-cloud-crede'
52+
I: Created policy with ARN 'arn:aws:iam::000000000000:policy/ManagedOpenShift-openshift-image-registry-installer-cloud-creden'
53+
I: Created policy with ARN 'arn:aws:iam::000000000000:policy/ManagedOpenShift-openshift-ingress-operator-cloud-credentials'
54+
I: Created policy with ARN 'arn:aws:iam::000000000000:policy/ManagedOpenShift-openshift-cluster-csi-drivers-ebs-cloud-credent'
55+
I: To create a cluster with these roles, run the following command:
56+
rosa create cluster --sts
57+
----
58+
59+
== Associating your AWS account with your Red Hat account
60+
This step tells the OpenShift Cluster Manager what AWS account you want to use when deploying ROSA.
61+
62+
[NOTE]
63+
====
64+
If you have already associated your AWS accounts, skip this step.
65+
====
66+
67+
. Open the OpenShift Cluster Manager by visiting the Red Hat link:https://console.redhat.com/openshift[console] and logging in to your Red Hat account.
68+
69+
. Click *Create Cluster*.
70+
71+
. Scroll down to the {product-title} (ROSA) row and click *Create Cluster*.
72+
+
73+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-create.png[]
74+
75+
. A dropdown menu appears. Click *With web interface*.
76+
+
77+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-web-interface.png[]
78+
79+
. Under "Select an AWS control plane type," choose *Classic*. Then click *Next*.
80+
+
81+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-classic.png[]
82+
83+
. Click the dropbox under *Associated AWS infrastructure account*. If you have not yet associated any AWS accounts, the dropbox may be empty.
84+
85+
. Click *How to associate a new AWS account*.
86+
+
87+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-associate.png[]
88+
89+
. A sidebar appears with instructions for associating a new AWS account.
90+
+
91+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-associate2.png[]
92+
93+
== Creating and associating an OpenShift Cluster Manager role
94+
95+
. Run the following command to see if an OpenShift Cluster Manager role exists:
96+
+
97+
[source,terminal]
98+
----
99+
$ rosa list ocm-role
100+
----
101+
102+
. The UI displays the commands to create an OpenShift Cluster Manager role with two different levels of permissions:
103+
+
104+
* *Basic OpenShift Cluster Manager role:* Allows the OpenShift Cluster Manager to have read-only access to the account to check if the roles and policies that are required by ROSA are present before creating a cluster. You will need to manually create the required roles, policies, and OIDC provider using the CLI.
105+
* *Admin OpenShift Cluster Manager role:* Grants the OpenShift Cluster Manager additional permissions to create the required roles, policies, and OIDC provider for ROSA. Using this makes the deployment of a ROSA cluster quicker since the OpenShift Cluster Manager will be able to create the required resources for you.
106+
+
107+
To read more about these roles, see the xref:../../../rosa_architecture/rosa-sts-about-iam-resources.adoc#rosa-sts-ocm-roles-and-permissions_rosa-sts-about-iam-resources[OpenShift Cluster Manager roles and permissions] section of the documentation.
108+
+
109+
For the purposes of this tutorial, use the *Admin OpenShift Cluster Manager role* for the simplest and quickest approach.
110+
111+
. Copy the command to create the Admin OpenShift Cluster Manager role from the sidebar or switch to your terminal and enter the following command:
112+
+
113+
[source,terminal]
114+
----
115+
$ rosa create ocm-role --mode auto --admin --yes
116+
----
117+
+
118+
This command creates the OpenShift Cluster Manager role and associates it with your Red Hat account.
119+
+
120+
.Example output
121+
+
122+
[source,terminal]
123+
----
124+
I: Creating ocm role
125+
I: Creating role using 'arn:aws:iam::000000000000:user/rosa-user'
126+
I: Created role 'ManagedOpenShift-OCM-Role-12561000' with ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-OCM-Role-12561000'
127+
I: Linking OCM role
128+
I: Successfully linked role-arn 'arn:aws:iam::000000000000:role/ManagedOpenShift-OCM-Role-12561000' with organization account '1MpZfntsZeUdjWHg7XRgP000000'
129+
----
130+
131+
. Click *Step 2: User role*.
132+
133+
=== Other OpenShift Cluster Manager role creation options
134+
* *Manual mode:* If you prefer to run the AWS CLI commands yourself, you can define the mode as `manual` rather than `auto`. The CLI will output the AWS commands and the relevant JSON files are created in the current directory.
135+
+
136+
Use the following command to create the OpenShift Cluster Manager role in manual mode:
137+
+
138+
[source,terminal]
139+
----
140+
$ rosa create ocm-role --mode manual --admin --yes
141+
----
142+
* *Basic OpenShift Cluster Manager role:* If you prefer that the OpenShift Cluster Manager has read only access to the account, create a basic OpenShift Cluster Manager role. You will then need to manually create the required roles, policies, and OIDC provider using the CLI.
143+
+
144+
Use the following command to create a Basic OpenShift Cluster Manager role:
145+
+
146+
[source,terminal]
147+
----
148+
$ rosa create ocm-role --mode auto --yes
149+
----
150+
151+
== Creating an OpenShift Cluster Manager user role
152+
153+
As defined in the xref:../../../rosa_architecture/rosa-sts-about-iam-resources.adoc#rosa-sts-understanding-user-role_rosa-sts-about-iam-resources[user role documentation], the user role needs to be created so that ROSA can verify your AWS identity. This role has no permissions, and it is only used to create a trust relationship between the installation program account and your OpenShift Cluster Manager role resources.
154+
155+
. Check if a user role already exists by running the following command:
156+
+
157+
[source,terminal]
158+
----
159+
$ rosa list user-role
160+
----
161+
162+
. Run the following command to create the user role and to link it to your Red Hat account:
163+
+
164+
[source,terminal]
165+
----
166+
$ rosa create user-role --mode auto --yes
167+
----
168+
+
169+
.Example output
170+
+
171+
[source,terminal]
172+
----
173+
I: Creating User role
174+
I: Creating ocm user role using 'arn:aws:iam::000000000000:user/rosa-user'
175+
I: Created role 'ManagedOpenShift-User-rosa-user-Role' with ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-User-rosa-user-Role'
176+
I: Linking User role
177+
I: Successfully linked role ARN 'arn:aws:iam::000000000000:role/ManagedOpenShift-User-rosa-user-Role' with account '1rbOQez0z5j1YolInhcXY000000'
178+
----
179+
+
180+
[NOTE]
181+
====
182+
As before, you can define `--mode manual` if you'd prefer to run the AWS CLI commands yourself. The CLI outputs the AWS commands and the relevant JSON files are created in the current directory. Make sure to link the role.
183+
====
184+
185+
. Click *Step 3: Account roles*.
186+
187+
== Creating account roles
188+
. Create your account roles by running the following command:
189+
+
190+
[source,terminal]
191+
----
192+
$ rosa create account-roles --mode auto
193+
----
194+
195+
. Click *OK* to close the sidebar.
196+
197+
== Confirming successful account association
198+
199+
. You should now see your AWS account in the *Associated AWS infrastructure account* dropdown menu. If you see your account, account association was successful.
200+
201+
. Select the account.
202+
203+
. You will see the account role ARNs populated below.
204+
+
205+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-account-roles.png[]
206+
207+
. Click *Next*.
208+
209+
== Creating the cluster
210+
211+
. For the purposes of this tutorial make the following selections:
212+
+
213+
.Cluster settings
214+
+
215+
* Cluster name: **<pick a name\>**
216+
* Version: **<select latest version\>**
217+
* Region: **<select region\>**
218+
* Availability: **Single zone**
219+
* Enable user workload monitoring: **leave checked**
220+
* Enable additional etcd encryption: **leave unchecked**
221+
* Encrypt persistent volumes with customer keys: **leave unchecked**
222+
223+
. Click *Next*.
224+
225+
. Leave the default settings on for the machine pool:
226+
+
227+
.Default machine pool settings
228+
+
229+
* Compute node instance type: **m5.xlarge - 4 vCPU 16 GiB RAM**
230+
* Enable autoscaling: **unchecked**
231+
* Compute node count: **2**
232+
* Leave node labels blank
233+
234+
. Click *Next*.
235+
236+
=== Networking
237+
238+
. Leave all the default values for configuration.
239+
240+
. Click *Next*.
241+
242+
. Leave all the default values for CIDR ranges.
243+
244+
. Click *Next*.
245+
246+
=== Cluster roles and policies
247+
For this tutorial, leave *Auto* selected. It will make the cluster deployment process simpler and quicker.
248+
249+
[NOTE]
250+
====
251+
If you selected a *Basic OpenShift Cluster Manager role* earlier, you can only use manual mode. You must manually create the operator roles and OIDC provider. See the "Basic OpenShift Cluster Manager role" section below after you have completed the "Cluster updates" section and started cluster creation.
252+
====
253+
254+
=== Cluster updates
255+
* Leave all the options at default in this section.
256+
257+
=== Reviewing and creating your cluster
258+
. Review the content for the cluster configuration.
259+
. Click *Create cluster*.
260+
261+
=== Monitoring the installation progress
262+
* Stay on the current page to monitor the installation progress. It should take about 40 minutes.
263+
+
264+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-cluster-create.png[]
265+
266+
== Basic OpenShift Cluster Manager Role
267+
268+
[NOTE]
269+
If you created an *Admin OpenShift Cluster Manager role* as directed above *ignore* this entire section. The OpenShift Cluster Manager will create the resources for you.
270+
271+
If you created a *Basic OpenShift Cluster Manager role* earlier, you will need to manually create two more elements before cluster installation can continue:
272+
273+
* Operator roles
274+
* OIDC provider
275+
276+
//To understand what these do, please see the ROSA with AWS STS Explained tutorial section. xref needed
277+
278+
=== Creating Operator roles
279+
. A pop up window will show you the commands to run.
280+
+
281+
image::cloud-experts-getting-started-rosa-deployment-detailed-ui-create-cmds.png[]
282+
283+
. Run the commands from the window in your terminal to launch interactive mode. Or, for simplicity, run the following command to create the Operator roles:
284+
+
285+
[source,terminal]
286+
----
287+
$ rosa create operator-roles --mode auto --cluster <cluster-name> --yes
288+
----
289+
+
290+
.Example output
291+
+
292+
[source,terminal]
293+
----
294+
I: Creating roles using 'arn:aws:iam::000000000000:user/rosauser'
295+
I: Created role 'rosacluster-b736-openshift-ingress-operator-cloud-credentials' with ARN 'arn:aws:iam::000000000000:role/rosacluster-b736-openshift-ingress-operator-cloud-credentials'
296+
I: Created role 'rosacluster-b736-openshift-cluster-csi-drivers-ebs-cloud-credent' with ARN 'arn:aws:iam::000000000000:role/rosacluster-b736-openshift-cluster-csi-drivers-ebs-cloud-credent'
297+
I: Created role 'rosacluster-b736-openshift-cloud-network-config-controller-cloud' with ARN 'arn:aws:iam::000000000000:role/rosacluster-b736-openshift-cloud-network-config-controller-cloud'
298+
I: Created role 'rosacluster-b736-openshift-machine-api-aws-cloud-credentials' with ARN 'arn:aws:iam::000000000000:role/rosacluster-b736-openshift-machine-api-aws-cloud-credentials'
299+
I: Created role 'rosacluster-b736-openshift-cloud-credential-operator-cloud-crede' with ARN 'arn:aws:iam::000000000000:role/rosacluster-b736-openshift-cloud-credential-operator-cloud-crede'
300+
I: Created role 'rosacluster-b736-openshift-image-registry-installer-cloud-creden' with ARN 'arn:aws:iam::000000000000:role/rosacluster-b736-openshift-image-registry-installer-cloud-creden'
301+
----
302+
303+
=== Creating the OIDC provider
304+
305+
* In your terminal, run the following command to create the OIDC provider:
306+
+
307+
[source,terminal]
308+
----
309+
$ rosa create oidc-provider --mode auto --cluster <cluster-name> --yes
310+
----
311+
+
312+
.Example output
313+
+
314+
[source,terminal]
315+
----
316+
I: Creating OIDC provider using 'arn:aws:iam::000000000000:user/rosauser'
317+
I: Created OIDC provider with ARN 'arn:aws:iam::000000000000:oidc-provider/rh-oidc.s3.us-east-1.amazonaws.com/1tt4kvrr2kha2rgs8gjfvf0000000000'
318+
----

cloud_experts_tutorials/cloud-experts-getting-started/cloud-experts-getting-started-deploying/cloud-experts-getting-started-simple-cli-guide.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ This page outlines the minimum list of commands to deploy a {product-title} (ROS
1313

1414
[NOTE]
1515
====
16-
While this simple deployment works well for a workshop setting, clusters used in production should be deployed with a more detailed method.
16+
While this simple deployment works well for a tutorial setting, clusters used in production should be deployed with a more detailed method.
1717
====
1818

1919
== Prerequisites
69.9 KB
Loading
170 KB
Loading
276 KB
Loading
118 KB
Loading
188 KB
Loading
63.4 KB
Loading
155 KB
Loading

0 commit comments

Comments
 (0)