- Split single H100 GPU pool into two purpose-specific pools: - gpu-training: H100-1-80G (€2.73/hr) for 10-model ensemble training - gpu-inference: L4-1-24G (€0.75/hr) for cost-effective trading inference - Add GPU taint controller DaemonSet that auto-taints new GPU nodes with nvidia.com/gpu=true:NoSchedule to prevent non-GPU workloads - Fix service log directory permissions with emptyDir volumes (observability init fails creating /app/logs as non-root user) - Increase postgres max_connections from 25 to 100 (7 services each requesting connection pools exhausted the limit) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
71 lines
1.6 KiB
HCL
71 lines
1.6 KiB
HCL
variable "region" {
|
|
description = "Scaleway region for the Kapsule cluster"
|
|
type = string
|
|
}
|
|
|
|
variable "cluster_name" {
|
|
description = "Name of the Kubernetes cluster"
|
|
type = string
|
|
default = "foxhunt"
|
|
}
|
|
|
|
variable "k8s_version" {
|
|
description = "Kubernetes version for the Kapsule cluster"
|
|
type = string
|
|
default = "1.34"
|
|
}
|
|
|
|
variable "always_on_type" {
|
|
description = "Instance type for the always-on node pool"
|
|
type = string
|
|
default = "DEV1-M"
|
|
}
|
|
|
|
variable "ci_type" {
|
|
description = "Instance type for the CI node pool"
|
|
type = string
|
|
default = "GP1-XS"
|
|
}
|
|
|
|
variable "ci_max_size" {
|
|
description = "Maximum number of nodes in the CI pool"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "enable_gpu_training_pool" {
|
|
description = "Create GPU node pool for ML training (H100)"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "gpu_training_type" {
|
|
description = "Instance type for the GPU training node pool"
|
|
type = string
|
|
default = "H100-1-80G"
|
|
}
|
|
|
|
variable "gpu_training_max_size" {
|
|
description = "Maximum number of nodes in the GPU training pool"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "enable_gpu_inference_pool" {
|
|
description = "Create GPU node pool for inference (L4)"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "gpu_inference_type" {
|
|
description = "Instance type for the GPU inference node pool"
|
|
type = string
|
|
default = "L4-1-24G"
|
|
}
|
|
|
|
variable "gpu_inference_max_size" {
|
|
description = "Maximum number of nodes in the GPU inference pool"
|
|
type = number
|
|
default = 1
|
|
}
|