resume: migrate PVC from proxmox-lvm to NFS

Wave 1 LUN-cap relief. Reactive Resume stores user-uploaded PDFs +
3 .txt counters under uploads/ and statistics/ — no embedded DB,
112K of data. Service is at replicas=0 (browserless OOM scaledown,
unrelated to this work) so the migration was no-downtime.

Net: -1 SCSI LUN once resume is brought back up.
This commit is contained in:
Viktor Barzin 2026-05-26 02:36:20 +00:00
parent cdbb418f45
commit a2b410f6c9

View file

@ -170,33 +170,14 @@ resource "kubernetes_service" "printer" {
}
}
resource "kubernetes_persistent_volume_claim" "data_proxmox" {
wait_until_bound = false
metadata {
name = "resume-data-proxmox"
namespace = kubernetes_namespace.resume.metadata[0].name
annotations = {
"resize.topolvm.io/threshold" = "10%"
"resize.topolvm.io/increase" = "100%"
"resize.topolvm.io/storage_limit" = "5Gi"
}
}
spec {
access_modes = ["ReadWriteOnce"]
storage_class_name = "proxmox-lvm"
resources {
requests = {
storage = "1Gi"
}
}
}
lifecycle {
# The autoresizer expands requests.storage up to storage_limit and
# PVCs can't shrink. Without this, every TF apply tries to revert
# to the spec value, K8s rejects the shrink, and the PVC ends up
# in Terminating-but-in-use limbo.
ignore_changes = [spec[0].resources[0].requests]
}
module "nfs_data_host" {
source = "../../modules/kubernetes/nfs_volume"
name = "resume-data-host"
namespace = kubernetes_namespace.resume.metadata[0].name
nfs_server = var.nfs_server
nfs_path = "/srv/nfs/resume"
storage = "1Gi"
access_modes = ["ReadWriteOnce"]
}
# Reactive Resume app
@ -339,7 +320,7 @@ resource "kubernetes_deployment" "resume" {
volume {
name = "data"
persistent_volume_claim {
claim_name = kubernetes_persistent_volume_claim.data_proxmox.metadata[0].name
claim_name = module.nfs_data_host.claim_name
}
}
}