Skip to content

Commit d6743ea

Browse files
committed
OSDOCS-3033 - Adding a ROSA quick start guide
1 parent 67cf1bd commit d6743ea

File tree

40 files changed

+943
-104
lines changed

40 files changed

+943
-104
lines changed

_topic_maps/_topic_map_rosa.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,18 @@ Topics:
4949
- Name: Planning your environment
5050
File: rosa-planning-environment
5151
---
52-
Name: Setting up accounts and clusters using AWS security token service (STS)
52+
Name: Getting started
53+
Dir: rosa_getting_started
54+
Distros: openshift-rosa
55+
Topics:
56+
- Name: Getting started with ROSA
57+
File: rosa-getting-started
58+
---
59+
Name: Setting up accounts and clusters using AWS Security Token Service (STS)
5360
Dir: rosa_getting_started_sts
5461
Distros: openshift-rosa
5562
Topics:
56-
- Name: Getting started using STS workflow
63+
- Name: Understanding the ROSA with STS deployment workflow
5764
File: rosa-sts-getting-started-workflow
5865
- Name: AWS prerequisites for ROSA with STS
5966
File: rosa-sts-aws-prereqs
@@ -85,7 +92,7 @@ Name: Setting up accounts and clusters
8592
Dir: rosa_getting_started
8693
Distros: openshift-rosa
8794
Topics:
88-
- Name: Getting started workflow
95+
- Name: Understanding the ROSA deployment workflow
8996
File: rosa-getting-started-workflow
9097
- Name: AWS prerequisites for ROSA
9198
File: rosa-aws-prereqs

modules/deploy-app.adoc

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,34 @@
1-
21
// Module included in the following assemblies:
32
//
4-
// * assemblies/quickstart-osd.adoc
3+
// * rosa_getting_started/rosa-getting-started.adoc
4+
// * osd_quickstart/osd-quickstart.adoc
55

66
[id="deploy-app_{context}"]
7-
= Deploying an app with the OpenShift service catalog
8-
7+
= Deploying an application from the Developer Catalog
98

10-
From the OpenShift web console, you can deploy one of the built-in service catalog apps and expose the app with a route.
9+
From the {product-title} web console, you can deploy a test application from the Developer Catalog and expose it with a route.
1110

1211
.Prerequisites
1312

14-
- An actively running cluster.
13+
* You have access to a {product-title} cluster.
1514

1615
.Procedure
1716

18-
. From OpenShift Cluster Manager (OCM), click *Open console*.
17+
. From {console-redhat-com}, navigate to the overview page for your cluster and select *Open console*.
1918

20-
. From the side navigation menu in the *Administrator* perspective, click *Home* -> *Projects* and then click *Create Project*.
19+
. In the *Administrator* perspective, select *Home* -> *Projects* -> *Create Project*.
2120

22-
. Enter a name for your project. Optional: Add a *Display Name* and *Description*. Click *Create*.
21+
. Enter a name for your project and optionally add a *Display Name* and *Description*.
2322

24-
. Switch to the Developer perspective from the side navigation menu to create an app.
23+
. Click *Create* to create the project.
2524

26-
. Click *+Add* from the side navigation menu. From the *Add pane* menu bar, make sure that the *Project* is the one that you just created.
25+
. Switch to the *Developer* perspective and select *+Add*. Make sure that the selected *Project* is the one that you just created.
2726

28-
. Click *From Catalog*. The Developer Catalog opens in the pane.
27+
. In the *Developer Catalog* dialog, select *All services*.
2928

30-
. From the navigation menu in the pane, click *Languages* -> *JavaScript*.
29+
. In the *Developer Catalog* page, select *Languages* -> *JavaScript* from the menu.
3130

32-
. Click *Node.js*, and then click *Create Application*. After you select *Node.js*, the *Create Source-to-Image Application* pane opens.
31+
. Click *Node.js*, and then click *Create Application* to open the *Create Source-to-Image Application* page.
3332
+
3433
[NOTE]
3534
====
@@ -38,23 +37,26 @@ You might need to click *Clear All Filters* to display the *Node.js* option.
3837

3938
. In the *Git* section, click *Try Sample*.
4039

