diff --git a/examples/complete/main.tf b/examples/complete/main.tf index 91e3866..8b553d1 100644 --- a/examples/complete/main.tf +++ b/examples/complete/main.tf @@ -78,23 +78,6 @@ module "eks-addons" { values = [file("${path.module}/config/karpenter.yaml")] } - ## KARPENTER-PROVISIONER - karpenter_provisioner_enabled = false # to enable provisioning nodes with Karpenter in the EKS cluster - karpenter_provisioner_config = { - provisioner_name = format("karpenter-provisioner-%s", local.name) - karpenter_label = ["Mgt-Services", "Monitor-Services", "ECK-Services"] - provisioner_values = file("./config/karpenter-management.yaml") - instance_capacity_type = ["spot"] - excluded_instance_type = ["nano", "micro", "small"] - ec2_instance_family = ["t3"] - ec2_instance_type = ["t3.medium"] - private_subnet_selector_key = "Karpenter" - private_subnet_selector_value = "${local.name}-${local.region}a" - security_group_selector_key = "aws:eks:cluster-name" - security_group_selector_value = "${local.environment}-${local.name}" - instance_hypervisor = ["nitro"] - kms_key_arn = local.kms_key_arn - } ## coreDNS-HPA (cluster-proportional-autoscaler) coredns_hpa_enabled = false # to enable core-dns HPA coredns_hpa_helm_config = { diff --git a/main.tf b/main.tf index 3483aff..5291f0b 100644 --- a/main.tf +++ b/main.tf @@ -184,17 +184,6 @@ module "karpenter" { kms_key_arn = var.karpenter_enabled ? var.kms_key_arn : "" } -## Karpenter-provisioner -module "karpenter-provisioner" { - source = "./modules/karpenter-provisioner" - count = var.karpenter_provisioner_enabled ? 1 : 0 - depends_on = [module.karpenter] - ipv6_enabled = var.ipv6_enabled - karpenter_config = var.karpenter_provisioner_config - tag_product = var.tag_product - tag_environment = var.tag_environment -} - ## KUBERNETES DASHBOARD module "kubernetes-dashboard" { source = "./modules/kubernetes-dashboard" diff --git a/modules/karpenter/config/karpenter.yaml b/modules/karpenter/config/karpenter.yaml index 350ba0c..1908444 100644 --- a/modules/karpenter/config/karpenter.yaml +++ b/modules/karpenter/config/karpenter.yaml @@ -2,12 +2,8 @@ nodeSelector: kubernetes.io/os: linux settings: - aws: - defaultInstanceProfile: ${node_iam_instance_profile} - clusterName: ${eks_cluster_id} - clusterEndpoint: ${eks_cluster_endpoint} - featureGates: - driftEnabled: true + clusterName: ${eks_cluster_id} + clusterEndpoint: ${eks_cluster_endpoint} controller: resources: diff --git a/modules/karpenter/data.tf b/modules/karpenter/data.tf index 26edc2e..1d3f990 100644 --- a/modules/karpenter/data.tf +++ b/modules/karpenter/data.tf @@ -26,6 +26,12 @@ data "aws_iam_policy_document" "karpenter" { "iam:PassRole", "pricing:GetProducts", "ssm:GetParameter", + "iam:CreateInstanceProfile", + "iam:TagInstanceProfile", + "iam:AddRoleToInstanceProfile", + "iam:RemoveRoleFromInstanceProfile", + "iam:DeleteInstanceProfile", + "iam:GetInstanceProfile", ] } diff --git a/modules/karpenter/locals.tf b/modules/karpenter/locals.tf index 5896d34..a77bb4d 100644 --- a/modules/karpenter/locals.tf +++ b/modules/karpenter/locals.tf @@ -7,7 +7,6 @@ locals { template_values = templatefile("${path.module}/config/karpenter.yaml", { eks_cluster_id = var.addon_context.eks_cluster_id, eks_cluster_endpoint = var.addon_context.aws_eks_cluster_endpoint, - node_iam_instance_profile = local.node_module_profile_id # enter profile name for kubernetes iam profile }) template_values_map = yamldecode(local.template_values) @@ -27,14 +26,12 @@ locals { name = local.name chart = local.name repository = "oci://public.ecr.aws/karpenter" - version = "v0.32.10" + version = "1.0.0" namespace = local.name values = [yamlencode(merge( yamldecode(<<-EOT clusterName: ${var.addon_context.eks_cluster_id} clusterEndpoint: ${var.addon_context.aws_eks_cluster_endpoint} - aws: - defaultInstanceProfile: ${local.node_iam_instance_profile} EOT ), local.template_values_map, var.karpenter_helm_config))] description = "karpenter Helm Chart for Node Autoscaling" diff --git a/modules/karpenter-provisioner/README.md b/modules/z-archieve/karpenter-provisioner/README.md similarity index 100% rename from modules/karpenter-provisioner/README.md rename to modules/z-archieve/karpenter-provisioner/README.md diff --git a/modules/karpenter-provisioner/config/.helmignore b/modules/z-archieve/karpenter-provisioner/config/.helmignore similarity index 100% rename from modules/karpenter-provisioner/config/.helmignore rename to modules/z-archieve/karpenter-provisioner/config/.helmignore diff --git a/modules/karpenter-provisioner/config/Chart.yaml b/modules/z-archieve/karpenter-provisioner/config/Chart.yaml similarity index 100% rename from modules/karpenter-provisioner/config/Chart.yaml rename to modules/z-archieve/karpenter-provisioner/config/Chart.yaml diff --git a/modules/karpenter-provisioner/config/ipv4-values.yaml b/modules/z-archieve/karpenter-provisioner/config/ipv4-values.yaml similarity index 100% rename from modules/karpenter-provisioner/config/ipv4-values.yaml rename to modules/z-archieve/karpenter-provisioner/config/ipv4-values.yaml diff --git a/modules/karpenter-provisioner/config/ipv6-values.yaml b/modules/z-archieve/karpenter-provisioner/config/ipv6-values.yaml similarity index 100% rename from modules/karpenter-provisioner/config/ipv6-values.yaml rename to modules/z-archieve/karpenter-provisioner/config/ipv6-values.yaml diff --git a/modules/karpenter-provisioner/config/templates/provisioner.yaml b/modules/z-archieve/karpenter-provisioner/config/templates/provisioner.yaml similarity index 100% rename from modules/karpenter-provisioner/config/templates/provisioner.yaml rename to modules/z-archieve/karpenter-provisioner/config/templates/provisioner.yaml diff --git a/modules/karpenter-provisioner/main.tf b/modules/z-archieve/karpenter-provisioner/main.tf similarity index 100% rename from modules/karpenter-provisioner/main.tf rename to modules/z-archieve/karpenter-provisioner/main.tf diff --git a/modules/karpenter-provisioner/tfsec.yaml b/modules/z-archieve/karpenter-provisioner/tfsec.yaml similarity index 100% rename from modules/karpenter-provisioner/tfsec.yaml rename to modules/z-archieve/karpenter-provisioner/tfsec.yaml diff --git a/modules/karpenter-provisioner/variable.tf b/modules/z-archieve/karpenter-provisioner/variable.tf similarity index 100% rename from modules/karpenter-provisioner/variable.tf rename to modules/z-archieve/karpenter-provisioner/variable.tf diff --git a/modules/karpenter-provisioner/versions.tf b/modules/z-archieve/karpenter-provisioner/versions.tf similarity index 100% rename from modules/karpenter-provisioner/versions.tf rename to modules/z-archieve/karpenter-provisioner/versions.tf