Compare commits

..
Author SHA1 Message Date
Ruben Hensen 1f894996e6 docs: memory limits on the roadmap 2026-10-28 14:58:03 +01:00
Ruben Hensen c380bfc0cf Memory limits from a day of measurements 2026-10-28 14:57:34 +01:00
Ruben Hensen c3597ef0a6 Merge pull request #45 from rubenhensen/renovate/mariadb-operator-26.x
chore(deps): update helm chart mariadb-operator to v26
2026-10-27 10:43:09 +01:00
Ruben Hensen baa8c70b55 Merge pull request #46 from rubenhensen/renovate/mariadb-operator-crds-26.x
chore(deps): update helm chart mariadb-operator-crds to v26
2026-10-27 10:38:31 +01:00
Ruben Hensen 1efa6c2b93 Merge pull request #40 from rubenhensen/renovate/ghcr.io-cloudnative-pg-postgresql-17.x
chore(deps): update ghcr.io/cloudnative-pg/postgresql docker tag to v17.11
2026-10-27 09:51:44 +01:00
Ruben Hensen 15a92294a6 Merge pull request #41 from rubenhensen/renovate/actualbudget-1.x
chore(deps): update helm chart actualbudget to v1.9.5
2026-10-27 09:31:49 +01:00
Ruben Hensen 144b9dda2b Merge pull request #48 from rubenhensen/renovate/docker.io-envoyproxy-gateway-helm-1.x
chore(deps): update docker.io/envoyproxy/gateway-helm docker tag to v1.9.3
2026-10-27 09:31:28 +01:00
Ruben Hensen 920e54b43c Merge pull request #44 from rubenhensen/renovate/ubuntu-26.x
chore(deps): update dependency ubuntu to v26
2026-10-27 09:31:03 +01:00
Ruben Hensen 665147a691 Merge pull request #43 from rubenhensen/renovate/python-3.x
chore(deps): update python docker tag to v3.15
2026-10-27 09:30:50 +01:00
renovate[bot] 1ba1d5f1a0 chore(deps): update ghcr.io/cloudnative-pg/postgresql docker tag to v17.11 2026-10-27 08:30:49 +00:00
Ruben Hensen 285a64f980 Merge pull request #38 from rubenhensen/renovate/alpine-git-2.x
chore(deps): update alpine/git docker tag to v2.54.0
2026-10-27 09:30:32 +01:00
Ruben Hensen 6cf41b0f14 Merge pull request #37 from rubenhensen/renovate/freshrss-freshrss-1.x
chore(deps): update freshrss/freshrss docker tag to v1.30.4
2026-10-27 09:30:16 +01:00
renovate[bot] 5678adfa82 chore(deps): update freshrss/freshrss docker tag to v1.30.4 2026-10-26 23:02:19 +00:00
Ruben Hensen 2e2d367f63 Merge pull request #57 from rubenhensen/roadmap-cnpg
docs: CNPG backups and the infra NetworkPolicies are in
2026-10-27 00:00:51 +01:00
renovate[bot] a36fc6f348 chore(deps): update python docker tag to v3.15 2026-10-26 22:28:58 +00:00
renovate[bot] f6186d5a11 chore(deps): update helm chart mariadb-operator-crds to v26 2026-10-26 21:54:29 +00:00
renovate[bot] 2ccaea24a8 chore(deps): update helm chart mariadb-operator to v26 2026-10-26 21:54:25 +00:00
renovate[bot] a2abb66fea chore(deps): update dependency ubuntu to v26 2026-10-26 21:54:19 +00:00
renovate[bot] b721c80599 chore(deps): update helm chart actualbudget to v1.9.5 2026-10-26 21:54:08 +00:00
renovate[bot] 09026a5ff0 chore(deps): update alpine/git docker tag to v2.54.0 2026-10-26 21:54:03 +00:00
renovate[bot] 1fcfd3ad61 chore(deps): update docker.io/envoyproxy/gateway-helm docker tag to v1.9.3 2026-10-26 21:53:47 +00:00
23 changed files with 84 additions and 15 deletions

No files matched your search

