Skip to content

Commit f4fba4e

Browse files
authored
Merge pull request #108735 from EricPonvelle/OSD-Cloud-Experts_CQA
[OSDOCS-17885] Corrected Cloud Expert Tutorials for OSD for CQA jobs
2 parents 01f7355 + 392e2f4 commit f4fba4e

23 files changed

Lines changed: 352 additions & 224 deletions
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"schema_version": 1,
3+
"step": "writing",
4+
"ticket": "ROSA-17",
5+
"mode": "update-in-place",
6+
"files": [
7+
"/home/eponvell/Documents/openshift-docs/rosa_cluster_admin/rosa-nodes-managing-karpenter.adoc",
8+
"/home/eponvell/Documents/openshift-docs/modules/rosa-nodes-autonode-about.adoc",
9+
"/home/eponvell/Documents/openshift-docs/modules/rosa-nodes-autonode-managing-iam-setup.adoc",
10+
"/home/eponvell/Documents/openshift-docs/modules/rosa-nodes-autonode-managing-enable-cli.adoc",
11+
"/home/eponvell/Documents/openshift-docs/modules/rosa-nodes-autonode-managing-create-nodepool.adoc",
12+
"/home/eponvell/Documents/openshift-docs/modules/rosa-release-notes-Q2-2026.adoc"
13+
]
14+
}

_topic_maps/_topic_map_osd.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,6 @@ Name: Tutorials
8585
Dir: cloud_experts_osd_tutorials
8686
Distros: openshift-dedicated
8787
Topics:
88-
- Name: Tutorials overview
89-
File: osd_index
9088
- Name: Updating component routes with custom domains and TLS certificates
9189
File: cloud-experts-osd-update-component-routes
9290
- Name: Limit egress with Google Cloud Next Generation Firewall

cloud_experts_osd_tutorials/cloud-experts-osd-create-new-limit-egress.adoc

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,12 @@ include::_attributes/attributes-openshift-dedicated.adoc[]
88
toc::[]
99

1010
[role="_abstract"]
11-
Use this guide to implement egress restrictions for {product-title} on {GCP} by using {GCP}'s Next Generation Firewall (NGFW). NGFW is a fully distributed firewall service that allows fully qualified domain name (FQDN) objects in firewall policy rules. This is necessary for many of the external endpoints that {product-title} relies on.
11+
Implement egress restrictions for {product-title} on {GCP} by using Next Generation Firewall (NGFW), which allows fully qualified domain name (FQDN)-based firewall rules required for {product-title} external endpoints.
1212

13-
include::modules/cloud-experts-osd-limit-egress-ngfw-prereqs.adoc[leveloffset=+1]
13+
[IMPORTANT]
14+
====
15+
This content is authored by Red{nbsp}Hat experts but has not yet been tested on every supported configuration.
16+
====
1417

1518
include::modules/cloud-experts-osd-limit-egress-ngfw-setup-environ.adoc[leveloffset=+1]
1619

@@ -30,3 +33,20 @@ include::modules/cloud-experts-osd-limit-egress-ngfw-delete-osd-gcp-cluster.adoc
3033

3134
include::modules/cloud-experts-osd-limit-egress-ngfw-clean-resources.adoc[leveloffset=+1]
3235

36+
[role="_additional-resources"]
37+
[id="additional-resources_{context}"]
38+
== Additional resources
39+
40+
* link:https://cloud.google.com/compute/docs/regions-zones[Regions and zones ({GCP})]
41+
* link:https://cloud.google.com/vpc/docs/create-modify-vpc-networks[Create and manage VPC networks ({GCP})]
42+
* link:https://cloud.google.com/vpc/docs/subnets[Subnets overview ({GCP})]
43+
* link:https://cloud.google.com/firewall/docs/about-firewalls[Firewall overview ({GCP})]
44+
* link:https://cloud.google.com/firewall/docs/use-network-firewall-policies[Use global network firewall policies and rules ({GCP})]
45+
* link:https://cloud.google.com/nat/docs/overview[Cloud NAT overview ({GCP})]
46+
* link:https://cloud.google.com/network-connectivity/docs/router[Cloud Router overview ({GCP})]
47+
* link:https://cloud.google.com/vpc/docs/configure-private-google-access[Configure Private Google Access ({GCP})]
48+
* link:https://cloud.google.com/dns/docs/zones[DNS zones overview ({GCP})]
49+
* link:https://cloud.google.com/firewall/docs/firewalls[VPC firewall rules overview ({GCP})]
50+
* link:https://docs.redhat.com/en/documentation/openshift_dedicated/4/html/planning_your_environment/gcp-ccs#osd-gcp-psc-firewall-prerequisites_gcp-ccs[Firewall prerequisites for {GCP}]
51+
* link:https://cloud.google.com/firewall/docs/use-network-firewall-policies[Use global network firewall policies and rules]
52+
* link:https://cloud.google.com/sdk/gcloud/reference[`gcloud` command-line tool reference ({GCP})]

