Remove all CPU limits cluster-wide to eliminate CFS throttling

CPU limits cause CFS throttling even when nodes have idle capacity.
Move to a request-only CPU model: keep CPU requests for scheduling
fairness but remove all CPU limits. Memory limits stay (incompressible).

Changes across 108 files:
- Kyverno LimitRange policy: remove cpu from default/max in all 6 tiers
- Kyverno ResourceQuota policy: remove limits.cpu from all 5 tiers
- Custom ResourceQuotas: remove limits.cpu from 8 namespace quotas
- Custom LimitRanges: remove cpu from default/max (nextcloud, onlyoffice)
- RBAC module: remove cpu_limits variable and quota reference
- Freedify factory: remove cpu_limit variable and limits reference
- 86 deployment files: remove cpu from all limits blocks
- 6 Helm values files: remove cpu under limits sections
This commit is contained in:
Viktor Barzin 2026-03-14 08:51:45 +00:00
parent 120f83ce93
commit b00f810d3d
108 changed files with 609 additions and 435 deletions

View file

@ -9,8 +9,8 @@ variable "sync_id" {
default = null # If not passed, we won't run banksync
}
variable "budget_encryption_password" {
type = string
default = null # If not passed, we won't run banksync ;known after initial installation
type = string
default = null # If not passed, we won't run banksync ;known after initial installation
sensitive = true
}
variable "nfs_server" { type = string }
@ -102,11 +102,11 @@ resource "kubernetes_service" "actualbudget" {
}
module "ingress" {
source = "../../../modules/kubernetes/ingress_factory"
namespace = "actualbudget"
name = "budget-${var.name}"
tls_secret_name = var.tls_secret_name
rybbit_site_id = "3e6b6b68088a"
source = "../../../modules/kubernetes/ingress_factory"
namespace = "actualbudget"
name = "budget-${var.name}"
tls_secret_name = var.tls_secret_name
rybbit_site_id = "3e6b6b68088a"
extra_annotations = var.homepage_annotations
}
@ -152,7 +152,6 @@ resource "kubernetes_deployment" "actualbudget-http-api" {
memory = "128Mi"
}
limits = {
cpu = "500m"
memory = "512Mi"
}
}