Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 69 additions & 0 deletions 10-cluster/scaleway/argocd.tf
Original file line number Diff line number Diff line change
Expand Up @@ -147,11 +147,80 @@ configs:
dex:
enabled: false

# Chart ships resources: {} for every component below by default —
# confirmed live 2026-08-11: with every platform chart requestless (this
# one included), the scheduler has nothing to balance the pool's 2 nodes on
# and Cluster Autoscaler never sees a reason to reach for the 3rd, so a
# fresh scaleway-homelab boot piles ~30 pods onto one node's worth of real
# RAM and OOMs (see gitops repo's services/platform/cert-manager/applications/scaleway/chart.vendor.yaml
# for the fix applied to the rest of the platform, same reasoning here).
#
# Sized from `kubectl top pods -n argocd` on the live cluster (2026-08-11,
# two samples ~15min apart), not from chart-doc guesses — a first pass
# anchored on generic recommendations instead of this cluster's actual
# usage left controller's limit (512Mi) barely above its observed 405-471Mi,
# no real headroom at all. controller is the standout: it watches the live
# state of every resource this whole GitOps repo manages, so its memory
# scales with total tracked resource count, not just "idle controller
# usage" — request is set above the observed band, limit well above it.
# repoServer's memory/CPU spikes with whatever chart it's rendering at that
# moment (kube-prometheus-stack is the largest one synced here), hence the
# same generous limit despite low observed idle usage (8m/131Mi).
controller:
replicas: 1
resources:
requests:
cpu: 50m
memory: 512Mi
limits:
cpu: 1000m
memory: 1024Mi

repoServer:
replicas: 1
resources:
requests:
cpu: 25m
memory: 192Mi
limits:
cpu: 1000m
memory: 768Mi

server:
resources:
requests:
cpu: 10m
memory: 64Mi
limits:
cpu: 100m
memory: 128Mi

redis:
resources:
requests:
cpu: 10m
memory: 64Mi
limits:
cpu: 100m
memory: 128Mi

applicationSet:
resources:
requests:
cpu: 10m
memory: 64Mi
limits:
cpu: 100m
memory: 128Mi

notifications:
resources:
requests:
cpu: 10m
memory: 32Mi
limits:
cpu: 50m
memory: 64Mi
EOF
]
}
Expand Down
Loading