cloud_experts_osd_tutorials/cloud-experts-osd-update-component-routes.adoc

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,34 @@ include::_attributes/attributes-openshift-dedicated.adoc[]
88
toc::[]
99

1010
[role="_abstract"]
11-
This guide demonstrates how to modify the hostname and TLS certificate of the Web console, OAuth server, and Downloads component routes in {product-title} on {GCP} version 4.14 and above.{fn-supported-versions}
12-
13-
The changes that we make to the component routes{fn-term-component-routes} in this guide are described in greater detail in the link:https://docs.openshift.com/container-platform/latest/authentication/configuring-internal-oauth.html#customizing-the-oauth-server-url_configuring-internal-oauth[Customing the internal OAuth server URL], link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/web_console/customizing-web-console#customizing-the-console-route_customizing-web-console[Customing the console route], and link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/web_console/customizing-web-console#customizing-the-download-route_customizing-web-console[Customing the download route] {product-title} documentation.
14-
15-
[id="prerequisites_{context}"]
16-
== Prerequisites
17-
* OCM CLI (`ocm`) version 1.0.5 or higher
18-
* gcloud CLI (`gcloud`)
19-
* An {product-title} on {GCP} cluster version 4.14 or higher
20-
// +
21-
// [NOTE]
22-
// ====
23-
// ROSA with HCP is not supported at this time.
24-
// ====
25-
// +
26-
* {oc-first}
27-
* `jq` CLI
28-
* Access to the cluster as a user with the `cluster-admin` role.
29-
* OpenSSL (for generating the demonstration SSL/TLS certificates)
11+
Change the hostname and Transport Layer Security (TLS) certificate of the web console, OAuth server, and Downloads component routes to use custom domains that align with your organization's branding and security requirements.
12+
13+
[IMPORTANT]
14+
====
15+
Red Hat experts authored this content, but it has not yet been tested on every supported configuration.
16+
====
3017

3118
include::modules/cloud-experts-osd-update-component-routes-environment-setup.adoc[leveloffset=+1]
19+
3220
include::modules/cloud-experts-osd-update-component-routes-find-current-component-routes.adoc[leveloffset=+1]
21+
3322
include::modules/cloud-experts-osd-update-component-routes-create-tls-certificates.adoc[leveloffset=+1]
23+
3424
include::modules/cloud-experts-osd-update-component-routes-add-certificates-as-secrets.adoc[leveloffset=+1]
25+
3526
include::modules/cloud-experts-osd-update-component-routes-find-lb-hostname.adoc[leveloffset=+1]
36-
include::modules/cloud-experts-osd-update-component-routes-add-component-routes-to-dns.adoc[leveloffset=+1]
27+
3728
include::modules/cloud-experts-osd-update-component-routes-tls-using-ocm-cli.adoc[leveloffset=+1]
38-
include::modules/cloud-experts-osd-update-component-routes-reset-component-routes-to-default.adoc[leveloffset=+1]
29+
30+
include::modules/cloud-experts-osd-update-component-routes-reset-component-routes-to-default.adoc[leveloffset=+1]
31+
32+
[role="_additional-resources"]
33+
[id="additional-resources_{context}"]
34+
== Additional resources
35+
36+
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/authentication_and_authorization/configuring-internal-oauth#customizing-the-oauth-server-url_configuring-internal-oauth[Customizing the internal OAuth server URL]
37+
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/nodes/working-with-pods#nodes-pods-secrets-creating_nodes-pods-secrets[Creating secrets]
38+
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/web_console/customizing-web-console#customizing-the-console-route_customizing-web-console[Customizing the console route]
39+
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/web_console/customizing-web-console#customizing-the-download-route_customizing-web-console[Customizing the download route]
40+
* link:https://www.openssl.org/docs/manmaster/man1/openssl-req.html[OpenSSL req command documentation]
41+
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking_operators/index#nw-ingress-controller-configuration-parameters_configuring-ingress[Ingress controller configuration parameters]

