You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
data/aws/vpc: Only create subnet infrastucture for zones with Machine(Set)s
This commit updates our Terraform variables to include the worker
subnets, and then switches on that (and the master zones) in Terraform
to avoid creating subnet infrastructure (NAT gateways, routes, etc.)
in zones that have no Machine(Set)s. This helps address limit issues
in high-zone regions like us-east-1, as seen in the limits.md change.
Note that without a reduction in our default MachineSet creation, the
installer defaults will still not work on us-east-1 without a limit
bump.
The drawback is that users are now on the hook to provision their own
subnets in other zones if they decide that they want to grow into a
new zone as a day-2 Machine(Set) operation. For now, they'll have to
provide their own infrastructure for that, and our
user-provided-infrastructure docs should give them sufficient
grounding to do so. It's possible that in the future the machine-API
or other infrastructure operator could dynamically provision subnets
in zones that were not populated at install-time, but I can't hazard a
guess as to how likely that will be.
The HCL functions for combining the zone lists are documented in [1,2].
[1]: https://www.terraform.io/docs/configuration-0-11/interpolation.html#concat-list1-list2-
[2]: https://www.terraform.io/docs/configuration-0-11/interpolation.html#distinct-list-
description="The availability zones in which to create the masters. The length of this list must match master_count."
64
64
}
65
+
66
+
variable"aws_worker_availability_zones" {
67
+
type="list"
68
+
description="The availability zones to provision for workers. Worker instances are created by the machine-API operator, but this variable controls their supporting infrastructure (subnets, routing, etc.)."
Copy file name to clipboardExpand all lines: docs/user/aws/limits.md
+13-11Lines changed: 13 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,25 +23,27 @@ limit.
23
23
24
24
## Elastic Network Interfaces (ENI)
25
25
26
-
The default installation creates 21 + the number of availability zones of ENIs (e.g. us-east-1 = 21 + 6 = 27 ENIs).
26
+
The default installation creates 21 + the number of availability zones of ENIs (e.g. 21 + 3 = 24 ENIs for a three-zone cluster).
27
27
The default limit per region is 350. Additional ENIs are created for additional machines and elastic load balancers
28
28
created by cluster usage and deployed workloads. A service limit increase here may be required to satisfy the needs of
29
29
additional clusters and deployed workloads.
30
30
31
31
## Elastic IP (EIP)
32
32
33
-
For a single, default cluster, your account will have the needed capacity limits required. There is one exception,
34
-
"EC2-VPC Elastic IPs". The installer creates a public and private subnet for each
35
-
[availability zone within a region][availability-zones] to provision the cluster in a highly available configuration. In
36
-
each private subnet, a separate [NAT Gateway][nat-gateways] is created and requires a separate [elastic IP][elastic-ip].
37
-
The default limit of 5 is sufficient for most regions and a single cluster. For the us-east-1 region, a higher limit is
38
-
required. For multiple clusters, a higher limit is required. Please see [this map][az-map] for a current region map with
39
-
availability zone count. We recommend selecting regions with 3 or more availability zones.
33
+
By default, the installer distributes control-plane and compute machines across [all availability zones within a region][availability-zones] to provision the cluster in a highly available configuration.
34
+
Please see [this map][az-map] for a current region map with availability zone count.
35
+
We recommend selecting regions with 3 or more availability zones.
36
+
You can [provide an install-config](../overview.md#multiple-invocations) to [configure](customization.md) the installer to use specific zones to override that default.
40
37
41
-
### Example: Using N. Virginia (us-east-1)
38
+
The installer creates a public and private subnet for each configured availability zone.
39
+
In each private subnet, a separate [NAT Gateway][nat-gateways] is created and requires a separate [EC2-VPC Elastic IP (EIP)][elastic-ip].
40
+
The default limit of 5 is sufficient for a single cluster, unless you have configured your cluster to use more than five zones.
41
+
For multiple clusters, a higher limit will likely be required (and will certainly be required to support more than five clusters, even if they are each single-zone clusters).
42
42
43
-
To use N. Virginia (us-east-1) for a new cluster, please submit a limit increase for VPC Elastic IPs similar to the
44
-
following in the support dashboard (to create more than one cluster, a higher limit will be necessary):
43
+
### Example: Using North Virginia (us-east-1)
44
+
45
+
North Virginia (us-east-1) has six availablity zones, so a higher limit is required unless you configure your cluster to use fewer zones.
46
+
To support the default, all-zone installation, please submit a limit increase for VPC Elastic IPs similar to the following in the support dashboard (to create more than one cluster, a higher limit will be necessary):
45
47
46
48

0 commit comments