From d8f3026f5b6d5efd35299e9989c88301688b3575 Mon Sep 17 00:00:00 2001 From: Mateusz Kubaczyk Date: Thu, 3 Jan 2019 09:56:49 +0100 Subject: [PATCH 1/5] Add remove_default_node_pool var for zonal and regional cluster --- cluster_regional.tf | 2 ++ cluster_zonal.tf | 2 ++ variables.tf | 5 +++++ 3 files changed, 9 insertions(+) diff --git a/cluster_regional.tf b/cluster_regional.tf index baca766e7f..4b4ad331be 100644 --- a/cluster_regional.tf +++ b/cluster_regional.tf @@ -81,6 +81,8 @@ resource "google_container_cluster" "primary" { service_account = "${lookup(var.node_pools[0], "service_account", var.service_account)}" } } + + remove_default_node_pool = "${var.remove_default_node_pool}" } /****************************************** diff --git a/cluster_zonal.tf b/cluster_zonal.tf index 7d55e8a9a7..df97a968c3 100644 --- a/cluster_zonal.tf +++ b/cluster_zonal.tf @@ -81,6 +81,8 @@ resource "google_container_cluster" "zonal_primary" { service_account = "${lookup(var.node_pools[0], "service_account", var.service_account)}" } } + + remove_default_node_pool = "${var.remove_default_node_pool}" } /****************************************** diff --git a/variables.tf b/variables.tf index 606557914c..98b9977564 100644 --- a/variables.tf +++ b/variables.tf @@ -117,6 +117,11 @@ variable "ip_range_services" { description = "The secondary ip range to use for pods" } +variable "remove_default_node_pool" { + description = "Remove default node pool while setting up the cluster" + default = false +} + variable "node_pools" { type = "list" description = "List of maps containing node pools" From 65e0cae0358c54c51bad0dd2a75ba2f941e81f84 Mon Sep 17 00:00:00 2001 From: Mateusz Kubaczyk Date: Thu, 3 Jan 2019 15:19:40 +0100 Subject: [PATCH 2/5] Add full path for network/subnetwork ommiting permadiff caused by remove_default_node_pool --- cluster_regional.tf | 4 ++-- cluster_zonal.tf | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cluster_regional.tf b/cluster_regional.tf index 4b4ad331be..ade4b2647b 100644 --- a/cluster_regional.tf +++ b/cluster_regional.tf @@ -26,8 +26,8 @@ resource "google_container_cluster" "primary" { region = "${var.region}" additional_zones = ["${coalescelist(compact(var.zones), sort(random_shuffle.available_zones.result))}"] - network = "${data.google_compute_network.gke_network.self_link}" - subnetwork = "${data.google_compute_subnetwork.gke_subnetwork.self_link}" + network = "projects/${var.project_id}/global/networks/${data.google_compute_network.gke_network.name}" + subnetwork = "projects/${var.project_id}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" min_master_version = "${local.kubernetes_version}" logging_service = "${var.logging_service}" diff --git a/cluster_zonal.tf b/cluster_zonal.tf index df97a968c3..3470e947b6 100644 --- a/cluster_zonal.tf +++ b/cluster_zonal.tf @@ -26,8 +26,8 @@ resource "google_container_cluster" "zonal_primary" { zone = "${var.zones[0]}" additional_zones = ["${slice(var.zones,1,length(var.zones))}"] - network = "${data.google_compute_network.gke_network.self_link}" - subnetwork = "${data.google_compute_subnetwork.gke_subnetwork.self_link}" + network = "projects/${var.project_id}/global/networks/${data.google_compute_network.gke_network.name}" + subnetwork = "projects/${var.project_id}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" min_master_version = "${local.kubernetes_version}" logging_service = "${var.logging_service}" From 27efcefa2c6a100b0c2678dd57f75e81576168c4 Mon Sep 17 00:00:00 2001 From: Mateusz Kubaczyk Date: Thu, 3 Jan 2019 22:35:55 +0100 Subject: [PATCH 3/5] Add remove_default_node_pool to README --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6f39a4e573..affa9f9184 100644 --- a/README.md +++ b/README.md @@ -106,6 +106,7 @@ Then perform the following commands on the root folder: | network | The VPC network to host the cluster in (required) | string | - | yes | | network_policy | Enable network policy addon | string | `false` | no | | network_project_id | The project ID of the shared VPC's host (for shared vpc support) | string | `` | no | +| remove_default_node_pool | Boolean value determining removal of default node pool | bool | false | no | | node_pools | List of maps containing node pools | list | `` | no | | node_pools_labels | Map of maps containing node labels by node-pool name | map | `` | no | | node_pools_tags | Map of lists containing node network tags by node-pool name | map | `` | no | From fad997b31d6816d23d351b0be9725fc73c7b161a Mon Sep 17 00:00:00 2001 From: Mateusz Kubaczyk Date: Fri, 4 Jan 2019 09:39:12 +0100 Subject: [PATCH 4/5] Use project_id from google_compute_network data to take the share VPC into account --- cluster_regional.tf | 4 ++-- cluster_zonal.tf | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cluster_regional.tf b/cluster_regional.tf index ade4b2647b..60a19058c1 100644 --- a/cluster_regional.tf +++ b/cluster_regional.tf @@ -26,8 +26,8 @@ resource "google_container_cluster" "primary" { region = "${var.region}" additional_zones = ["${coalescelist(compact(var.zones), sort(random_shuffle.available_zones.result))}"] - network = "projects/${var.project_id}/global/networks/${data.google_compute_network.gke_network.name}" - subnetwork = "projects/${var.project_id}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" + network = "projects/${data.google_compute_network.gke_network.project}/global/networks/${data.google_compute_network.gke_network.name}" + subnetwork = "projects/${data.google_compute_network.gke_network.project}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" min_master_version = "${local.kubernetes_version}" logging_service = "${var.logging_service}" diff --git a/cluster_zonal.tf b/cluster_zonal.tf index 3470e947b6..6a6dfde787 100644 --- a/cluster_zonal.tf +++ b/cluster_zonal.tf @@ -26,8 +26,8 @@ resource "google_container_cluster" "zonal_primary" { zone = "${var.zones[0]}" additional_zones = ["${slice(var.zones,1,length(var.zones))}"] - network = "projects/${var.project_id}/global/networks/${data.google_compute_network.gke_network.name}" - subnetwork = "projects/${var.project_id}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" + network = "projects/${data.google_compute_network.gke_network.project}/global/networks/${data.google_compute_network.gke_network.name}" + subnetwork = "projects/${data.google_compute_network.gke_network.project}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" min_master_version = "${local.kubernetes_version}" logging_service = "${var.logging_service}" From e997e6604fce1e9d9e77f89c483792f26cc934de Mon Sep 17 00:00:00 2001 From: Mateusz Kubaczyk Date: Fri, 4 Jan 2019 16:20:25 +0100 Subject: [PATCH 5/5] Replace hardcoded network/subnetwork path with replaced self_link --- cluster_regional.tf | 4 ++-- cluster_zonal.tf | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cluster_regional.tf b/cluster_regional.tf index 60a19058c1..3918331155 100644 --- a/cluster_regional.tf +++ b/cluster_regional.tf @@ -26,8 +26,8 @@ resource "google_container_cluster" "primary" { region = "${var.region}" additional_zones = ["${coalescelist(compact(var.zones), sort(random_shuffle.available_zones.result))}"] - network = "projects/${data.google_compute_network.gke_network.project}/global/networks/${data.google_compute_network.gke_network.name}" - subnetwork = "projects/${data.google_compute_network.gke_network.project}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" + network = "${replace(data.google_compute_network.gke_network.self_link, "https://www.googleapis.com/compute/v1/", "")}" + subnetwork = "${replace(data.google_compute_subnetwork.gke_subnetwork.self_link, "https://www.googleapis.com/compute/v1/", "")}" min_master_version = "${local.kubernetes_version}" logging_service = "${var.logging_service}" diff --git a/cluster_zonal.tf b/cluster_zonal.tf index 6a6dfde787..bad8ebb2f2 100644 --- a/cluster_zonal.tf +++ b/cluster_zonal.tf @@ -26,8 +26,8 @@ resource "google_container_cluster" "zonal_primary" { zone = "${var.zones[0]}" additional_zones = ["${slice(var.zones,1,length(var.zones))}"] - network = "projects/${data.google_compute_network.gke_network.project}/global/networks/${data.google_compute_network.gke_network.name}" - subnetwork = "projects/${data.google_compute_network.gke_network.project}/regions/${var.region}/subnetworks/${data.google_compute_subnetwork.gke_subnetwork.name}" + network = "${replace(data.google_compute_network.gke_network.self_link, "https://www.googleapis.com/compute/v1/", "")}" + subnetwork = "${replace(data.google_compute_subnetwork.gke_subnetwork.self_link, "https://www.googleapis.com/compute/v1/", "")}" min_master_version = "${local.kubernetes_version}" logging_service = "${var.logging_service}"