fix(infra): rename L4 pool ci-compile → ci-rl, remove stale moved blocks
Applied terragrunt to recreate the L4 GPU pool with the correct name `ci-rl` (was `ci-compile` due to immutable Scaleway pool names). Updated all K8s manifests and comments to match. Removed the 3 stale `moved` blocks from main.tf since the state renames are now applied. Pool naming is now consistent across Terraform, Scaleway, and K8s configs: - ci-compile-cpu (POP2-32C-128G) — CPU compilation - ci-rl (L4-1-24G) — RL training / CUDA compile - ci-training (L40S-1-48G) — supervised training + hyperopt Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
# kapsule,rust → CPU runner → ci-compile-cpu pool (POP2-32C-128G, 32 vCPU)
|
||||
# kapsule,gpu → GPU runner → ci-training (L40S)
|
||||
# Override nodeSelector: KUBERNETES_NODE_SELECTOR_k8s.scaleway.com/pool-name: "<name>" (k=v format)
|
||||
# Pools: ci-compile-cpu (POP2-32C-128G), ci-compile (L4 compile), ci-training (L40S training), services, gitlab
|
||||
# Pools: ci-compile-cpu (POP2-32C-128G), ci-rl (L4 GPU), ci-training (L40S training), services, gitlab
|
||||
# All compilation (services + training) runs on ci-compile-cpu. CUDA stubs in ci-builder image.
|
||||
|
||||
# Ensure pipeline is always created — individual job rules handle filtering.
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
|
||||
4. Repeat for gitlab pool (if not autoscaling, same process).
|
||||
|
||||
5. Autoscaling pools (ci-training, ci-compile, gpu-dev):
|
||||
5. Autoscaling pools (ci-training, ci-rl, gpu-dev):
|
||||
- No action needed — next scale-up automatically uses private IP.
|
||||
|
||||
6. Verify Tailscale still works:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# NVIDIA DCGM Exporter — GPU metrics for Cockpit
|
||||
# Runs on all GPU node pools (ci-training, ci-compile, gpu-dev)
|
||||
# Runs on all GPU node pools (ci-training, ci-rl, gpu-dev)
|
||||
# Alloy auto-discovers and scrapes these pods via annotations
|
||||
---
|
||||
apiVersion: v1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# DaemonSet image pre-puller — keeps training images cached on GPU nodes
|
||||
# Runs on ci-compile (L4) and ci-training (L40S) pools so training jobs skip the pull.
|
||||
# Runs on ci-rl (L4) and ci-training (L40S) pools so training jobs skip the pull.
|
||||
# Init containers pull :latest tags, then the main container sleeps forever.
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
@@ -27,8 +27,7 @@ spec:
|
||||
- key: k8s.scaleway.com/pool-name
|
||||
operator: In
|
||||
values:
|
||||
- ci-compile
|
||||
- ci-compile # remove after terragrunt apply renames pool
|
||||
- ci-rl
|
||||
- ci-training
|
||||
tolerations:
|
||||
- key: nvidia.com/gpu
|
||||
|
||||
@@ -1,21 +1,3 @@
|
||||
# Terraform state renames — prevents destroy+recreate of state entries.
|
||||
# Pool name attribute changes (always-on→services, ci-build→ci-training)
|
||||
# will still force replacement since Scaleway pool names are immutable.
|
||||
moved {
|
||||
from = scaleway_k8s_pool.always_on
|
||||
to = scaleway_k8s_pool.services
|
||||
}
|
||||
|
||||
moved {
|
||||
from = scaleway_k8s_pool.ci_build
|
||||
to = scaleway_k8s_pool.ci_training
|
||||
}
|
||||
|
||||
moved {
|
||||
from = scaleway_k8s_pool.ci_compile
|
||||
to = scaleway_k8s_pool.ci_rl
|
||||
}
|
||||
|
||||
resource "scaleway_vpc_private_network" "foxhunt" {
|
||||
name = "${var.cluster_name}-pn"
|
||||
region = var.region
|
||||
|
||||
Reference in New Issue
Block a user