Skip to content

Commit 161bfda

Browse files
authored
Merge pull request #60771 from dfitzmau/OSDOCS-5239
/lgtm, merging OSDOCS-5239: Documented AWS LZ IP auto creation of subnets
2 parents cf1737a + 882c2c9 commit 161bfda

17 files changed

+321
-237
lines changed

_topic_maps/_topic_map.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ Topics:
179179
File: installing-aws-china
180180
- Name: Installing a cluster on AWS using CloudFormation templates
181181
File: installing-aws-user-infra
182-
- Name: Installing a cluster using AWS Local Zones
182+
- Name: Installing a cluster on AWS with worker nodes on AWS Local Zones
183183
File: installing-aws-localzone
184184
- Name: Installing a cluster on AWS in a restricted network with user-provisioned infrastructure
185185
File: installing-restricted-networks-aws

installing/installing_aws/installing-aws-localzone.adoc

Lines changed: 102 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,18 @@
11
:_content-type: ASSEMBLY
22
[id="installing-aws-localzone"]
3-
= Installing a cluster using AWS Local Zones
3+
= Installing a cluster on AWS with worker nodes on AWS Local Zones
44
include::_attributes/common-attributes.adoc[]
55
:context: installing-aws-localzone
66

77
toc::[]
88

9-
In {product-title} version {product-version}, you can install a cluster on Amazon Web Services (AWS) into an existing VPC, extending workers to the edge of the Cloud Infrastructure using AWS Local Zones.
9+
You can quickly install an {product-title} cluster in Amazon Web Services (AWS) Local Zones by setting the zone names in the edge compute pool of the `install-config.yaml` file, or install a cluster in an existing VPC that lists Local Zone subnets.
1010

11-
After you create an Amazon Web Service (AWS) Local Zone environment, and you deploy your cluster, you can use edge worker nodes to create user workloads in Local Zone subnets.
12-
13-
AWS Local Zones are a type of infrastructure that place Cloud Resources close to the metropolitan regions. For more information, see the link:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-local-zones[AWS Local Zones Documentation].
14-
15-
{product-title} can be installed in existing VPCs with Local Zone subnets. The Local Zone subnets can be used to extend the regular workers' nodes to the edge networks. The edge worker nodes are dedicated to running user workloads.
16-
17-
One way to create the VPC and subnets is to use the provided CloudFormation templates. You can modify the templates to customize your infrastructure or use the information that they contain to create AWS objects according to your company's policies.
11+
AWS Local Zones are a type of infrastructure that place Cloud Resources close to metropolitan regions. For more information, see the link:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-local-zones[AWS Local Zones Documentation].
1812

1913
[IMPORTANT]
2014
====
21-
The steps for performing an installer-provisioned infrastructure installation are provided as an example only. Installing a cluster with VPC you provide requires knowledge of the cloud provider and the installation process of {product-title}. The CloudFormation templates are provided to assist in completing these steps or to help model your own. You are also free to create the required resources through other methods; the templates are just an example.
15+
The steps for performing an installer-provisioned infrastructure installation are provided for example purposes only. Installing a cluster in an existing VPC requires that you have knowledge of the cloud provider and the installation process of {product-title}. You can use a CloudFormation template to assist you with completing these steps or to help model your own cluster installation. Instead of using the CloudFormation template to create resources, you can decide to use other methods for generating these resources.
2216
====
2317

2418
== Prerequisites
@@ -59,38 +53,65 @@ Be sure to also review this site list if you are configuring a proxy.
5953
}
6054
----
6155

56+
// Cluster limitations in AWS Local Zones
6257
include::modules/cluster-limitations-local-zone.adoc[leveloffset=+1]
6358

6459
[role="_additional-resources"]
6560
.Additional resources
6661

6762
* xref:../../storage/understanding-persistent-storage.adoc#pvc-storage-class_understanding-persistent-storage[Storage classes]
6863

