|
1 | | -data "aws_ssm_parameter" "amis" { |
2 | | - for_each = { |
3 | | - "AL2_x86_64" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2/recommended/image_id", |
4 | | - "AL2_x86_64_GPU" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2-gpu/recommended/image_id", |
5 | | - "AL2_ARM_64" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2-arm64/recommended/image_id", |
6 | | - "BOTTLEROCKET_ARM_64" = "/aws/service/bottlerocket/aws-k8s-${var.cluster_version}/arm64/latest/image_id", |
7 | | - "BOTTLEROCKET_x86_64" = "/aws/service/bottlerocket/aws-k8s-${var.cluster_version}/x86_64/latest/image_id", |
8 | | - "BOTTLEROCKET_ARM_64_NVIDIA" = "/aws/service/bottlerocket/aws-k8s-${var.cluster_version}-nvidia/arm64/latest/image_id", |
9 | | - "BOTTLEROCKET_x86_64_NVIDIA" = "/aws/service/bottlerocket/aws-k8s-${var.cluster_version}-nvidia/x86_64/latest/image_id", |
10 | | - "AL2023_x86_64_STANDARD" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2023/x86_64/standard/recommended/image_id", |
11 | | - "AL2023_ARM_64_STANDARD" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2023/arm64/standard/recommended/image_id", |
12 | | - "AL2023_x86_64_NEURON" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2023/x86_64/standard/recommended/image_id", |
13 | | - "AL2023_x86_64_NVIDIA" = "/aws/service/eks/optimized-ami/${var.cluster_version}/amazon-linux-2023/x86_64/standard/recommended/image_id" |
14 | | - } |
15 | 1 |
|
16 | | - name = each.value |
17 | | -} |
18 | 2 |
|
19 | 3 | module "eks_custom_ami" { |
20 | | - source = "github.com/terraform-aws-modules/terraform-aws-eks/modules/_user_data" |
| 4 | + source = "./_user_data" |
21 | 5 |
|
22 | 6 | # https://docs.aws.amazon.com/eks/latest/APIReference/API_Nodegroup.html#AmazonEKS-Type-Nodegroup-amiType |
23 | 7 | for_each = { |
24 | | - for k, v in var.node_groups : k => v if lookup(v, "node_disk_encrypted", false) == true |
| 8 | + for k, v in var.node_groups : k => v if lookup(v, "node_disk_encrypted", false) == true |
25 | 9 | } |
26 | 10 |
|
27 | 11 | ami_type = each.value.ami_type |
@@ -114,6 +98,10 @@ resource "aws_eks_node_group" "node_group" { |
114 | 98 | max_unavailable_percentage = lookup(each.value, "update_unavailable_percent", 50) |
115 | 99 | } |
116 | 100 |
|
| 101 | + node_repair_config { |
| 102 | + enabled = lookup(each.value, "node_repair_enabled", true) |
| 103 | + } |
| 104 | + |
117 | 105 | dynamic "taint" { |
118 | 106 | for_each = lookup(each.value, "taints", []) |
119 | 107 | content { |
|
0 commit comments