From 98a0af7576b54e959f3f8ca8547925bfd31b3e10 Mon Sep 17 00:00:00 2001 From: pk0331 Date: Tue, 30 Aug 2022 07:56:47 +0000 Subject: [PATCH 1/2] Code changes for auto allocating IP address --- modules/gcp/gke/main.tf | 47 ++++++++++++++++-------------------- modules/gcp/gke/variables.tf | 28 ++------------------- 2 files changed, 23 insertions(+), 52 deletions(-) diff --git a/modules/gcp/gke/main.tf b/modules/gcp/gke/main.tf index 0d6c61d..c38e414 100644 --- a/modules/gcp/gke/main.tf +++ b/modules/gcp/gke/main.tf @@ -11,35 +11,33 @@ module "enabled_google_apis" { ] } +resource "null_resource" "previous" { + depends_on = [module.enabled_google_apis] + provisioner "local-exec" { + command = "echo \"waiting for 30 seconds before starting resources creation\"" + } +} + +resource "time_sleep" "wait_30_seconds" { + depends_on = [module.enabled_google_apis, null_resource.previous] + create_duration = "30s" +} + +resource "null_resource" "after" { + depends_on = [module.enabled_google_apis, time_sleep.wait_30_seconds] + provisioner "local-exec" { + command = "echo \"wait is over!!! starting resources creation\"" + } +} ##Not Passing Zone Parameter to Module, If We Don't Pass zone, default locations are selected. ##Not adding gcp_filestore_csi_driver, gce_persistent_disk_csi_driver_config, We use helm to install these drivers, Addons doesn't provide all the features ( ex: snapshot ) ##By Default the following Module Creats -## These secondary subnets are mandatory if we would want to launch GKE cluster in VPC Native Cluster. -## Ref: https://jayendrapatil.com/google-kubernetes-engine-networking/ -resource "google_compute_subnetwork" "cluster_subnet" { - name = var.subnetwork_name - ip_cidr_range = var.subnetwork_cidr - region = var.region - project = var.project_id - network = var.network_name - private_ip_google_access = true - secondary_ip_range = [ - { - range_name = var.pod_subnet_name - ip_cidr_range = var.pod_subnet_cidr_block - }, - { - range_name = var.service_subnet_name - ip_cidr_range = var.service_subnet_cidr_block - } - ] -} - module "gke" { - depends_on = [google_compute_subnetwork.cluster_subnet] - source = "github.com/argonautdev/terraform-google-kubernetes-engine//modules/private-cluster?ref=v21.1.1" + depends_on = [null_resource.after] + #source = "github.com/argonautdev/terraform-google-kubernetes-engine//modules/private-cluster?ref=v21.1.1" + source = "../../../../../argo-public/terraform-google-kubernetes-engine/modules/private-cluster" project_id = var.project_id name = var.cluster_name description = var.description @@ -47,8 +45,6 @@ module "gke" { zones = var.cluster_node_zones network = var.network_name subnetwork = var.subnetwork_name - ip_range_pods = var.pod_subnet_name - ip_range_services = var.service_subnet_name master_ipv4_cidr_block = var.master_ipv4_cidr_block http_load_balancing = var.http_load_balancing filestore_csi_driver = var.filestore_csi_driver @@ -59,7 +55,6 @@ module "gke" { node_pools = var.node_pools remove_default_node_pool = var.remove_default_node_pool cluster_resource_labels = merge(var.default_labels, var.labels) - //kubernetes_version = var.kubernetes_version /*Node Pool taints, Labels, tags */ node_pools_labels = var.node_pools_labels node_pools_taints = var.node_pools_taints diff --git a/modules/gcp/gke/variables.tf b/modules/gcp/gke/variables.tf index 1950857..2328823 100644 --- a/modules/gcp/gke/variables.tf +++ b/modules/gcp/gke/variables.tf @@ -41,31 +41,6 @@ variable "subnetwork_name" { type = string } -variable "pod_subnet_name" { - type = string - description = "The _name_ of the secondary subnet to use for pods" -} - -variable "service_subnet_name" { - type = string - description = "The _name_ of the secondary subnet to use for services" -} - -variable "subnetwork_cidr" { - description = "Cidr of the subnetwork" - type = string -} - -variable "pod_subnet_cidr_block" { - type = string - description = "Pod subnetwork cidr block" -} - -variable "service_subnet_cidr_block" { - type = string - description = "Services subnetwork cidr block" -} - ##The variable value is important if you would want to create a private cluster ################### # Variables for Private Cluster @@ -174,7 +149,8 @@ variable "node_pools" { disk_type = "pd-balanced" image_type = "COS_CONTAINERD" autoscaling = false - auto_upgrade = false, + auto_upgrade = true, + auto_repair = true, enable_gcfs = false }, ] From b10e6602861276492afc3e37a95b7a4393460b99 Mon Sep 17 00:00:00 2001 From: pk0331 Date: Tue, 30 Aug 2022 12:42:47 +0000 Subject: [PATCH 2/2] Source change for GKE --- modules/gcp/gke/main.tf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/modules/gcp/gke/main.tf b/modules/gcp/gke/main.tf index c38e414..480e8fc 100644 --- a/modules/gcp/gke/main.tf +++ b/modules/gcp/gke/main.tf @@ -36,8 +36,7 @@ resource "null_resource" "after" { module "gke" { depends_on = [null_resource.after] - #source = "github.com/argonautdev/terraform-google-kubernetes-engine//modules/private-cluster?ref=v21.1.1" - source = "../../../../../argo-public/terraform-google-kubernetes-engine/modules/private-cluster" + source = "github.com/argonautdev/terraform-google-kubernetes-engine//modules/private-cluster?ref=v21.1.2" project_id = var.project_id name = var.cluster_name description = var.description