+1 -1
View File
@@ -18,7 +18,7 @@ concurrency:
jobs: jobs:
validate: validate:
runs-on: ubuntu-24.04 runs-on: ubuntu-26.04
timeout-minutes: 20 timeout-minutes: 20
steps: steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+1 -1
View File
@@ -12,7 +12,7 @@ spec:
project: default project: default
source: source:
repoURL: https://community-charts.github.io/helm-charts repoURL: https://community-charts.github.io/helm-charts
targetRevision: 1.8.9 targetRevision: 1.9.5
chart: actualbudget chart: actualbudget
helm: helm:
values: | values: |
+4
View File
@@ -103,6 +103,8 @@ spec:
requests: requests:
cpu: 70m cpu: 70m
memory: 560Mi memory: 560Mi
limits:
memory: 1536Mi
volumes: volumes:
- name: patched-ca-bundle - name: patched-ca-bundle
configMap: configMap:
@@ -192,6 +194,8 @@ spec:
requests: requests:
cpu: 100m cpu: 100m
memory: 336Mi memory: 336Mi
limits:
memory: 1Gi
volumes: volumes:
- name: patched-ca-bundle - name: patched-ca-bundle
configMap: configMap:
+6
View File
@@ -38,16 +38,22 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 48Mi memory: 48Mi
limits:
memory: 128Mi
cainjector: cainjector:
resources: resources:
requests: requests:
cpu: 10m cpu: 10m
memory: 80Mi memory: 80Mi
limits:
memory: 256Mi
webhook: webhook:
resources: resources:
requests: requests:
cpu: 10m cpu: 10m
memory: 32Mi memory: 32Mi
limits:
memory: 128Mi
syncPolicy: syncPolicy:
syncOptions: syncOptions:
- CreateNamespace=true - CreateNamespace=true
+2
View File
@@ -28,6 +28,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 48Mi memory: 48Mi
limits:
memory: 128Mi
destination: destination:
server: https://kubernetes.default.svc server: https://kubernetes.default.svc
namespace: cnpg-system namespace: cnpg-system
+1 -1
View File
@@ -12,7 +12,7 @@ spec:
repoURL: docker.io/envoyproxy repoURL: docker.io/envoyproxy
chart: gateway-helm chart: gateway-helm
# v1.9 supports Kubernetes 1.33 to 1.36 # v1.9 supports Kubernetes 1.33 to 1.36
targetRevision: v1.9.2 targetRevision: 1.9.3
helm: helm:
values: | values: |
config: config:
@@ -24,16 +24,22 @@ spec:
requests: requests:
cpu: 20m cpu: 20m
memory: 64Mi memory: 64Mi
limits:
memory: 128Mi
certController: certController:
resources: resources:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 128Mi
webhook: webhook:
resources: resources:
requests: requests:
cpu: 10m cpu: 10m
memory: 32Mi memory: 32Mi
limits:
memory: 128Mi
destination: destination:
server: https://kubernetes.default.svc server: https://kubernetes.default.svc
namespace: external-secrets namespace: external-secrets
@@ -21,6 +21,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 128Mi
destination: destination:
server: https://kubernetes.default.svc server: https://kubernetes.default.svc
namespace: cnpg-system namespace: cnpg-system
+16 -2
View File
@@ -1,6 +1,6 @@
# Requests from what the components used on 2026-10-25 (kubectl top every # Requests from what the components used on 2026-10-25 (kubectl top every
# 5 minutes; highest value plus 10%). No limits until there are daytime # 5 minutes; highest value plus 10%). Memory limits at about twice the
# numbers, see docs/roadmap.md. # highest value seen then or on 2026-10-27, rounded up; no CPU limits.
apiVersion: apps/v1 apiVersion: apps/v1
kind: StatefulSet kind: StatefulSet
metadata: metadata:
@@ -14,6 +14,8 @@ spec:
requests: requests:
cpu: 150m cpu: 150m
memory: 704Mi memory: 704Mi
limits:
memory: 2560Mi
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -28,6 +30,8 @@ spec:
requests: requests:
cpu: 100m cpu: 100m
memory: 128Mi memory: 128Mi
limits:
memory: 512Mi
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -42,6 +46,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 256Mi
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -56,6 +62,8 @@ spec:
requests: requests:
cpu: 20m cpu: 20m
memory: 96Mi memory: 96Mi
limits:
memory: 256Mi
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -70,6 +78,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 48Mi memory: 48Mi
limits:
memory: 128Mi
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -84,6 +94,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 48Mi memory: 48Mi
limits:
memory: 128Mi
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -98,3 +110,5 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 32Mi memory: 32Mi
limits:
memory: 128Mi
+2
View File
@@ -67,6 +67,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 512Mi
env: env:
# Newer boto3 adds checksums that S3-compatible stores can reject; # Newer boto3 adds checksums that S3-compatible stores can reject;
# the plugin's docs suggest sending them only when required. # the plugin's docs suggest sending them only when required.
+3 -1
View File
@@ -6,7 +6,7 @@ spec:
instances: 1 instances: 1
# Pinned so a new operator default (PostgreSQL 18 since CNPG 1.26.3) can't # Pinned so a new operator default (PostgreSQL 18 since CNPG 1.26.3) can't
# start an in-place major upgrade. CNPG filled this in at creation. # start an in-place major upgrade. CNPG filled this in at creation.
imageName: ghcr.io/cloudnative-pg/postgresql:17.4 imageName: ghcr.io/cloudnative-pg/postgresql:17.11
primaryUpdateStrategy: unsupervised primaryUpdateStrategy: unsupervised
# WAL archiving and base backups to Garage, see postgresql-backup.yaml # WAL archiving and base backups to Garage, see postgresql-backup.yaml
plugins: plugins:
@@ -18,6 +18,8 @@ spec:
requests: requests:
cpu: 50m cpu: 50m
memory: 256Mi memory: 256Mi
limits:
memory: 1Gi
bootstrap: bootstrap:
initdb: initdb:
database: authentik database: authentik
+1 -1
View File
@@ -13,7 +13,7 @@ spec:
restartPolicy: Never restartPolicy: Never
containers: containers:
- name: sync - name: sync
image: python:3.12-alpine image: python:3.15-alpine
command: command:
- sh - sh
- -c - -c
+7 -2
View File
@@ -341,8 +341,13 @@ Counted 2026-10-25 over the 73 running containers:
requested. Still without requests: Longhorn (22 containers, its chart), requested. Still without requests: Longhorn (22 containers, its chart),
the Vault servers, the LDAP outpost, immich's PG14 cluster and three in the Vault servers, the LDAP outpost, immich's PG14 cluster and three in
kube-system kube-system
- [ ] Memory limits, once there are daytime numbers: the night ones miss - [x] Memory limits: PR #58, for everything that got requests in #33.
immich's machine learning at work (it idles at 234Mi) About twice the highest memory from `kubectl top` every 5 minutes from
2026-10-26 22:29 to 2026-10-27 21:55 UTC or the night of #33, rounded
up; no CPU limits. No OOM kills that day. immich's machine learning
sat idle all day (240Mi), so on 2026-10-28 a test image went through
CLIP, face recognition and OCR inside the container: 884Mi with all
three loaded, limit 2Gi
- [x] WordPress (scoutingmbg.nl) was OOMKilled at 08:27:59 UTC on - [x] WordPress (scoutingmbg.nl) was OOMKilled at 08:27:59 UTC on
2026-10-25, its third restart: a crawler asked for 88 pages and assets 2026-10-25, its third restart: a crawler asked for 88 pages and assets
within a few seconds (normally ~6 a minute), Apache started a PHP worker within a few seconds (normally ~6 a minute), Apache started a PHP worker
+4 -2
View File
@@ -23,7 +23,7 @@ spec:
io.kompose.service: freshrss io.kompose.service: freshrss
spec: spec:
initContainers: initContainers:
- image: alpine/git:v2.52.0 - image: alpine/git:v2.54.0
name: git name: git
command: command:
- git - git
@@ -74,7 +74,7 @@ spec:
value: Europe/Amsterdam value: Europe/Amsterdam
# 1.30.3 ships PHP 8.4.27, which fixes CVE-2026-109618 and # 1.30.3 ships PHP 8.4.27, which fixes CVE-2026-109618 and
# CVE-2026-109619. # CVE-2026-109619.
image: freshrss/freshrss:1.30.3 image: freshrss/freshrss:1.30.4
name: freshrss name: freshrss
ports: ports:
- containerPort: 80 - containerPort: 80
@@ -83,6 +83,8 @@ spec:
requests: requests:
cpu: 50m cpu: 50m
memory: 176Mi memory: 176Mi
limits:
memory: 512Mi
# TCP, because mod_auth_openidc answers 401 to anything that isn't a # TCP, because mod_auth_openidc answers 401 to anything that isn't a
# browser. # browser.
readinessProbe: readinessProbe:
+2
View File
@@ -54,6 +54,8 @@ spec:
requests: requests:
cpu: 20m cpu: 20m
memory: 336Mi memory: 336Mi
limits:
memory: 1Gi
# /api/healthz checks the database and the cache. # /api/healthz checks the database and the cache.
readinessProbe: readinessProbe:
httpGet: httpGet:
+8 -2
View File
@@ -67,6 +67,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 256Mi
image: image:
repository: docker.io/valkey/valkey repository: docker.io/valkey/valkey
tag: 9.1.2-alpine@sha256:48332870af354a799964c0012ae1194a0bf2bf894eb508f945810596dc2d8d11 tag: 9.1.2-alpine@sha256:48332870af354a799964c0012ae1194a0bf2bf894eb508f945810596dc2d8d11
@@ -93,6 +95,8 @@ spec:
requests: requests:
cpu: 100m cpu: 100m
memory: 1280Mi memory: 1280Mi
limits:
memory: 3Gi
# Node trusts its built-in roots, which still include the # Node trusts its built-in roots, which still include the
# ones above the compromised eMudhra intermediates. Use # ones above the compromised eMudhra intermediates. Use
# patched-ca-bundle through OpenSSL until Node ships a fix. # patched-ca-bundle through OpenSSL until Node ships a fix.
@@ -117,12 +121,14 @@ spec:
image: image:
repository: ghcr.io/immich-app/immich-machine-learning repository: ghcr.io/immich-app/immich-machine-learning
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
# Idle at night (234Mi); the models take over a GiB when # Idle at 240Mi; 884Mi with CLIP, face recognition and
# it works. # OCR loaded (2026-10-28, a test image through each).
resources: resources:
requests: requests:
cpu: 50m cpu: 50m
memory: 1Gi memory: 1Gi
limits:
memory: 2Gi
env: env:
TRANSFORMERS_CACHE: /cache TRANSFORMERS_CACHE: /cache
HF_XET_CACHE: /cache/huggingface-xet HF_XET_CACHE: /cache/huggingface-xet
+2
View File
@@ -71,6 +71,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 512Mi
env: env:
# Newer boto3 adds checksums that S3-compatible stores can reject; # Newer boto3 adds checksums that S3-compatible stores can reject;
# the plugin's docs suggest sending them only when required. # the plugin's docs suggest sending them only when required.
+2
View File
@@ -13,6 +13,8 @@ spec:
requests: requests:
cpu: 20m cpu: 20m
memory: 320Mi memory: 320Mi
limits:
memory: 1Gi
postgresql: postgresql:
shared_preload_libraries: shared_preload_libraries:
+1 -1
View File
@@ -13,7 +13,7 @@ spec:
source: source:
chart: mariadb-operator-crds chart: mariadb-operator-crds
repoURL: https://mariadb-operator.github.io/mariadb-operator repoURL: https://mariadb-operator.github.io/mariadb-operator
targetRevision: 25.10.4 targetRevision: 26.10.2
syncPolicy: syncPolicy:
automated: automated:
prune: true prune: true
+7 -1
View File
@@ -13,13 +13,15 @@ spec:
source: source:
chart: mariadb-operator chart: mariadb-operator
repoURL: https://mariadb-operator.github.io/mariadb-operator repoURL: https://mariadb-operator.github.io/mariadb-operator
targetRevision: 25.10.4 targetRevision: 26.10.2
helm: helm:
values: | values: |
resources: resources:
requests: requests:
cpu: 10m cpu: 10m
memory: 48Mi memory: 48Mi
limits:
memory: 128Mi
metrics: metrics:
enabled: true enabled: true
serviceMonitor: serviceMonitor:
@@ -29,6 +31,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 32Mi memory: 32Mi
limits:
memory: 128Mi
serviceMonitor: serviceMonitor:
enabled: false enabled: false
certController: certController:
@@ -36,6 +40,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 32Mi memory: 32Mi
limits:
memory: 128Mi
serviceMonitor: serviceMonitor:
enabled: false enabled: false
syncPolicy: syncPolicy:
+2
View File
@@ -60,6 +60,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 160Mi memory: 160Mi
limits:
memory: 512Mi
readinessProbe: readinessProbe:
httpGet: httpGet:
path: /login path: /login
+2
View File
@@ -7,6 +7,8 @@ injector:
requests: requests:
cpu: 10m cpu: 10m
memory: 32Mi memory: 32Mi
limits:
memory: 128Mi
# The chart's default anti-affinity forbids two injector pods on one # The chart's default anti-affinity forbids two injector pods on one
# node, so on this single node a rolling update can never start the new # node, so on this single node a rolling update can never start the new
# pod while the old one runs. Recreate removes the old pod first, which # pod while the old one runs. Recreate removes the old pod first, which
+2
View File
@@ -71,6 +71,8 @@ spec:
requests: requests:
cpu: 10m cpu: 10m
memory: 64Mi memory: 64Mi
limits:
memory: 128Mi
# 512Mi got the server OOMKilled 314 times, including halfway # 512Mi got the server OOMKilled 314 times, including halfway
# through a backup of ~14.7k items. # through a backup of ~14.7k items.
resources: resources: