Skip to content

Commit 243b209

Browse files
authored
Merge pull request #55565 from EricPonvelle/Rosa_HCP
[OSDOCS-3901] Created the topic map for ROSA HCP
2 parents b50b30e + 5161f1f commit 243b209

14 files changed

+477
-15
lines changed

_attributes/attributes-openshift-dedicated.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,4 @@
2727
//Formerly known as CodeReady Containers and CodeReady Workspaces
2828
:openshift-local-productname: Red Hat OpenShift Local
2929
:openshift-dev-spaces-productname: Red Hat OpenShift Dev Spaces
30+
:hcp: hosted control planes

_topic_maps/_topic_map_rosa.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,14 @@ Topics:
102102
- Name: Setting up your environment
103103
File: rosa-sts-setting-up-environment
104104
---
105-
Name: Installing, accessing, and deleting ROSA clusters
105+
Name: Install hosted control plane for ROSA clusters
106+
Dir: rosa_hcp
107+
Distros: openshift-rosa
108+
Topics:
109+
- Name: Creating hosted control planes for ROSA clusters using the default options
110+
File: rosa-hcp-sts-creating-a-cluster-quickly
111+
---
112+
Name: Install ROSA classic clusters
106113
Dir: rosa_install_access_delete_clusters
107114
Distros: openshift-rosa
108115
Topics:

