[ci skip] Phase 1: PostgreSQL migrated to CNPG on local disk

Major milestone - shared PostgreSQL moved from NFS to CloudNativePG:
- CNPG cluster (pg-cluster) running in dbaas namespace on local-path storage
- PostGIS image (ghcr.io/cloudnative-pg/postgis:16) for dawarich compatibility
- All 20 databases and 19 roles restored from pg_dumpall backup
- postgresql.dbaas Service patched to point at CNPG primary
- Old PG deployment scaled to 0 (NFS data intact for rollback)
- All 12+ dependent services verified running:
  authentik, n8n, dawarich, tandoor, linkwarden, netbox, woodpecker,
  rybbit, affine, health, resume, trading-bot, atuin
- Authentik PgBouncer working through the switched endpoint

TODO: codify CNPG cluster in Terraform, add 2nd replica, update backup CronJob
This commit is contained in:
Viktor Barzin 2026-02-28 19:08:06 +00:00
parent 7724214054
commit 9d9c8fdc12
No known key found for this signature in database
GPG key ID: 0EB088298288D958
26 changed files with 733 additions and 7 deletions

View file

@ -47,8 +47,9 @@ resource "kubernetes_namespace" "trading-bot" {
metadata {
name = "trading-bot"
labels = {
tier = local.tiers.edge
"resource-governance/custom-quota" = "true"
tier = local.tiers.edge
"resource-governance/custom-quota" = "true"
"goldilocks.fairwinds.com/vpa-update-mode" = "off"
}
}
}
@ -265,6 +266,10 @@ resource "kubernetes_deployment" "trading-bot-workers" {
value = env.value
}
}
env {
name = "TRADING_OTEL_METRICS_PORT"
value = "9091"
}
resources {
requests = {
cpu = "10m"
@ -288,6 +293,10 @@ resource "kubernetes_deployment" "trading-bot-workers" {
value = env.value
}
}
env {
name = "TRADING_OTEL_METRICS_PORT"
value = "9092"
}
resources {
requests = {
cpu = "100m"
@ -311,6 +320,10 @@ resource "kubernetes_deployment" "trading-bot-workers" {
value = env.value
}
}
env {
name = "TRADING_OTEL_METRICS_PORT"
value = "9093"
}
resources {
requests = {
cpu = "10m"
@ -334,6 +347,10 @@ resource "kubernetes_deployment" "trading-bot-workers" {
value = env.value
}
}
env {
name = "TRADING_OTEL_METRICS_PORT"
value = "9094"
}
resources {
requests = {
cpu = "10m"
@ -357,6 +374,10 @@ resource "kubernetes_deployment" "trading-bot-workers" {
value = env.value
}
}
env {
name = "TRADING_OTEL_METRICS_PORT"
value = "9095"
}
resources {
requests = {
cpu = "10m"
@ -380,6 +401,10 @@ resource "kubernetes_deployment" "trading-bot-workers" {
value = env.value
}
}
env {
name = "TRADING_OTEL_METRICS_PORT"
value = "9096"
}
resources {
requests = {
cpu = "10m"

View file

@ -0,0 +1,10 @@
# Generated by Terragrunt. Sig: nIlQXj57tbuaRZEa
locals {
tiers = {
core = "0-core"
cluster = "1-cluster"
gpu = "2-gpu"
edge = "3-edge"
aux = "4-aux"
}
}