From ce6c9307fde53d981ad00086cb5b8ff41598156e Mon Sep 17 00:00:00 2001 From: Sarah Gibson Date: Fri, 18 Oct 2024 10:58:24 +0100 Subject: [PATCH 1/2] Delete a tainted and drained node --- eksctl/nasa-veda.jsonnet | 7 ------- 1 file changed, 7 deletions(-) diff --git a/eksctl/nasa-veda.jsonnet b/eksctl/nasa-veda.jsonnet index f92595eee..8341eedd4 100644 --- a/eksctl/nasa-veda.jsonnet +++ b/eksctl/nasa-veda.jsonnet @@ -57,13 +57,6 @@ local notebookNodes = [ labels+: { "2i2c/hub-name": "prod" }, tags+: { "2i2c:hub-name": "prod" } }, - // FIXME: tainted, to be deleted when empty, replaced by equivalent during k8s upgrade - { - instanceType: "r5.4xlarge", - namePrefix: "nb-prod", - labels+: { "2i2c/hub-name": "prod" }, - tags+: { "2i2c:hub-name": "prod" } - }, { instanceType: "r5.4xlarge", namePrefix: "nb-prod", From 3c38ad848e1ce164c39c93232496a4999837143b Mon Sep 17 00:00:00 2001 From: Sarah Gibson Date: Fri, 18 Oct 2024 10:59:22 +0100 Subject: [PATCH 2/2] Duplicate GPU nodegroups for staging and prod hubs Permits fine-grained costing per hub --- eksctl/nasa-veda.jsonnet | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/eksctl/nasa-veda.jsonnet b/eksctl/nasa-veda.jsonnet index 8341eedd4..a619730ad 100644 --- a/eksctl/nasa-veda.jsonnet +++ b/eksctl/nasa-veda.jsonnet @@ -78,11 +78,29 @@ local notebookNodes = [ }, { instanceType: "g4dn.xlarge", + namePrefix: "gpu-staging", + labels+: { "2i2c/hub-name": "staging" }, tags+: { - "k8s.io/cluster-autoscaler/node-template/resources/nvidia.com/gpu": "1" + "2i2c:hub-name": "staging", + "k8s.io/cluster-autoscaler/node-template/resources/nvidia.com/gpu": "1" }, taints+: { - "nvidia.com/gpu": "present:NoSchedule" + "nvidia.com/gpu": "present:NoSchedule" + }, + // Allow provisioning GPUs across all AZs, to prevent situation where all + // GPUs in a single AZ are in use and no new nodes can be spawned + availabilityZones: masterAzs, + }, + { + instanceType: "g4dn.xlarge", + namePrefix: "gpu-prod", + labels+: { "2i2c/hub-name": "prod" }, + tags+: { + "2i2c:hub-name": "prod", + "k8s.io/cluster-autoscaler/node-template/resources/nvidia.com/gpu": "1" + }, + taints+: { + "nvidia.com/gpu": "present:NoSchedule" }, // Allow provisioning GPUs across all AZs, to prevent situation where all // GPUs in a single AZ are in use and no new nodes can be spawned