41-
. Scroll to confirm that *Deployment* and *Create a route to the application* are selected.
40+
. Add a unique name in the *Name* field. The value will be used to name the associated resources.
4241

43-
. Click *Create*. It will take a few minutes for the pods to deploy.
42+
. Confirm that *Deployment* and *Create a route to the application* are selected.
4443

45-
. Optional: You can check the status of the pods from the *Topology* pane. Click your *nodejs* app and review its sidebar. You must see that the `nodejs` build is complete, and that the `nodejs` pod is in a *Running* state to continue.
44+
. Click *Create* to deploy the application. It will take a few minutes for the pods to deploy.
4645

47-
. When the deployment is complete, click the route location URL, which has a format similar to the following:
46+
. Optional: Check the status of the pods in the *Topology* pane by selecting your *nodejs* app and reviewing its sidebar. You must wait for the `nodejs` build to complete and for the `nodejs` pod to be in a *Running* state before continuing.
47+
48+
. When the deployment is complete, click route URL for the application, which has a format similar to the following:
4849
+
4950
----
50-
http://nodejs-<project>.<cluster_name>-<hash>.<region>.containers.appdomain.cloud
51+
http://nodejs-<project>.<cluster_name>.<hash>.<region>.openshiftapps.com/
5152
----
5253
+
53-
5454
A new tab in your browser opens with a message similar to the following.
5555
+
5656
----
5757
Welcome to your Node.js application on OpenShift
5858
----
5959

60-
. Optional: To clean up the resources that you created, select *Administrator* from the perspective switcher, navigate to *Home* -> *Projects*, click your project's action menu, and click *Delete Project*.
60+
. Optional: Delete the application and clean up the resources that you created:
61+
.. In the *Administrator* perspective, navigate to *Home* -> *Projects*.
62+
.. Click the action menu for your project and select *Delete Project*.

modules/rosa-accessing-your-cluster.adoc

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,12 @@ Any optional fields can be left empty and a default will be selected.
4949
...
5050
----
5151
+
52-
.. Follow the URL from the output. This creates a new OAuth application in the GitHub organization you specified.
53-
.. Click *Register application* to access your client ID and client secret.
52+
.. Follow the URL in the output and select *Register application* to register a new OAuth application in your GitHub organization. By registering the application, you enable the OAuth server that is built into ROSA to authenticate members of your GitHub organization into your cluster.
53+
+
54+
[NOTE]
55+
====
56+
The fields in the *Register a new OAuth application* GitHub form are automatically filled with the required values through the URL that is defined by the `rosa` CLI tool.
57+
====
5458
.. Use the information from the GitHub application you created and continue the prompts. Enter the following values:
5559
+
5660
--

modules/rosa-create-objects.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ Create a cluster administrator that can log in to a cluster named `mycluster`:
5858
$ rosa create admin --cluster=mycluster
5959
----
6060

61-
[id="rosa-create-cluster_{context}"]
61+
[id="rosa-create-cluster-command_{context}"]
6262
== create cluster
6363

