@@ -2,6 +2,10 @@ data "aws_iam_policy" "AmazonEC2ReadOnlyAccess" {
22 arn = " arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess"
33}
44
5+ data "aws_iam_policy" "AmazonSSMManagedInstanceCore" {
6+ arn = " arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore"
7+ }
8+
59data "template_cloudinit_config" "k8s_server" {
610 gzip = true
711 base64_encode = true
@@ -14,25 +18,40 @@ data "template_cloudinit_config" "k8s_server" {
1418
1519 part {
1620 content_type = " text/x-shellscript"
17- content = templatefile (" ${ path . module } /files/install_k8s_utils.sh" , { k8s_version = var.k8s_version, install_longhorn = var.install_longhorn, })
21+ content = templatefile (" ${ path . module } /files/install_k8s_utils.sh" , {
22+ k8s_version = var.k8s_version
23+ })
1824 }
1925
2026 part {
2127 content_type = " text/x-shellscript"
2228 content = templatefile (" ${ path . module } /files/install_k8s.sh" , {
23- is_k8s_server = true ,
24- k8s_version = var.k8s_version,
25- k8s_dns_domain = var.k8s_dns_domain,
26- k8s_pod_subnet = var.k8s_pod_subnet,
27- k8s_service_subnet = var.k8s_service_subnet,
28- s3_bucket_name = var.s3_bucket_name,
29- kube_api_port = var.kube_api_port,
30- control_plane_url = aws_lb.k8s- server- lb.dns_name,
31- install_longhorn = var.install_longhorn,
32- longhorn_release = var.longhorn_release,
33- install_nginx_ingress = var.install_nginx_ingress,
34- extlb_listener_http_port = var.extlb_listener_http_port,
35- extlb_listener_https_port = var.extlb_listener_https_port,
29+ is_k8s_server = true ,
30+ k8s_version = var.k8s_version,
31+ k8s_dns_domain = var.k8s_dns_domain,
32+ k8s_pod_subnet = var.k8s_pod_subnet,
33+ k8s_service_subnet = var.k8s_service_subnet,
34+ kubeadm_ca_secret_name = local.kubeadm_ca_secret_name,
35+ kubeadm_token_secret_name = local.kubeadm_token_secret_name,
36+ kubeadm_cert_secret_name = local.kubeadm_cert_secret_name,
37+ kubeconfig_secret_name = local.kubeconfig_secret_name,
38+ kube_api_port = var.kube_api_port,
39+ control_plane_url = aws_lb.k8s_server_lb.dns_name,
40+ install_nginx_ingress = var.install_nginx_ingress,
41+ nginx_ingress_release = var.nginx_ingress_release,
42+ efs_persistent_storage = var.efs_persistent_storage,
43+ efs_csi_driver_release = var.efs_csi_driver_release,
44+ efs_filesystem_id = var.efs_persistent_storage ? aws_efs_file_system.k8s_persistent_storage[0 ].id : " " ,
45+ install_certmanager = var.install_certmanager,
46+ certmanager_release = var.certmanager_release,
47+ install_node_termination_handler = var.install_node_termination_handler,
48+ node_termination_handler_release = var.node_termination_handler_release,
49+ certmanager_email_address = var.certmanager_email_address,
50+ extlb_listener_http_port = var.extlb_listener_http_port,
51+ extlb_listener_https_port = var.extlb_listener_https_port,
52+ default_secret_placeholder = var.default_secret_placeholder,
53+ expose_kubeapi = var.expose_kubeapi,
54+ k8s_tls_san_public = local.k8s_tls_san_public
3655 })
3756 }
3857}
@@ -49,16 +68,21 @@ data "template_cloudinit_config" "k8s_worker" {
4968
5069 part {
5170 content_type = " text/x-shellscript"
52- content = templatefile (" ${ path . module } /files/install_k8s_utils.sh" , { k8s_version = var.k8s_version, install_longhorn = var.install_longhorn })
71+ content = templatefile (" ${ path . module } /files/install_k8s_utils.sh" , {
72+ k8s_version = var.k8s_version
73+ })
5374 }
5475
5576 part {
5677 content_type = " text/x-shellscript"
5778 content = templatefile (" ${ path . module } /files/install_k8s_worker.sh" , {
58- is_k8s_server = false ,
59- s3_bucket_name = var.s3_bucket_name,
60- kube_api_port = var.kube_api_port,
61- control_plane_url = aws_lb.k8s- server- lb.dns_name,
79+ is_k8s_server = false ,
80+ kubeadm_ca_secret_name = local.kubeadm_ca_secret_name,
81+ kubeadm_token_secret_name = local.kubeadm_token_secret_name,
82+ kubeadm_cert_secret_name = local.kubeadm_cert_secret_name,
83+ kube_api_port = var.kube_api_port,
84+ control_plane_url = aws_lb.k8s_server_lb.dns_name,
85+ default_secret_placeholder = var.default_secret_placeholder,
6286 })
6387 }
6488}
@@ -70,11 +94,7 @@ data "aws_instances" "k8s_servers" {
7094 ]
7195
7296 instance_tags = {
73- k8s-instance-type = " k8s-server"
74- provisioner = " terraform"
75- environment = var.environment
76- uuid = var.uuid
77- scope = " k8s-cluster"
97+ for tag , value in merge (local. global_tags , { k8s-instance-type = " k8s-server" }) : tag => value
7898 }
7999
80100 instance_state_names = [" running" ]
@@ -87,11 +107,7 @@ data "aws_instances" "k8s_workers" {
87107 ]
88108
89109 instance_tags = {
90- k8s-instance-type = " k8s-worker"
91- provisioner = " terraform"
92- environment = var.environment
93- uuid = var.uuid
94- scope = " k8s-cluster"
110+ for tag , value in merge (local. global_tags , { k8s-instance-type = " k8s-worker" }) : tag => value
95111 }
96112
97113 instance_state_names = [" running" ]
0 commit comments