modules/rosa-hcp-byo-oidc.adoc

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_install_access_delete_clusters/rosa-sts-creating-a-cluster-quickly.adoc
4+
// * rosa_getting_started/quickstart.adoc
5+
6+
:_content-type: PROCEDURE
7+
[id="rosa-hcp-byo-oidc_{context}"]
8+
= Configuring your own OpenID Connect provider
9+
10+
You can use your own OpenID Connect (OIDC) provider with {hcp} for {product-title} (ROSA).
11+
12+
.Prerequisites
13+
14+
* You have completed the AWS prerequisites for {hcp} for ROSA.
15+
* You have installed and configured the latest ROSA CLI (`rosa`) on your installation host.
16+
17+
.Procedure
18+
19+
* To create your OIDC configuration alongside the AWS resources, run the following command:
20+
+
21+
[source,terminal]
22+
----
23+
$ rosa create oidc-config --mode auto
24+
----
25+
+
26+
This command returns the following information.
27+
+
28+
.Sample output
29+
+
30+
[source,terminal]
31+
----
32+
I: This command will create a S3 bucket populating it with documents to be compliant with OIDC protocol. It will also create a Secret in Secrets Manager containing the private key.
33+
I: Please run command below to create a cluster with this oidc config:
34+
rosa create cluster --sts \
35+
--oidc-endpoint-url https://oidc-l8c0.s3.us-east-1.amazonaws.com \
36+
--oidc-private-key-secret-arn arn:aws:secretsmanager:us-east-1:269733383066:secret:rosa-private-key-oidc-l8c0-4vdMVv
37+
----
38+
39+
When creating your cluster, you must supply the OIDC endpoint URL and secret manager secret ARN. The CLI output provides both values for `--mode auto`, otherwise you must to determine these values based on `aws` CLI output for `--mode manual`.
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_install_access_delete_clusters/rosa-sts-creating-a-cluster-quickly.adoc
4+
// * rosa_getting_started/quickstart.adoc
5+
6+
:_content-type: PROCEDURE
7+
[id="rosa-sts-creating-account-wide-sts-roles-and-policies_{context}"]
8+
= Creating the account-wide STS roles and policies
9+
10+
Before using the {cluster-manager-first} {hybrid-console-second} to create {hcp} for {product-title} (ROSA) clusters, create the required account-wide roles and policies, including the Operator policies.
11+
12+
.Prerequisites
13+
14+
* You have completed the AWS prerequisites for {hcp} for ROSA with STS.
15+
* You have available AWS service quotas.
16+
* You have enabled the ROSA service in the AWS Console.
17+
* You have installed and configured the latest ROSA CLI (`rosa`) on your installation host.
18+
+
19+
[NOTE]
20+
====
21+
To successfully install {hcp} for ROSA clusters, use the latest version of the ROSA CLI (`rosa`).
22+
====
23+
* You have logged in to your Red Hat account by using the `rosa` CLI.
24+
25+
.Procedure
26+
27+
. Check your AWS account for existing roles and policies by running the following command:
28+
+
29+
[source,terminal]
30+
----
31+
$ rosa list account-roles
32+
----
33+
+
34+
.Sample output
35+
[source,terminal]
36+
----
37+
I: Fetching account roles
38+
ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION
39+
ManagedOpenShift-ControlPlane-Role Control plane arn:aws:iam::8744:role/ManagedOpenShift-ControlPlane-Role 4.12
40+
ManagedOpenShift-Installer-Role Installer arn:aws:iam::8744:role/ManagedOpenShift-Installer-Role 4.12
41+
ManagedOpenShift-Support-Role Support arn:aws:iam::8744:role/ManagedOpenShift-Support-Role 4.12
42+
ManagedOpenShift-Worker-Role Worker arn:aws:iam::8744:role/ManagedOpenShift-Worker-Role 4.12
43+
----
44+
45+
. If they do not exist in your AWS account, create the required account-wide STS roles and policies by running the following command:
46+
+
47+
[source,terminal]
48+
----
49+
$ rosa create account-roles
50+
----
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_getting_started_sts/rosa_creating_a_cluster_with_sts/rosa-sts-creating-a-cluster-quickly.adoc
4+
// * rosa_getting_started/rosa-getting-started.adoc
5+
// * rosa_getting_started/quickstart.adoc
6+
7+
:_content-type: PROCEDURE
8+
[id="rosa-hcp-sts-creating-a-cluster-cli_{context}"]
9+
= Creating a {hcp} for ROSA cluster using the CLI
10+
11+
When using {product-title} (ROSA) CLI (`rosa`) to create a cluster, you can select the default options to create the cluster quickly.
12+
13+
.Prerequisites
14+
15+
* You have completed the AWS prerequisites for {hcp} for ROSA.
16+
* You have available AWS service quotas.
17+
* You have enabled the ROSA service in the AWS Console.
18+
* You have installed and configured the latest ROSA CLI (`rosa`) on your installation host.
19+
+
20+
[NOTE]
21+
====
22+
To successfully install ROSA clusters, use the latest version of the ROSA CLI (`rosa`).
23+
====
24+
* You have logged in to your Red Hat account by using the `rosa` CLI.
25+
* You have verified that the AWS Elastic Load Balancing (ELB) service role exists in your AWS account.
26+
27+
.Procedure
28+
29+
//. Create environmental variables for your region and cluster name.
30+
//+
31+
//[source,terminal]
32+
//----
33+
//CLUSTER_NAME="<cluster-name>"
34+
//REGION="<region>"
35+
//----
36+
37+
. You can create your {hcp} for ROSA cluster with one of the following commands.
38+
+
39+
[NOTE]
40+
====
41+
If you are using your own OIDC provider, you must include the endpoint URL and ARN arguments, such as `--oidc-endpoint-url <oidc_endpoint_url> --oidc-private-key-secret-arn <oidc_private_key_secret_arn>`.
42+
====
43+
44+
** Create a cluster with a single, initial machine pool, publicly available API, and publicly available Ingress by running the following command:
45+
+
46+
[source,terminal]
47+
----
48+
$ rosa create cluster --cluster-name=<cluster_name> \
49+
--sts --mode=auto --hosted-cp --subnet-ids=<public-subnet-id>,<private-subnet-id>
50+
----
51+
52+
** Create a cluster with a single, initial machine pool, privately available API, and privately available Ingress by running the following command:
53+
+
54+
[source,terminal]
55+
----
56+
$ rosa create cluster --private --cluster-name=<cluster_name> \
57+
--sts --mode=auto --hosted-cp --subnet-ids=<private-subnet-id>
58+
----
59+
+
60+
[NOTE]
61+
====
62+
When you specify `--mode auto`, the `rosa create cluster` command creates the cluster-specific Operator IAM roles and the OIDC provider automatically. The Operators use the OIDC provider to authenticate.
63+
====
64+
65+
. Check the status of your cluster by running the following command:
66+
+
67+
[source,terminal]
68+
----
69+
$ rosa describe cluster --cluster=<cluster_name>
70+
----
71+
+
72+
The following `State` field changes are listed in the output as the cluster installation progresses:
73+
+
74+
* `waiting (Waiting for OIDC configuration)`
75+
* `pending (Preparing account)`
76+
* `installing (DNS setup in progress)`
77+
* `installing`
78+
* `ready`
79+
+
80+
[NOTE]
81+
====
82+
If the installation fails or the `State` field does not change to `ready` after more than 10 minutes, check the installation troubleshooting documentation for details. For more information, see _Troubleshooting installations_. For steps to contact Red Hat Support for assistance, see _Getting support for Red Hat OpenShift Service on AWS_.
83+
====
84+
85+
. Track the progress of the cluster creation by watching the {product-title} installation program logs. To check the logs, run the following command:
86+
+
87+
[source,terminal]
88+
----
89+
$ rosa logs install --cluster=<cluster_name> --watch <1>
90+
----
91+
<1> Optional: To watch for new log messages as the installation progresses, use the `--watch` argument.