6464
Create a new cluster.
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_getting_started/rosa-getting-started.adoc
4+
5+
[id="rosa-getting-started-access-cluster-web-console_{context}"]
6+
= Accessing a cluster through the web console
7+
8+
After you have created a cluster administrator user or added a user to your configured identity provider, you can log into your {product-title} (ROSA) cluster through the web console.
9+
10+
.Prerequisites
11+
12+
* You have an AWS account.
13+
* You installed and configured the latest AWS (`aws`), ROSA (`rosa`), and OpenShift (`oc`) CLIs on your workstation.
14+
* You logged in to your Red Hat account by using the `rosa` CLI.
15+
* You created a ROSA cluster.
16+
* You have created a cluster administrator user or added your user account to the configured identity provider.
17+
18+
.Procedure
19+
20+
. Obtain the console URL for your cluster:
21+
+
22+
[source,terminal]
23+
----
24+
$ rosa describe cluster -c <cluster_name> | grep Console <1>
25+
----
26+
<1> Replace `<cluster_name>` with the name of your cluster.
27+
+
28+
.Example output
29+
[source,terminal]
30+
----
31+
Console URL: https://console-openshift-console.apps.example-cluster.wxyz.p1.openshiftapps.com
32+
----
33+
34+
. Go to the console URL in the output of the preceding step and log in.
35+
+
36+
* If you created a `cluster-admin` user, log in by using the provided credentials.
37+
* If you configured an identity provider for your cluster, select the identity provider name in the *Log in with...* dialog and complete any authorization requests that are presented by your provider.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_getting_started/rosa-getting-started.adoc
4+
5+
[id="rosa-getting-started-configure-an-idp-and-grant-access_{context}"]
6+
= Configuring an identity provider and granting cluster access
7+
8+
{product-title} (ROSA) includes a built-in OAuth server. After your ROSA cluster is created, you must configure OAuth to use an identity provider. You can then add members to your configured identity provider to grant them access to your cluster.
9+
10+
You can also grant the identity provider users with `cluster-admin` or `dedicated-admin` privileges as required.
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_getting_started/rosa-getting-started.adoc
4+
5+
[id="rosa-getting-started-configure-an-idp_{context}"]
6+
= Configuring an identity provider
7+
8+
You can configure different identity provider types for your {product-title} (ROSA) cluster. Supported types include GitHub, GitHub Enterprise, GitLab, Google, LDAP, OpenID Connect and HTPassword identity providers.
9+
10+
The following procedure configures a GitHub identity provider as an example.
11+
12+
.Prerequisites
13+
14+
* You have an AWS account.
15+
* You installed and configured the latest AWS (`aws`), ROSA (`rosa`), and OpenShift (`oc`) CLIs on your workstation.
16+
* You logged in to your Red Hat account by using the `rosa` CLI.
17+
* You created a ROSA cluster.
18+
* You have a GitHub user account.
19+
20+
.Procedure
21+
22+
. Go to link:https://github.com[github.com] and log in to your GitHub account.
23+
24+
. If you do not have an existing GitHub organization to use for identity provisioning for your ROSA cluster, create one. Follow the steps in the link:https://docs.github.com/en/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch[GitHub documentation].
25+
26+
. Configure a GitHub identity provider for your cluster that is restricted to the members of your GitHub organization.
27+
.. Configure an identity provider using the interactive mode:
28+
+
29+
[source,terminal]
30+
----
31+
$ rosa create idp --cluster=<cluster_name> --interactive <1>
32+
----
33+
<1> Replace `<cluster_name>` with the name of your cluster.
34+
+
35+
.Example output
36+
[source,terminal]
37+
----
38+
I: Interactive mode enabled.
39+
Any optional fields can be left empty and a default will be selected.
40+
? Type of identity provider: github
41+
? Identity provider name: github-1
42+
? Restrict to members of: organizations
43+
? GitHub organizations: <github_org_name> <1>
44+
? To use GitHub as an identity provider, you must first register the application:
45+
- Open the following URL:
46+
https://github.com/organizations/<github_org_name>/settings/applications/new?oauth_application%5Bcallback_url%5D=https%3A%2F%2Foauth-openshift.apps.<cluster_name>/<random_string>.p1.openshiftapps.com%2Foauth2callback%2Fgithub-1&oauth_application%5Bname%5D=<cluster_name>&oauth_application%5Burl%5D=https%3A%2F%2Fconsole-openshift-console.apps.<cluster_name>/<random_string>.p1.openshiftapps.com
47+
- Click on 'Register application'
48+
...
49+
----
50+
<1> Replace `<github_org_name>` with the name of your GitHub organization.
51+
.. Follow the URL in the output and select *Register application* to register a new OAuth application in your GitHub organization. By registering the application, you enable the OAuth server that is built into ROSA to authenticate members of your GitHub organization into your cluster.
52+
+
53+
[NOTE]
54+
====
55+
The fields in the *Register a new OAuth application* GitHub form are automatically filled with the required values through the URL defined by the `rosa` CLI tool.
56+
====
57+
.. Use the information from your GitHub OAuth application page to populate the remaining `rosa create idp` interactive prompts.
58+
+
59+
.Continued example output
60+
[source,terminal]
61+
----
62+
...
63+
? Client ID: <github_client_id> <1>
64+
? Client Secret: [? for help] <github_client_secret> <2>
65+
? GitHub Enterprise Hostname (optional):
66+
? Mapping method: claim <3>
67+
I: Configuring IDP for cluster '<cluster_name>'
68+
I: Identity Provider 'github-1' has been created.
69+
It will take up to 1 minute for this configuration to be enabled.
70+
To add cluster administrators, see 'rosa grant user --help'.
71+
To login into the console, open https://console-openshift-console.apps.<cluster_name>.<random_string>.p1.openshiftapps.com and click on github-1.
72+
----
73+
<1> Replace `<github_client_id>` with the client ID for your GitHub OAuth application.
74+
<2> Replace `<github_client_secret>` with a client secret for your GitHub OAuth application.
75+
<3> Specify `claim` as the mapping method.
76+
+
77+
[NOTE]
78+
====
79+
It might take approximately two minutes for the identity provider configuration to become active. If you have configured a `cluster-admin` user, you can watch the OAuth pods redeploy with the updated configuration by running `oc get pods -n openshift-authentication --watch`.
80+
====
81+
.. Enter the following command to verify that the identity provider has been configured correctly:
82+
+
83+
[source,terminal]
84+
----
85+
$ rosa list idps --cluster=<cluster_name>
86+
----
87+
+
88+
.Example output
89+
[source,terminal]
90+
----
91+
NAME TYPE AUTH URL
92+
github-1 GitHub https://oauth-openshift.apps.<cluster_name>.<random_string>.p1.openshiftapps.com/oauth2callback/github-1
93+
----
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_getting_started/rosa-getting-started.adoc
4+
5+
[id="rosa-getting-started-create-cluster-admin-user_{context}"]
6+
= Creating a cluster administrator user for quick cluster access
7+
8+
Before configuring an identity provider, you can create a user with `cluster-admin` privileges for immediate access to your {product-title} (ROSA) cluster.
9+
10+
[NOTE]
11+
====
12+
The cluster administrator user is useful when you need quick access to a newly deployed cluster. However, Red Hat recommends that you configure an identity provider and grant cluster administrator privileges to the identity provider users as required. For more information about setting up an identity provider for your ROSA cluster, see _Configuring an identity provider and granting cluster access_.
13+
====
14+
15+
.Prerequisites
16+
17+
* You have an AWS account.
18+
* You installed and configured the latest AWS (`aws`), ROSA (`rosa`), and OpenShift (`oc`) CLIs on your workstation.
19+
* You logged in to your Red Hat account by using the `rosa` CLI.
20+
* You created a ROSA cluster.
21+
22+
.Procedure
23+
24+
. Create a cluster administrator user:
25+
+
26+
[source,terminal]
27+
----
28+
$ rosa create admin --cluster=<cluster_name> <1>
29+
----
30+
<1> Replace `<cluster_name>` with the name of your cluster.
31+
+
32+
.Example output
33+
[source,terminal]
34+
----
35+
W: It is recommended to add an identity provider to login to this cluster. See 'rosa create idp --help' for more information.
36+
I: Admin account has been added to cluster '<cluster_name>'.
37+
I: Please securely store this generated password. If you lose this password you can delete and recreate the cluster admin user.
38+
I: To login, run the following command:
39+
40+
oc login https://api.example-cluster.wxyz.p1.openshiftapps.com:6443 --username cluster-admin --password d7Rca-Ba4jy-YeXhs-WU42J
41+
42+
I: It may take up to a minute for the account to become active.
43+
----
44+
+
45+
[NOTE]
46+
====
47+
It might take approximately one minute for the `cluster-admin` user to become active.
48+
====
49+
50+
. Log in to the cluster through the CLI:
51+
.. Run the command provided in the output of the preceding step to log in:
52+
+
53+
[source,terminal]
54+
----
55+
$ oc login <api_url> --username cluster-admin --password <cluster_admin_password> <1>
56+
----
57+
<1> Replace `<api_url>` and `<cluster_admin_password>` with the API URL and cluster administrator password for your environment.
58+
.. Verify if you are logged in to the ROSA cluster as the `cluster-admin` user:
59+
+
60+
[source,terminal]
61+
----
62+
$ oc whoami
63+
----
64+
+
65+
.Example output
66+
[source,terminal]
67+
----
68+
cluster-admin
69+
----

0 commit comments

Comments
 (0)