cloud_experts_osd_tutorials/osd_index.adoc

Lines changed: 0 additions & 14 deletions
This file was deleted.

modules/cloud-experts-osd-limit-egress-ngfw-clean-resources.adoc

Lines changed: 33 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,89 +3,75 @@
33
// * cloud_experts_osd_tutorials/cloud-experts-osd-limit-egress-ngfw.adoc
44

55
:_mod-docs-content-type: PROCEDURE
6-
[id="cloud-experts-osd-limit-egress-ngfw-clean-resource_{context}"]
6+
[id="cloud-experts-osd-limit-egress-ngfw-clean-resources_{context}"]
77
= Cleaning up resources
88

99
[role="_abstract"]
10-
To prevent ongoing charges, after you delete your cluster you must manually delete the {GCP} networking infrastructure you created as part of this tutorial. Deleting the cluster will not automatically remove these underlying resources. You can clean up these resources using a combination of gcloud CLI commands and actions within the {GCP} console.
11-
12-
Before you begin the process of cleaning up the resources you created for this tutorial, run the following commands and complete any prompts.
13-
10+
Delete the {GCP} networking infrastructure after deleting your cluster to prevent ongoing charges. The cluster deletion does not automatically remove virtual private cloud (VPC) networks, subnets, firewall policies, or domain name system (DNS) zones.
1411

1512
.Procedure
16-
. To authenticate your identity run the following command:
13+
. Authenticate by running the following command:
1714
+
1815
[source,terminal]
1916
----
2017
$ gcloud init
2118
----
2219
+
23-
. To log in to your {GCP} account, run the following command:
20+
. Log in to your {GCP} account by running the following command:
2421
+
2522
[source,terminal]
2623
----
2724
$ gcloud auth application-default login
2825
----
2926
+
30-
. To log in to the {cluster-manager} CLI tool, run the following command:
27+
. Log in to the {cluster-manager} CLI tool by running the following command:
3128
+
3229
[source,terminal]
3330
----
3431
$ ocm login --use-auth-code
3532
----
3633
+
37-
You are now ready to clean up the resources you created as part of this tutorial. To respect resource dependencies, delete them in the reverse order of their creation.
34+
You can now clean up the resources you created as part of this tutorial. To respect resource dependencies, delete them in the reverse order of their creation.
3835