64+
* xref:../../networking/ingress-sharding.html#nw-ingress-sharding_ingress-sharding[Ingress Controller sharding]
65+
66+
// Internet access for OpenShift Container Platform
6967
include::modules/cluster-entitlements.adoc[leveloffset=+1]
7068

69+
// Obtaining an AWS Marketplace image
7170
include::modules/installation-aws-marketplace-subscribe.adoc[leveloffset=+1]
7271

73-
include::modules/installation-creating-aws-vpc-localzone.adoc[leveloffset=+1]
72+
//Installing the OpenShift CLI by downloading the binary: Moved up to precede `ccoctl` steps, which require the use of `oc`
73+
include::modules/cli-installing-cli.adoc[leveloffset=+1]
7474

75-
include::modules/installation-cloudformation-vpc-localzone.adoc[leveloffset=+2]
76-
include::modules/installation-aws-security-groups.adoc[leveloffset=+2]
75+
== Preparing for the installation
7776

78-
include::modules/installation-aws-add-local-zone-locations.adoc[leveloffset=+1]
77+
Before you extend nodes to local zones, you must prepare certain resources for the cluster installation environment.
7978

80-
include::modules/installation-creating-aws-subnet-localzone.adoc[leveloffset=+1]
79+
// Obtaining the installation program
80+
include::modules/installation-obtaining-installer.adoc[leveloffset=+2]
8181

82-
include::modules/installation-cloudformation-subnet-localzone.adoc[leveloffset=+2]
82+
// Generating a key pair for cluster node SSH access
83+
include::modules/ssh-agent-using.adoc[leveloffset=+2]
84+
85+
// Creating the installation files for AWS
86+
include::modules/installation-user-infra-generate.adoc[leveloffset=+2]
87+
88+
// Minimum resource requirements for cluster installation
89+
include::modules/installation-minimum-resource-requirements.adoc[leveloffset=+2]
90+
91+
// Tested instance types for AWS
92+
include::modules/installation-aws-tested-machine-types.adoc[leveloffset=+2]
8393

8494
[role="_additional-resources"]
8595
.Additional resources
8696

87-
* You can view details about the CloudFormation stacks that you create by navigating to the link:https://console.aws.amazon.com/cloudformation/[AWS CloudFormation console].
97+
* See link:https://aws.amazon.com/about-aws/global-infrastructure/localzones/features/[AWS Local Zones features] in the AWS documentation for more information about AWS Local Zones and the supported instances types and services.
8898

89-
include::modules/installation-obtaining-installer.adoc[leveloffset=+1]
99+
// Creating the installation configuration file
100+
include::modules/installation-generate-aws-user-infra-install-config.adoc[leveloffset=+2]
101+
// Suggest to standarize edge-pool's specific files with same prefixes, like: machine-edge-pool-[...] or compute-edge-pool-[...] (which is more compatible with install-config.yaml/compute)
90102

91-
//Installing the OpenShift CLI by downloading the binary: Moved up to precede `ccoctl` steps, which require the use of `oc`
92-
include::modules/cli-installing-cli.adoc[leveloffset=+1]
103+
// Edge compute pools and AWS Local Zones
104+
include::modules/edge-machine-pools-aws-local-zones.adoc[leveloffset=+2]
105+
106+
[role="_additional-resources"]
107+
.Additional resources
93108

109+
* xref:../../networking/changing-cluster-network-mtu.adoc#mtu-value-selection_changing-cluster-network-mtu[Changing the MTU for the cluster network]
110+
* xref:../../networking/changing-cluster-network-mtu.adoc#nw-ovn-ipsec-enable_configuring-ipsec-ovn[Enabling IPsec encryption]
111+
* xref:../../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations-about_nodes-scheduler-taints-tolerations[Understanding taints and tolerations]
112+
113+
////
114+
// Revisit the need for the link to this section based on testing outcome of 4.15 Wavelenght Zone testing work that also assesses Manual STS, Manual long-term, and Mint routes.
94115
//Supertask: Configuring an AWS cluster to use short-term credentials
95116
[id="installing-aws-with-short-term-creds_{context}"]
96117
== Optional: Configuring an AWS cluster to use short-term credentials
@@ -120,36 +141,71 @@ include::modules/cco-ccoctl-creating-at-once.adoc[leveloffset=+3]
120141
121142
//Task part 2b: Creating the required AWS resources individually
122143
include::modules/cco-ccoctl-creating-individually.adoc[leveloffset=+3]
144+
////
123145

