Skip to content

Commit b9bacd6

Browse files
committed
demo
1 parent 037e8b0 commit b9bacd6

18 files changed

+435
-359
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"Modules":[{"Key":"","Source":"","Dir":"."},{"Key":"subnet_addrs","Source":"registry.terraform.io/hashicorp/subnets/cidr","Version":"1.0.0","Dir":".terraform/modules/subnet_addrs"}]}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Subproject commit 52ca061aaea2e8f58c91ac03ca1fae45e44c28bf

eks-cluster/data.tf

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1-
data "tfe_outputs" "infra" {
2-
organization = var.tf_cloud_organization
3-
workspace = "infra"
1+
data "terraform_remote_state" "infra" {
2+
backend = "s3"
3+
config = {
4+
bucket = "akash-terraform-state-bucket" # Your S3 bucket name
5+
key = "infra/terraform.tfstate" # Path to infra's state file
6+
region = "us-east-1" # AWS region
7+
}
48
}
59

eks-cluster/eks_cluster.tf

Lines changed: 54 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
1+
# eks-cluster/ekscluster.tf
22
# Create EKS cluster and node groups
33
resource "aws_eks_cluster" "eks-tf" {
44

@@ -28,8 +28,8 @@ resource "aws_eks_node_group" "private-node-group-1-tf" {
2828
instance_types = ["t3.medium"]
2929

3030
scaling_config {
31-
desired_size = 2
32-
max_size = 3
31+
desired_size = 1
32+
max_size = 2
3333
min_size = 1
3434
}
3535

@@ -44,13 +44,6 @@ resource "aws_eks_node_group" "private-node-group-1-tf" {
4444
]
4545
}
4646

47-
resource "aws_eks_addon" "cluster-addons" {
48-
for_each = { for addon in var.eks_addons : addon.name => addon }
49-
cluster_name = aws_eks_cluster.eks-tf.id
50-
addon_name = each.value.name
51-
#addon_version = each.value.version
52-
resolve_conflicts = "OVERWRITE"
53-
}
5447

5548
resource "aws_eks_node_group" "private-node-group-2-tf" {
5649
cluster_name = aws_eks_cluster.eks-tf.name
@@ -61,8 +54,8 @@ resource "aws_eks_node_group" "private-node-group-2-tf" {
6154
instance_types = ["t3.medium"]
6255

6356
scaling_config {
64-
desired_size = 2
65-
max_size = 3
57+
desired_size = 1
58+
max_size = 2
6659
min_size = 1
6760
}
6861

@@ -76,3 +69,52 @@ resource "aws_eks_node_group" "private-node-group-2-tf" {
7669
aws_iam_role_policy_attachment.AmazonEC2ContainerRegistryReadOnly,
7770
]
7871
}
72+
73+
# Create EKS Addons
74+
resource "aws_eks_addon" "cluster-addons" {
75+
for_each = { for addon in var.eks_addons : addon.name => addon }
76+
cluster_name = aws_eks_cluster.eks-tf.id
77+
addon_name = each.value.name
78+
resolve_conflicts = "OVERWRITE"
79+
80+
# Add service account role ARN for EBS CSI driver
81+
service_account_role_arn = each.value.name == "aws-ebs-csi-driver" ? aws_iam_role.ebs_csi_driver.arn : null
82+
83+
depends_on = [
84+
aws_eks_node_group.private-node-group-1-tf,
85+
aws_eks_node_group.private-node-group-2-tf,
86+
aws_iam_role.ebs_csi_driver
87+
]
88+
}
89+
90+
output "kubeconfig" {
91+
value = <<EOT
92+
apiVersion: v1
93+
clusters:
94+
- cluster:
95+
server: ${aws_eks_cluster.eks-tf.endpoint}
96+
certificate-authority-data: ${aws_eks_cluster.eks-tf.certificate_authority[0].data}
97+
name: ${aws_eks_cluster.eks-tf.arn} # Use ARN as context name
98+
contexts:
99+
- context:
100+
cluster: ${aws_eks_cluster.eks-tf.arn}
101+
user: ${aws_eks_cluster.eks-tf.arn}
102+
name: ${aws_eks_cluster.eks-tf.arn} # Dynamic context name
103+
current-context: ${aws_eks_cluster.eks-tf.arn}
104+
kind: Config
105+
users:
106+
- name: ${aws_eks_cluster.eks-tf.arn}
107+
user:
108+
exec:
109+
apiVersion: client.authentication.k8s.io/v1beta1
110+
command: aws
111+
args:
112+
- "eks"
113+
- "get-token"
114+
- "--cluster-name"
115+
- ${aws_eks_cluster.eks-tf.name}
116+
- "--region"
117+
- ${local.aws_region}
118+
EOT
119+
sensitive = true
120+
}

0 commit comments

Comments
 (0)