39-
. Delete the firewall policy's association with the VPC by running the following command:
36+
. Delete the association of the firewall policy with the VPC by running the following command:
4037
+
4138
[source,terminal]
4239
----
4340
$ gcloud compute network-firewall-policies associations delete \
44-
--firewall-policy=${prefix} \
45-
--network=${prefix}-vpc \
46-
--global-firewall-policy
41+
--name network-${prefix}-vpc \
42+
--firewall-policy=${prefix} \
43+
--global-firewall-policy \
44+
--project=${project_id}
4745
----
4846
+
4947
. Delete the global network firewall policy by running the following command:
5048
+
5149
[source,terminal]
5250
----
53-
$ gcloud compute network-firewall-policies delete ${prefix} --global
54-
----
55-
+
56-
. A managed DNS zone in {GCP} cannot be deleted until all user-defined record sets are removed. Define variables to target the specific {GCP} project and the managed DNS zone being cleaned up by running the following command:
57-
+
58-
[source,terminal]
59-
----
60-
$ cat /tmp/delete_records.sh
61-
PROJECT_ID=<your-project-id>
62-
ZONE_NAME=<your-managed-zone-name>
51+
$ gcloud compute network-firewall-policies delete ${prefix} --global --project=${project_id}
6352
----
6453
+
65-
. List the record sets that are included within the Private DNS zone by running the following command:
54+
. List and delete all user-defined DNS records from the Private DNS zone:
6655
+
6756
[source,terminal]
6857
----
69-
$ gcloud \
70-
dns record-sets list \
71-
--project=$PROJECT_ID \
72-
--zone=$ZONE_NAME \
58+
$ gcloud dns record-sets list \
59+
--project=${project_id} \
60+
--zone=${prefix}-googleapis \
7361
--filter="type!=NS AND type!=SOA" \
74-
--format="value(name,type)" | while read name type;
75-
----
76-
+
77-
. Delete the record sets that are included within that Private DNS Zone by running the following command:
78-
+
79-
[source,terminal]
80-
----
81-
$ gcloud --project=$PROJECT_ID dns record-sets delete "$name" --zone=$ZONE_NAME --type="$type"
62+
--format="value(name,type)" | while read name type; do
63+
gcloud dns record-sets delete "$name" \
64+
--project=${project_id} \
65+
--zone=${prefix}-googleapis \
66+
--type="$type"
67+
done
8268
----
8369
+
8470
. Delete the Private DNS Zone by running the following command:
8571
+
8672
[source,terminal]
8773
----
88-
$ gcloud dns managed-zones delete ${prefix}-googleapis
74+
$ gcloud dns managed-zones delete ${prefix}-googleapis --project=${project_id}
8975
----
9076
+
9177
. Delete the Cloud NAT gateway:
@@ -94,50 +80,51 @@ $ gcloud dns managed-zones delete ${prefix}-googleapis
9480
----
9581
$ gcloud compute routers nats delete ${prefix}-cloudnat-${region} \
9682
--router=${prefix}-router \
97-
--router-region=${region}
83+
--router-region=${region} \
84+
--project=${project_id}
9885
----
9986
+
10087
. Delete the Cloud Router by running the following command:
10188
+
10289
[source,terminal]
10390
----
104-
$ gcloud compute routers delete ${prefix}-router --region=${region}
91+
$ gcloud compute routers delete ${prefix}-router --region=${region} --project=${project_id}
10592
----
10693
+
10794
. Delete the reserved IP address by running the following command:
10895
+
10996
[source,terminal]
11097
+
11198
----
112-
$ gcloud compute addresses delete ${prefix}-${region}-cloudnatip --region=${region}
99+
$ gcloud compute addresses delete ${prefix}-${region}-cloudnatip --region=${region} --project=${project_id}
113100
----
114101
+
115102
. Delete the worker subnet by running the following command:
116103
+
117104
[source,terminal]
118105
+
119106
----
120-
$ gcloud compute networks subnets delete ${prefix}-worker --region=${region}
107+
$ gcloud compute networks subnets delete ${prefix}-worker --region=${region} --project=${project_id}
121108
----
122109
+
123110
. Delete the control plane subnet by running the following command:
124111
+
125112
[source,terminal]
126113
+
127114
----
128-
$ gcloud compute networks subnets delete ${prefix}-control-plane --region=${region}
115+
$ gcloud compute networks subnets delete ${prefix}-control-plane --region=${region} --project=${project_id}
129116
----
130117
+
131-
. Delete the PSC subnet by running the following command:
118+
. Delete the Private Service Connect (PSC) subnet by running the following command:
132119
+
133120
[source,terminal]
134121
----
135-
$ gcloud compute networks subnets delete ${prefix}-psc --region=${region}
122+
$ gcloud compute networks subnets delete ${prefix}-psc --region=${region} --project=${project_id}
136123
----
137124
+
138125
. Delete the VPC by running the following command:
139126
+
140127
[source,terminal]
141128
----
142-
$ gcloud compute networks delete ${prefix}-vpc
143-
----
129+
$ gcloud compute networks delete ${prefix}-vpc --project=${project_id}
130+
----

modules/cloud-experts-osd-limit-egress-ngfw-create-a-cloud-router.adoc

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@
44