124-
include::modules/ssh-agent-using.adoc[leveloffset=+1]
146+
// Opting in to AWS Local Zones
147+
include::modules/installation-aws-add-local-zone-locations.adoc[leveloffset=+1]
125148

126-
include::modules/installation-user-infra-generate.adoc[leveloffset=+1]
127-
include::modules/installation-minimum-resource-requirements.adoc[leveloffset=+2]
149+
// Cluster installation options for an AWS Local Zone environment
150+
include::modules/aws-cluster-installation-options-aws-lzs.adoc[leveloffset=+1]
128151

129-
[role="_additional-resources"]
130-
.Additional resources
152+
.Next steps
131153

132-
* xref:../../scalability_and_performance/optimization/optimizing-storage.adoc#optimizing-storage[Optimizing storage]
154+
Choose one of the following options to install an {product-title} cluster in an AWS Local Zones environment:
133155

134-
include::modules/installation-aws-tested-machine-types.adoc[leveloffset=+2]
156+
* xref:../../installing/installing_aws/installing-aws-localzone.adoc#installation-cluster-quickly-extend-workers_installing-aws-localzone[Installing a cluster quickly in AWS Local Zones]
157+
* xref:../../installing/installing_aws/installing-aws-localzone.adoc#creating-aws-local-zone-environment-existing_installing-aws-localzone[Installing a cluster in an existing VPC with defined Local Zone subnets]
158+
159+
// Installing a cluster quickly in AWS Local Zones
160+
include::modules/installation-cluster-quickly-extend-workers.adoc[leveloffset=+1]
161+
162+
// Modifying an installation configuration to use AWS Local Zones
163+
include::modules/install-creating-install-config-aws-local-zones.adoc[leveloffset=+2]
135164

136165
[role="_additional-resources"]
137166
.Additional resources
138167

139-
* See link:https://aws.amazon.com/about-aws/global-infrastructure/localzones/features/[AWS Local Zones features] in the AWS documentation for more information about AWS Local Zones and the supported instances types and services.
168+
* xref:../../installing/installing_aws/installing-aws-localzone.adoc_installing-aws-localzone[Creating the installation configuration file]
140169

