-
Notifications
You must be signed in to change notification settings - Fork 6
/
helm_karpenter.tf
61 lines (50 loc) · 1.41 KB
/
helm_karpenter.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
resource "aws_eks_fargate_profile" "karpenter" {
cluster_name = aws_eks_cluster.eks_cluster.name
fargate_profile_name = "karpenter"
pod_execution_role_arn = aws_iam_role.eks_fargate_role.arn
subnet_ids = [
aws_subnet.private_subnet_1a.id,
aws_subnet.private_subnet_1b.id,
aws_subnet.private_subnet_1c.id
]
selector {
namespace = "karpenter"
}
depends_on = [
aws_eks_fargate_profile.kube_system,
data.aws_lambda_invocation.coredns_fix
]
}
resource "helm_release" "karpenter" {
namespace = "karpenter"
create_namespace = true
name = "karpenter"
repository = "oci://public.ecr.aws/karpenter"
chart = "karpenter"
version = "v0.32.1"
set {
name = "serviceAccount.annotations.eks\\.amazonaws\\.com/role-arn"
value = aws_iam_role.karpenter_role.arn
}
set {
name = "settings.clusterName"
value = var.cluster_name
}
set {
name = "settings.interruptionQueue"
value = aws_sqs_queue.karpenter.name
}
set {
name = "clusterEndpoint"
value = aws_eks_cluster.eks_cluster.endpoint
}
set {
name = "aws.defaultInstanceProfile"
value = aws_iam_instance_profile.nodes.name
}
depends_on = [
aws_eks_cluster.eks_cluster,
kubernetes_config_map.aws-auth,
aws_eks_fargate_profile.karpenter
]
}