Skip to content

Commit 0c19d16

Browse files
authored
Merge pull request #72902 from jneczypor/OSDOCS-9529
OSDOCS-9529: Create a guide to installing a ROSA HCP cluster with no CNI plugin
2 parents d79e1fb + 9f41696 commit 0c19d16

7 files changed

+151
-5
lines changed

_topic_maps/_topic_map_rosa.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,8 @@ Topics:
262262
File: rosa-hcp-aws-private-creating-cluster
263263
- Name: Creating ROSA with HCP clusters with external authentication
264264
File: rosa-hcp-sts-creating-a-cluster-ext-auth
265+
- Name: Creating ROSA with HCP clusters without a CNI plugin
266+
File: rosa-hcp-cluster-no-cni
265267
- Name: Using the Node Tuning Operator on ROSA with HCP
266268
File: rosa-tuning-config
267269
- Name: Deleting a ROSA with HCP cluster

modules/rosa-create-objects.adoc

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,9 @@ OVN-Kubernetes, the default network provider in ROSA 4.11 and later, uses the `1
240240
|--multi-az
241241
|Deploys to multiple data centers.
242242

243+
|--no-cni
244+
|Creates a cluster without a Container Network Interface (CNI) plugin. Customers can then bring their own CNI plugin and install it after cluster creation.
245+
243246
|--operator-roles-prefix <string>
244247
|Prefix that are used for all IAM roles used by the operators needed in the OpenShift installer. A prefix is generated automatically if you do not specify one.
245248

@@ -283,7 +286,7 @@ a|--sts \| --non-sts
283286
When using `--private-link`, the `--subnet-ids` argument is required and only one private subnet is allowed per zone.
284287

285288
|--support-role-arn string
286-
|The ARN of the role used by Red{nbsp}Hat Site Reliabilty Engineers (SREs) to enable access to the cluster account to provide support.
289+
|The ARN of the role used by Red Hat Site Reliability Engineers (SREs) to enable access to the cluster account to provide support.
287290

288291
|--tags
289292
a|Tags that are used on resources created by {product-title} in AWS. Tags can help you manage, identify, organize, search for, and filter resources within AWS. Tags are comma separated, for example: "key value, foo bar".
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * rosa_hcp/rosa-hcp-cluster-no-cni.adoc
4+
5+
:_mod-docs-content-type: PROCEDURE
6+
[id="rosa-hcp-sts-creating-a-cluster-cli_{context}-no-cni"]
7+
= Creating the cluster
8+
9+
When using the {product-title} (ROSA) command line interface (CLI), `rosa`, to create a cluster, you can add an optional flag `--no-cni` to create a cluster without a CNI plugin.
10+
11+
.Prerequisites
12+
13+
* You have completed the AWS prerequisites for {hcp-title}.
14+
* You have available AWS service quotas.
15+
* You have enabled the ROSA service in the AWS Console.
16+
* You have installed and configured the latest ROSA CLI (`rosa`) on your installation host. Run `rosa version` to see your currently installed version of the ROSA CLI. If a newer version is available, the CLI provides a link to download this upgrade.
17+
* You have logged in to your Red Hat account by using the ROSA CLI.
18+
* You have created an OIDC configuration.
19+
* You have verified that the AWS Elastic Load Balancing (ELB) service role exists in your AWS account.
20+
21+
.Procedure
22+
23+
. You can create your {hcp-title} cluster with one of the following commands.
24+
+
25+
[NOTE]
26+
====
27+
When creating a {hcp-title} cluster, the default machine Classless Inter-Domain Routing (CIDR) is `10.0.0.0/16`. If this does not correspond to the CIDR range for your VPC subnets, add `--machine-cidr <address_block>` to the following commands. To learn more about the default CIDR ranges for {product-title}, see xref:../networking/cidr-range-definitions.adoc#cidr-range-definitions[CIDR range definitions].
28+
====
29+
+
30+
** Create a cluster with a single, initial machine pool, publicly available API, publicly available Ingress, and no CNI plugin by running the following command:
31+
+
32+
[source,terminal]
33+
----
34+
$ rosa create cluster --cluster-name=<cluster_name> \
35+
--sts --mode=auto --hosted-cp --operator-roles-prefix <operator-role-prefix> \
36+
--oidc-config-id <ID-of-OIDC-configuration> --subnet-ids=<public-subnet-id>,<private-subnet-id> --no-cni
37+
----
38+
39+
** Create a cluster with a single, initial machine pool, privately available API, privately available Ingress, and no CNI plugin by running the following command:
40+
+
41+
[source,terminal]
42+
----
43+
$ rosa create cluster --private --cluster-name=<cluster_name> \
44+
--sts --mode=auto --hosted-cp --subnet-ids=<private-subnet-id> --no-cni
45+
----
46+
47+
** If you used the `OIDC_ID`, `SUBNET_IDS`, and `OPERATOR_ROLES_PREFIX` variables to prepare your environment, you can continue to use those variables when creating your cluster without a CNI plugin. For example, run the following command:
48+
+
49+
[source,terminal]
50+
----
51+
$ rosa create cluster --hosted-cp --subnet-ids=$SUBNET_IDS --oidc-config-id=$OIDC_ID --cluster-name=<cluster_name> --operator-roles-prefix=$OPERATOR_ROLES_PREFIX --no-cni
52+
----
53+
54+
. Check the status of your cluster by running the following command:
55+
+
56+
[source,terminal]
57+
----
58+
$ rosa describe cluster --cluster=<cluster_name>
59+
----
60+
+
61+
The following `State` field changes are listed in the output as the cluster installation progresses:
62+
+
63+
* `pending (Preparing account)`
64+
* `installing (DNS setup in progress)`
65+
* `installing`
66+
* `ready`
67+
+
68+
[NOTE]
69+
====
70+
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_.
71+
====
72+
+
73+
[IMPORTANT]
74+
====
75+
When you first log in to the cluster after it reaches `ready` status, the nodes will still be in the `not ready` state until you install your own CNI plugin. After CNI installation, the nodes will change to `ready`.
76+
====
77+
78+
. Track the progress of the cluster creation by watching the {product-title} installation program logs. To check the logs, run the following command:
79+
+
80+
[source,terminal]
81+
----
82+
$ rosa logs install --cluster=<cluster_name> --watch <1>
83+
----
84+
<1> Optional: To watch for new log messages as the installation progresses, use the `--watch` argument.

modules/rosa-policy-change-management.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,8 @@ You can review the history of all cluster upgrade events in the {cluster-manager
117117
|- Configure your firewall to grant access to the required OpenShift and AWS domains and ports before the cluster is provisioned. For more information, see "AWS firewall prerequisites".
118118
- Provide optional non-default IP address ranges for machine CIDR, service CIDR, and pod CIDR if needed through {cluster-manager} when the cluster is provisioned.
119119
- Request that the API service endpoint be made public or private on cluster creation or after cluster creation through {cluster-manager}.
120+
- Create additional Ingress Controllers to publish additional application routes.
121+
- Install, configure, and upgrade optional CNI plugins if clusters are installed without the default OpenShift CNI plugins.
120122

121123
|Virtual networking management
122124
|**Red{nbsp}Hat**

modules/rosa-policy-incident.adoc

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ service, and respond to alerts.
2323
|- Monitor health of application routes, and the endpoints behind them.
2424
- Report outages to Red{nbsp}Hat and AWS.
2525

26+
|Cluster networking
27+
|**Red Hat**
28+
29+
- Monitor, alert, and address incidents related to cluster DNS, network plugin connectivity between cluster components, and the default Ingress Controller.
30+
|- Monitor and address incidents related to optional Ingress Controllers, additional Operators installed through the OperatorHub, and network plugins replacing the default OpenShift CNI plugins.
31+
2632
|Virtual networking management
2733
|**Red{nbsp}Hat**
2834

@@ -84,7 +90,7 @@ permissions to AWS resources in the customer account.
8490
|**AWS**
8591

8692
- For information regarding AWS incident and operations management, see link:https://docs.aws.amazon.com/whitepapers/latest/aws-operational-resilience/how-aws-maintains-operational-resilience-and-continuity-of-service.html#incident-management[How AWS maintains operational
87-
resilience and continuity of service] in the AWS whitepaper.
93+
resilience and continuity of service] in the AWS white paper.
8894

8995
|- Configure, manage, and monitor customer applications and data to ensure application and data security controls are properly enforced.
9096

modules/rosa-policy-responsibilities.adoc

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
[id="rosa-policy-responsibilities_{context}"]
77
= Shared responsibilities for {product-title}
88

9-
109
While Red{nbsp}Hat and Amazon Web Services (AWS) manage the {product-title} services, the customer shares certain responsibilities. The {product-title} services are accessed remotely, hosted on public cloud resources, created in customer-owned AWS accounts, and have underlying platform and data security that is owned by Red{nbsp}Hat.
1110

1211
[IMPORTANT]
@@ -36,7 +35,12 @@ If the `cluster-admin` role is added to a user, see the responsibilities and exc
3635

3736
|Application networking |Red{nbsp}Hat and Customer |Red{nbsp}Hat and Customer |Red{nbsp}Hat and Customer |Red{nbsp}Hat |Red{nbsp}Hat
3837

39-
|Cluster networking |Red{nbsp}Hat |Red{nbsp}Hat and Customer ^[1]^ |Red{nbsp}Hat and Customer |Red{nbsp}Hat |Red{nbsp}Hat
38+
|Cluster networking
39+
|Red Hat ^[1]^
40+
|Red Hat and Customer ^[2]^
41+
|Red Hat and Customer
42+
|Red Hat ^[1]^
43+
|Red Hat ^[1]^
4044

4145
|Virtual networking management |Red{nbsp}Hat and Customer |Red{nbsp}Hat and Customer |Red{nbsp}Hat and Customer |Red{nbsp}Hat and Customer |Red{nbsp}Hat and Customer
4246

@@ -54,4 +58,5 @@ If the `cluster-admin` role is added to a user, see the responsibilities and exc
5458
|Hardware/AWS global infrastructure |AWS |AWS |AWS |AWS |AWS
5559

5660
|===
57-
. The customer must configure their firewall to grant access to the required OpenShift and AWS domains and ports before the cluster is provisioned. For more information, see "AWS firewall prerequisites".
61+
1. If the customer chooses to use their own CNI plugin, the responsibility shifts to the customer.
62+
2. The customer must configure their firewall to grant access to the required OpenShift and AWS domains and ports before the cluster is provisioned. For more information, see "AWS firewall prerequisites".

rosa_hcp/rosa-hcp-cluster-no-cni.adoc

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="rosa-hcp-cluster-no-cli"]
3+
= {hcp-title} clusters without a CNI plugin
4+
include::_attributes/attributes-openshift-dedicated.adoc[]
5+
include::_attributes/common-attributes.adoc[]
6+
:context: rosa-hcp-cluster-no-cni
7+
8+
toc::[]
9+
10+
You can use your own Container Network Interface (CNI) plugin when creating a {hcp-title-first} cluster.
11+
You can create a {hcp-title} cluster without a CNI and install your own CNI plugin after cluster creation.
12+
13+
[NOTE]
14+
====
15+
For customers who choose to use their own CNI, the responsibility of CNI plugin support belongs to the customer in coordination with their chosen CNI vendor.
16+
====
17+
18+
[id="rosa-hcp-no-cni-cluster-creation"]
19+
== Creating a {hcp-title} cluster without a CNI plugin
20+
21+
=== Prerequisites
22+
* Ensure that you have completed the xref:../rosa_planning/rosa-sts-aws-prereqs.adoc[AWS prerequisites].
23+
24+
* Ensure that you have a configured xref:../rosa_hcp/rosa-hcp-sts-creating-a-cluster-quickly.adoc#rosa-hcp-creating-vpc[virtual private cloud] (VPC).
25+
26+
include::modules/rosa-hcp-creating-account-wide-sts-roles-and-policies.adoc[leveloffset=+2]
27+
28+
include::modules/rosa-sts-byo-oidc.adoc[leveloffset=+2]
29+
30+
include::modules/rosa-operator-config.adoc[leveloffset=+2]
31+
32+
[role="_additional-resources"]
33+
[id="additional-resources_rosa-hcp-operator-prefix-no-cni"]
34+
.Additional resources
35+
36+
* See xref:../rosa_architecture/rosa-sts-about-iam-resources.adoc#rosa-sts-about-operator-role-prefixes_rosa-sts-about-iam-resources[About custom Operator IAM role prefixes] for information on the Operator prefixes.
37+
38+
include::modules/rosa-hcp-sts-creating-a-cluster-cli-no-cni-plugin.adoc[leveloffset=+1]
39+
40+
[id="next-steps-2_{context}"]
41+
== Next steps
42+
43+
* Install your CNI plugin. The nodes will then change from the `not ready` to `ready` state.
44+
* Access your ROSA cluster with the xref:../rosa_install_access_delete_clusters/rosa-sts-accessing-cluster.adoc#rosa-sts-accessing-cluster[Accessing a ROSA cluster] documentation.

0 commit comments

Comments
 (0)