55
:_mod-docs-content-type: PROCEDURE
66
[id="cloud-experts-osd-limit-egress-ngfw-create-a-cloud-router_{context}"]
7-
= Creating a Cloud Router and a Cloud Network Address Translation gateway
7+
= Creating a Cloud Router and Cloud network address translation
88

99
[role="_abstract"]
10-
The Network Address Translation (NAT) gateway enables internet connectivity for your private VMs by masquerading all their traffic under a single public IP address. As the designated exit point, it translates their internal IPs for any outbound requests, such as fetching updates. This process effectively grants them access to the internet without ever exposing their private addresses.
10+
Create a Cloud Router and Cloud network address translation (NAT). Private VMs can use the internet while their private IP addresses stay hidden.
1111

1212
.Procedure
1313
. Reserve an IP address for Cloud NAT by running the following command:
1414
+
15-
1615
[source,terminal]
1716
----
1817
$ gcloud compute addresses create ${prefix}-${region}-cloudnatip \
@@ -36,4 +35,15 @@ $ gcloud compute routers nats create ${prefix}-cloudnat-${region} \
3635
--router=${prefix}-router --router-region ${region} \
3736
--nat-all-subnet-ip-ranges \
3837
--nat-external-ip-pool=${prefix}-${region}-cloudnatip
39-
----
38+
----
39+
40+
.Verification
41+
42+
* Check that the Cloud Router and NAT gateway exist by running the following command:
43+
+
44+
[source,terminal]
45+
----
46+
$ gcloud compute routers describe ${prefix}-router --region=${region}
47+
----
48+
+
49+
The output lists the router and the NAT gateway you created.

modules/cloud-experts-osd-limit-egress-ngfw-create-firewall-rules.adoc

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
= Creating the firewall rules
88

99
[role="_abstract"]
10-
You need to create some firewall rules to allow your cluster to access the Web.
10+
Create firewall rules for egress to private IP ranges and to the {product-title} domains listed in this procedure. Egress to other external destinations does not match these rules and is not permitted.
1111

1212
.Procedure
13-
. Create a blanket allow rule for private IP (RFC 1918) address space by running the following command:
13+
. Create a blanket allow rule for private IP (Request for Comments (RFC) 1918) address space by running the following command:
1414
+
1515
[source,terminal]
1616
----
@@ -27,6 +27,25 @@ $ gcloud compute network-firewall-policies rules create 500 \
2727
+
2828
. Create an allow rule for HTTPS (tcp/443) domains required for {product-title} by running the following command:
2929
+
30+
[NOTE]
31+
====
32+
If you receive an error "Cannot have rules with the same priorities", the rule already exists. You can verify it with:
33+
34+
[source,bash]
35+
----
36+
$ gcloud compute network-firewall-policies rules describe 500 --firewall-policy=${prefix} --global-firewall-policy
37+
$ gcloud compute network-firewall-policies rules describe 600 --firewall-policy=${prefix} --global-firewall-policy
38+
----
39+
40+
To re-create the rules, first delete them:
41+
42+
[source,bash]
43+
----
44+
$ gcloud compute network-firewall-policies rules delete 500 --firewall-policy=${prefix} --global-firewall-policy
45+
$ gcloud compute network-firewall-policies rules delete 600 --firewall-policy=${prefix} --global-firewall-policy
46+
----
47+
====
48+
+
3049
[source,terminal]
3150
----
3251
$ gcloud compute network-firewall-policies rules create 600 \
@@ -42,5 +61,5 @@ $ gcloud compute network-firewall-policies rules create 600 \
4261
+
4362
[IMPORTANT]
4463
====
45-
If there is not a matching rule that allows the traffic, it will be blocked by the firewall. To allow access to other resources, such as internal networks or other external endpoints, create additional rules with a priority of less than 1000. For more information on how to create firewall rules, see link:https://cloud.google.com/firewall/docs/use-network-firewall-policies[Use global network firewall policies and rules].
64+
The firewall blocks any traffic if you did not create any matching rules. To allow access to other resources, such as internal networks or other external endpoints, create additional rules with a priority of less than 1000. For more information on how to create firewall rules, see the _Additional resources_.
4665
====

0 commit comments

Comments
 (0)