141-
include::modules/installation-generate-aws-user-infra-install-config.adoc[leveloffset=+2]
142-
// Suggest to standarize edge-pool's specific files with same prefixes, like: machine-edge-pool-[...] or compute-edge-pool-[...] (which is more compatible with install-config.yaml/compute)
143-
include::modules/machines-edge-machine-pool.adoc[leveloffset=+2]
144-
include::modules/edge-machine-pools-aws-local-zones.adoc[leveloffset=+3]
170+
* xref:../../installing/installing_aws/installing-aws-localzone.adoc#cluster-limitations-local-zone_installing-aws-localzone[Cluster limitations in AWS Local Zones]
171+
172+
.Next steps
173+
* xref:../../installing/installing_aws/installing-aws-localzone.adoc#installation-launching-installer_installing-aws-localzone[Deploying the cluster]
174+
175+
[id="creating-aws-local-zone-environment-existing_{context}"]
176+
== Installing a cluster in an existing VPC that has Local Zone subnets
177+
178+
You can install a cluster into an existing Amazon Virtual Private Cloud (VPC) on Amazon Web Services (AWS). The installation program provisions the rest of the required infrastructure, which you can further customize. To customize the installation, modify parameters in the `install-config.yaml` file before you install the cluster.
179+
180+
Installing a cluster on AWS into an existing VPC requires extending workers to the edge of the Cloud Infrastructure by using AWS Local Zones.
181+
182+
Local Zone subnets extend regular workers' nodes to edge networks. Each edge worker nodes runs a user workload. After you create an Amazon Web Service (AWS) Local Zone environment, and you deploy your cluster, you can use edge worker nodes to create user workloads in Local Zone subnets.
183+
184+
You can use a provided CloudFormation template to create the VPC and public subnets. Additionally, you can modify a template to customize your infrastructure or use the information that they contain to create AWS objects according to your company's policies.
185+
186+
[NOTE]
187+
====
188+
If you want to create private subnets, you must either modify the provided CloudFormation template or create your own template.
189+
====
190+
191+
// Creating a VPC in AWS
192+
include::modules/installation-creating-aws-vpc-localzone.adoc[leveloffset=+2]
193+
// Creating a subnet in AWS Local Zones
194+
include::modules/installation-creating-aws-subnet-localzone.adoc[leveloffset=+2]
195+
// CloudFormation template for the VPC
196+
include::modules/installation-cloudformation-vpc-localzone.adoc[leveloffset=+2]
197+
// AWS security groups
198+
include::modules/installation-aws-security-groups.adoc[leveloffset=+2]
199+
// CloududFormation template for the subnet that uses AWS Local Zones
200+
include::modules/installation-cloudformation-subnet-localzone.adoc[leveloffset=+2]
145201

146202
[role="_additional-resources"]
147203
.Additional resources
148204

149-
* xref:../../networking/changing-cluster-network-mtu.adoc#mtu-value-selection_changing-cluster-network-mtu[Changing the MTU for the cluster network]
150-
* xref:../../networking/changing-cluster-network-mtu.adoc#nw-ovn-ipsec-enable_configuring-ipsec-ovn[Enabling IPsec encryption]
205+
* You can view details about the CloudFormation stacks that you create by navigating to the link:https://console.aws.amazon.com/cloudformation/[AWS CloudFormation console].
151206

152-
include::modules/install-creating-install-config-aws-local-zones.adoc[leveloffset=+2]
207+
// Modifying an installation configuration file to use AWS Local Zones subnets
208+
include::modules/install-creating-install-config-aws-local-zones-subnets.adoc[leveloffset=+2]
153209

