Skip to content

Commit 1b0ac83

Browse files
authored
feat: Add support for zonal shift (#3195)
1 parent 7696332 commit 1b0ac83

File tree

23 files changed

+49
-30
lines changed

23 files changed

+49
-30
lines changed

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,15 +175,15 @@ We are grateful to the community for contributing bugfixes and improvements! Ple
175175
| Name | Version |
176176
|------|---------|
177177
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
178-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
178+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
179179
| <a name="requirement_time"></a> [time](#requirement\_time) | >= 0.9 |
180180
| <a name="requirement_tls"></a> [tls](#requirement\_tls) | >= 3.0 |
181181

182182
## Providers
183183

184184
| Name | Version |
185185
|------|---------|
186-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
186+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
187187
| <a name="provider_time"></a> [time](#provider\_time) | >= 0.9 |
188188
| <a name="provider_tls"></a> [tls](#provider\_tls) | >= 3.0 |
189189

@@ -268,6 +268,7 @@ We are grateful to the community for contributing bugfixes and improvements! Ple
268268
| <a name="input_cluster_timeouts"></a> [cluster\_timeouts](#input\_cluster\_timeouts) | Create, update, and delete timeout configurations for the cluster | `map(string)` | `{}` | no |
269269
| <a name="input_cluster_upgrade_policy"></a> [cluster\_upgrade\_policy](#input\_cluster\_upgrade\_policy) | Configuration block for the cluster upgrade policy | `any` | `{}` | no |
270270
| <a name="input_cluster_version"></a> [cluster\_version](#input\_cluster\_version) | Kubernetes `<major>.<minor>` version to use for the EKS cluster (i.e.: `1.27`) | `string` | `null` | no |
271+
| <a name="input_cluster_zonal_shift_config"></a> [cluster\_zonal\_shift\_config](#input\_cluster\_zonal\_shift\_config) | Configuration block for the cluster zonal shift | `any` | `{}` | no |
271272
| <a name="input_control_plane_subnet_ids"></a> [control\_plane\_subnet\_ids](#input\_control\_plane\_subnet\_ids) | A list of subnet IDs where the EKS cluster control plane (ENIs) will be provisioned. Used for expanding the pool of subnets used by nodes/node groups without replacing the EKS control plane | `list(string)` | `[]` | no |
272273
| <a name="input_create"></a> [create](#input\_create) | Controls if resources should be created (affects nearly all resources) | `bool` | `true` | no |
273274
| <a name="input_create_cloudwatch_log_group"></a> [create\_cloudwatch\_log\_group](#input\_create\_cloudwatch\_log\_group) | Determines whether a log group is created by this module for the cluster logs. If not, AWS will automatically create one if logging is enabled | `bool` | `true` | no |

examples/eks-managed-node-group/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

examples/karpenter/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,16 +89,16 @@ Note that this example may create resources which cost money. Run `terraform des
8989
| Name | Version |
9090
|------|---------|
9191
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
92-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
92+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
9393
| <a name="requirement_helm"></a> [helm](#requirement\_helm) | >= 2.7 |
9494
| <a name="requirement_kubectl"></a> [kubectl](#requirement\_kubectl) | >= 2.0 |
9595

9696
## Providers
9797

9898
| Name | Version |
9999
|------|---------|
100-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
101-
| <a name="provider_aws.virginia"></a> [aws.virginia](#provider\_aws.virginia) | >= 5.70 |
100+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
101+
| <a name="provider_aws.virginia"></a> [aws.virginia](#provider\_aws.virginia) | >= 5.74 |
102102
| <a name="provider_helm"></a> [helm](#provider\_helm) | >= 2.7 |
103103
| <a name="provider_kubectl"></a> [kubectl](#provider\_kubectl) | >= 2.0 |
104104

examples/karpenter/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
helm = {
1010
source = "hashicorp/helm"

examples/self-managed-node-group/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

main.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,14 @@ resource "aws_eks_cluster" "this" {
9292
}
9393
}
9494

95+
dynamic "zonal_shift_config" {
96+
for_each = length(var.cluster_zonal_shift_config) > 0 ? [var.cluster_zonal_shift_config] : []
97+
98+
content {
99+
enabled = try(zonal_shift_config.value.enabled, null)
100+
}
101+
}
102+
95103
tags = merge(
96104
{ terraform-aws-modules = "eks" },
97105
var.tags,

modules/eks-managed-node-group/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,13 +64,13 @@ module "eks_managed_node_group" {
6464
| Name | Version |
6565
|------|---------|
6666
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
67-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
67+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
6868

6969
## Providers
7070

7171
| Name | Version |
7272
|------|---------|
73-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
73+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
7474

7575
## Modules
7676

modules/eks-managed-node-group/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

modules/fargate-profile/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ module "fargate_profile" {
2929
| Name | Version |
3030
|------|---------|
3131
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
32-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
32+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
3333

3434
## Providers
3535

3636
| Name | Version |
3737
|------|---------|
38-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
38+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
3939

4040
## Modules
4141

modules/fargate-profile/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

modules/karpenter/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,13 +86,13 @@ module "karpenter" {
8686
| Name | Version |
8787
|------|---------|
8888
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
89-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
89+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
9090

9191
## Providers
9292

9393
| Name | Version |
9494
|------|---------|
95-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
95+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
9696

9797
## Modules
9898

modules/karpenter/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

modules/self-managed-node-group/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,13 @@ module "self_managed_node_group" {
4343
| Name | Version |
4444
|------|---------|
4545
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
46-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
46+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
4747

4848
## Providers
4949

5050
| Name | Version |
5151
|------|---------|
52-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
52+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
5353

5454
## Modules
5555

modules/self-managed-node-group/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

tests/eks-managed-node-group/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ Note that this example may create resources which cost money. Run `terraform des
1818
| Name | Version |
1919
|------|---------|
2020
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
21-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
21+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
2222

2323
## Providers
2424

2525
| Name | Version |
2626
|------|---------|
27-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
27+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
2828

2929
## Modules
3030

tests/eks-managed-node-group/main.tf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,10 @@ module "eks" {
6565
support_type = "STANDARD"
6666
}
6767

68+
cluster_zonal_shift_config = {
69+
enabled = true
70+
}
71+
6872
vpc_id = module.vpc.vpc_id
6973
subnet_ids = module.vpc.private_subnets
7074
control_plane_subnet_ids = module.vpc.intra_subnets

tests/eks-managed-node-group/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

tests/fargate-profile/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ Note that this example may create resources which cost money. Run `terraform des
1818
| Name | Version |
1919
|------|---------|
2020
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
21-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
21+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
2222

2323
## Providers
2424

2525
| Name | Version |
2626
|------|---------|
27-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
27+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
2828

2929
## Modules
3030

tests/fargate-profile/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

tests/self-managed-node-group/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ Note that this example may create resources which cost money. Run `terraform des
1818
| Name | Version |
1919
|------|---------|
2020
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.2 |
21-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.70 |
21+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.74 |
2222

2323
## Providers
2424

2525
| Name | Version |
2626
|------|---------|
27-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.70 |
27+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.74 |
2828

2929
## Modules
3030

tests/self-managed-node-group/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
}
1010
}

variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ variable "cluster_upgrade_policy" {
5050
default = {}
5151
}
5252

53+
variable "cluster_zonal_shift_config" {
54+
description = "Configuration block for the cluster zonal shift"
55+
type = any
56+
default = {}
57+
}
58+
5359
variable "cluster_additional_security_group_ids" {
5460
description = "List of additional, externally created security group IDs to attach to the cluster control plane"
5561
type = list(string)

versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.70"
7+
version = ">= 5.74"
88
}
99
tls = {
1010
source = "hashicorp/tls"

0 commit comments

Comments
 (0)