modules/rosa-hcp-vpc-manual.adoc

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_install_access_delete_clusters/rosa-sts-creating-a-cluster-quickly.adoc
4+
// * rosa_getting_started/quickstart.adoc
5+
6+
:_content-type: PREFERENCE
7+
[id="rosa-hcp-vpc-manual_{context}"]
8+
= Creating a Virtual Private Cloud manually
9+
10+
To manually create your Virtual Private Cloud (VPC), go to link:https://us-east-1.console.aws.amazon.com/vpc/[the VPC page in the AWS console]. Your VPC must have the following details.
11+
12+
.Requirements for your VPC
13+
[options="header",cols="50,50"]
14+
|===
15+
| Requirement | Details
16+
17+
| VPC name
18+
| You need to have the specific VPC name and ID when creating your cluster.
19+
20+
| CIDR range
21+
| Your VPC CIDR range should match your machine CIDR.
22+
23+
| Availability Zone
24+
| You need 1 Availability Zone for a single zone, and you need 3 for Availability Zones for multi-zone.
25+
26+
| Public subnet
27+
| You must have one public subnet with a NAT gateway.
28+
29+
| DNS hostname and resolution
30+
| You must ensure that the DNS hostname and resolution are enabled.
31+
|===

modules/rosa-hcp-vpc-terraform.adoc

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_install_access_delete_clusters/rosa-sts-creating-a-cluster-quickly.adoc
4+
// * rosa_getting_started/quickstart.adoc
5+
6+
:_content-type: PROCEDURE
7+
[id="rosa-hcp-vpc-terraform_{context}"]
8+
= Creating an AWS Virtual Private Cloud using Terraform
9+
10+
Terraform is a tool that allows you to create various resources using an established template. The following process uses the default options as required to create a {hcp} for ROSA cluster. For more information about using Terraform, see the additional resources.
11+
12+
.Prerequisites
13+
14+
* You have installed Terraform on your machine.
15+
16+
.Procedure
17+
18+
. Open a shell prompt and create a directory for your Terraform files by running the following command:
19+
+
20+
[source,terminal]
21+
----
22+
$ mkdir hypershift-tf
23+
----
24+
25+
. Navigate to the created directory by running the following command:
26+
+
27+
[source,terminal]
28+
----
29+
$ cd hypershift-tf
30+
----
31+
32+
. Download the VPC setup Terraform file by running the following command:
33+
+
34+
[source,terminal]
35+
----
36+
$ curl -s -o setup-vpc.tf https://raw.githubusercontent.com/openshift-cs/OpenShift-Troubleshooting-Templates/master/rosa-hcp-terraform/setup-vpc.tf
37+
----
38+
39+
. After the template has downloaded, initiate the Terraform file by running the following command:
40+
+
41+
[source,terminal]
42+
----
43+
$ terraform init
44+
----
45+
+
46+
A message confirming the initialization appears when this process completes.
47+
48+
. To build your VPC Terraform plan based off of the downloaded template, run the `plan` command. You can specify a cluster name and your AWS region.
49+
+
50+
[source,terminal]
51+
----
52+
$ terraform plan -out rosa.plan [-var aws_region=<region>] [-var cluster_name=<cluster_name>]
53+
----
54+
55+
. You should have a `rosa.plan` file in the directory that you created in the first step. Apply this plan file to build your VPC by running the following command:
56+
+
57+
[source,terminal]
58+
----
59+
$ terraform apply rosa.plan
60+
----
61+
62+
. Optional: You can capture the values of the Terraform-provisioned private, public, and machinepool subnet IDs as environment variables to use when creating your {hcp} for ROSA cluster by running the following commands:
63+
+
64+
** For the private subnet ID:
65+
+
66+
[source,terminal]
67+
----
68+
$ PRIVATE_SUBNET=`terraform output -raw cluster-private-subnet`
69+
----
70+
** For the public subnet ID:
71+
+
72+
[source,terminal]
73+
----
74+
$ PUBLIC_SUBNET=`terraform output -raw cluster-public-subnet`
75+
----
76+
** For the machinepool subnet ID:
77+
+
78+
[source,terminal]
79+
----
80+
$ MACHINEPOOL_SUBNET=`terraform output -raw node-private-subnet`
81+
----

0 commit comments

Comments
 (0)