154210
[role="_additional-resources"]
155211
.Additional resources
@@ -162,6 +218,8 @@ include::modules/install-creating-install-config-aws-local-zones.adoc[leveloffse
162218
// Verify removal due to automation.
163219
// include::modules/installation-localzone-generate-k8s-manifest.adoc[leveloffset=+2]
164220

221+
////
222+
// Revisit the need for the link to this section based on testing outcome of 4.15 Wavelenght Zone testing work that also assesses Manual STS, Manual long-term, and Mint routes.
165223
[id="installing-aws-manual-modes_{context}"]
166224
== Alternatives to storing administrator-level secrets in the kube-system project
167225
@@ -176,23 +234,29 @@ include::modules/cco-ccoctl-install-creating-manifests.adoc[leveloffset=+2]
176234
177235
//Manually creating IAM
178236
include::modules/manually-create-identity-access-management.adoc[leveloffset=+2]
237+
////
179238

239+
// Deploying the cluster
180240
include::modules/installation-launching-installer.adoc[leveloffset=+1]
181241

182242
.Next steps
183243
* xref:../../post_installation_configuration/cluster-tasks.adoc#installation-extend-edge-nodes-aws-local-zones_post-install-cluster-tasks[Creating user workloads in AWS Local Zones]
184244

245+
// Logging in to the cluster by using the CLI
185246
include::modules/cli-logging-in-kubeadmin.adoc[leveloffset=+1]
186247

248+
// Logging in to the cluster by using the web console
187249
include::modules/logging-in-by-using-the-web-console.adoc[leveloffset=+1]
188250

189251
[role="_additional-resources"]
190252
.Additional resources
191253

192254
* See xref:../../web_console/web-console.adoc#web-console[Accessing the web console] for more details about accessing and understanding the {product-title} web console.
193255

256+
// Verifying nodes that were created with edge compute pool
194257
include::modules/machine-edge-pool-review-nodes.adoc[leveloffset=+1]
195258

259+
// Telemetry access for OpenShift Container Platform
196260
include::modules/cluster-telemetry.adoc[leveloffset=+1]
197261

198262
[role="_additional-resources"]
@@ -207,4 +271,7 @@ include::modules/cluster-telemetry.adoc[leveloffset=+1]
207271
* xref:../../installing/validating-an-installation.adoc#validating-an-installation[Validating an installation].
208272
* xref:../../post_installation_configuration/cluster-tasks.adoc#available_cluster_customizations[Customize your cluster].
209273
* If necessary, you can xref:../../support/remote_health_monitoring/opting-out-of-remote-health-reporting.adoc#opting-out-remote-health-reporting_opting-out-remote-health-reporting[opt out of remote health reporting].
274+
////
275+
// Revisit the need for the link to this section based on testing outcome of 4.15 Wavelenght Zone testing work that also assesses Manual STS, Manual long-term, and Mint routes.
210276
* If necessary, you can xref:../../post_installation_configuration/cluster-tasks.adoc#manually-removing-cloud-creds_post-install-cluster-tasks[remove cloud provider credentials].
277+
////
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * installing/installing_aws/installing-aws-localzone.adoc
4+
5+
:_content-type: CONCEPT
6+
[id="aws-cluster-installation-options-aws-lzs_{context}"]
7+
= Cluster installation options for an AWS Local Zones environment
8+
9+
To install an {product-title} cluster in an AWS Local Zones environment on AWS infrastructure, choose one of the following installation options:
10+
11+
* Installing a cluster to quickly extend workers to edge compute pools, where the installation program automatically creates resources for the {product-title} cluster.
12+
13+
* Installing a cluster on AWS into an existing VPC, where you must add Local Zone subnets to the `install-config.yaml` file.

modules/cluster-limitations-local-zone.adoc

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,15 @@ Some limitations exist when you attempt to deploy a cluster with a default insta
1414
The following list details limitations when deploying a cluster in AWS Local Zones:
1515
1616
- The Maximum Transmission Unit (MTU) between an Amazon EC2 instance in a Local Zone and an Amazon EC2 instance in the Region is `1300`. This causes the cluster-wide network MTU to change according to the network plugin that is used on the deployment.
17-
- Network resources such as Network Load Balancer (NLB), Classic Load Balancer, and Network Address Translation (NAT) Gateways are not supported in AWS Local Zones.
17+
- Network resources such as Network Load Balancer (NLB), Classic Load Balancer, and Network Address Translation (NAT) Gateways are not globally supported in AWS Local Zones.
1818
- For an {product-title} cluster on AWS, the AWS Elastic Block Storage (EBS) `gp3` type volume is the default for node volumes and the default for the storage class. This volume type is not globally available on Local Zone locations. By default, the nodes running in Local Zones are deployed with the `gp2` EBS volume. The `gp2-csi` `StorageClass` must be set when creating workloads on Local Zone nodes.
1919
====
20+
21+
If you want the installation program to automatically create Local Zone subnets for your {product-title} cluster, specific configuration limitations apply with this method.
22+
23+
[IMPORTANT]
24+
====
25+
The following configuration limitation applies when you set the installation program to automatically create subnets for your {product-title} cluster:
26+
27+
- The private subnets for an AWS Local Zone associate with the route table of the parent zone, so that each private subnet can route egress traffic to the internet. If this route table does not exist during cluster installation, the private subnet associates with the first available private route table in the Virtual Private Cloud (VPC). This approach is valid only for AWS Local Zones subnets in an {product-title} cluster.
28+
====

0 commit comments

Comments
 (0)