From 6fa3cda2147065fa80bc586666335b360aa7180c Mon Sep 17 00:00:00 2001 From: Erik Sundell Date: Wed, 21 Feb 2024 17:50:05 +0100 Subject: [PATCH] terraform: default to k8s 1.29 for new GKE/EKS clusters --- eksctl/template.jsonnet | 2 +- terraform/gcp/cluster.tf | 1 - terraform/gcp/projects/basehub-template.tfvars | 15 +++++++++++++++ terraform/gcp/projects/daskhub-template.tfvars | 15 +++++++++++++++ terraform/gcp/variables.tf | 1 + 5 files changed, 32 insertions(+), 2 deletions(-) diff --git a/eksctl/template.jsonnet b/eksctl/template.jsonnet index 3b681e9d7c..5a22ce8885 100644 --- a/eksctl/template.jsonnet +++ b/eksctl/template.jsonnet @@ -69,7 +69,7 @@ local daskNodes = []; version should be the latest support version by the eksctl CLI, see https://eksctl.io/getting-started/ for a list of supported versions. -#} - version: "1.28", + version: "1.29", }, availabilityZones: masterAzs, iam: { diff --git a/terraform/gcp/cluster.tf b/terraform/gcp/cluster.tf index d12860e302..d1a16f99ad 100644 --- a/terraform/gcp/cluster.tf +++ b/terraform/gcp/cluster.tf @@ -5,7 +5,6 @@ # To get get the output of relevance, run: # # terraform plan -var-file=projects/$CLUSTER_NAME.tfvars -# terraform output regular_channel_latest_k8s_versions # # data ref: https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/container_engine_versions data "google_container_engine_versions" "k8s_version_prefixes" { diff --git a/terraform/gcp/projects/basehub-template.tfvars b/terraform/gcp/projects/basehub-template.tfvars index 9419751eeb..32c9f87978 100644 --- a/terraform/gcp/projects/basehub-template.tfvars +++ b/terraform/gcp/projects/basehub-template.tfvars @@ -14,6 +14,21 @@ region = "{{ cluster_region }}" # Default to a HA cluster for reliability regional_cluster = true + +# TODO: Before applying this, identify a k8s version to specify. Pick the latest +# k8s version from GKE's regular release channel. Look at the output +# called `regular_channel_latest_k8s_versions` as seen when using +# `terraform plan -var-file=projects/{{ cluster_name }}.tfvars`. +# +# Then use that version to explicitly set all k8s versions below, and +# finally decomment the k8s_versions section and removing this comment. +# +#k8s_versions = { +# min_master_version : "", +# core_nodes_version : "", +# notebook_nodes_version : "", +#} + core_node_machine_type = "n2-highmem-2" # For multi-tenant cluster, network policy is required to enforce separation between hubs diff --git a/terraform/gcp/projects/daskhub-template.tfvars b/terraform/gcp/projects/daskhub-template.tfvars index 1bcf3e668a..6aa89162db 100644 --- a/terraform/gcp/projects/daskhub-template.tfvars +++ b/terraform/gcp/projects/daskhub-template.tfvars @@ -14,6 +14,21 @@ region = "{{ cluster_region }}" # Default to a HA cluster for reliability regional_cluster = true +# TODO: Before applying this, identify a k8s version to specify. Pick the latest +# k8s version from GKE's regular release channel. Look at the output +# called `regular_channel_latest_k8s_versions` as seen when using +# `terraform plan -var-file=projects/{{ cluster_name }}.tfvars`. +# +# Then use that version to explicitly set all k8s versions below, and +# finally decomment the k8s_versions section and removing this comment. +# +#k8s_versions = { +# min_master_version : "", +# core_nodes_version : "", +# notebook_nodes_version : "", +# dask_nodes_version : "", +#} + core_node_machine_type = "n2-highmem-4" # Network policy is required to enforce separation between hubs on multi-tenant clusters diff --git a/terraform/gcp/variables.tf b/terraform/gcp/variables.tf index 91a7526f3e..b131d50965 100644 --- a/terraform/gcp/variables.tf +++ b/terraform/gcp/variables.tf @@ -49,6 +49,7 @@ variable "k8s_version_prefixes" { default = [ "1.27.", "1.28.", + "1.29.", "1.", ] description = <<-EOT