summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-04-04 16:19:12 +0300
committerPaul Buetow <paul@buetow.org>2026-04-04 16:19:12 +0300
commita5247123aa3c4898e8e104003ebf534fc7cc56b8 (patch)
treee033f9388030b69c39c60297f5e647c9989f3580
parent601f3c0453c56014956e02b580433ea9cca0acbb (diff)
feat(immich): add preferred anti-affinity and resources to balance load
-rw-r--r--f3s/argocd-apps/services/immich.yaml48
-rw-r--r--f3s/immich/values.yaml43
2 files changed, 75 insertions, 16 deletions
diff --git a/f3s/argocd-apps/services/immich.yaml b/f3s/argocd-apps/services/immich.yaml
index 1f28476..3ae8450 100644
--- a/f3s/argocd-apps/services/immich.yaml
+++ b/f3s/argocd-apps/services/immich.yaml
@@ -34,12 +34,24 @@ spec:
existingClaim: "immich-library-pvc"
server:
enabled: true
- controllers:
- main:
- containers:
- main:
- image:
- tag: v2.5.5
+ resources:
+ requests:
+ cpu: 500m
+ memory: 512Mi
+ limits:
+ memory: 1Gi
+ affinity:
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 100
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app.kubernetes.io/name
+ operator: In
+ values:
+ - machine-learning
+ topologyKey: "kubernetes.io/hostname"
persistence:
ext-albena-rw:
enabled: true
@@ -82,12 +94,24 @@ spec:
port: 2283
machine-learning:
enabled: true
- controllers:
- main:
- containers:
- main:
- image:
- tag: v2.5.5
+ resources:
+ requests:
+ cpu: 500m
+ memory: 512Mi
+ limits:
+ memory: 1Gi
+ affinity:
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 100
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app.kubernetes.io/name
+ operator: In
+ values:
+ - server
+ topologyKey: "kubernetes.io/hostname"
persistence:
cache:
enabled: true
diff --git a/f3s/immich/values.yaml b/f3s/immich/values.yaml
index 4063242..1354e84 100644
--- a/f3s/immich/values.yaml
+++ b/f3s/immich/values.yaml
@@ -19,9 +19,27 @@ immich:
library:
existingClaim: "immich-library-pvc"
-# Server component with ingress
+# Server component configuration
server:
enabled: true
+ resources:
+ requests:
+ cpu: 500m
+ memory: 512Mi
+ limits:
+ memory: 1Gi
+ affinity:
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 100
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app.kubernetes.io/name
+ operator: In
+ values:
+ - machine-learning
+ topologyKey: "kubernetes.io/hostname"
ingress:
main:
enabled: true
@@ -38,9 +56,27 @@ server:
identifier: main
port: 2283
-# Machine Learning component with cache persistence
+# Machine Learning component configuration
machine-learning:
enabled: true
+ resources:
+ requests:
+ cpu: 500m
+ memory: 512Mi
+ limits:
+ memory: 1Gi
+ affinity:
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 100
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app.kubernetes.io/name
+ operator: In
+ values:
+ - server
+ topologyKey: "kubernetes.io/hostname"
persistence:
cache:
enabled: true
@@ -49,8 +85,7 @@ machine-learning:
storageClass: ""
existingClaim: "immich-ml-cache-pvc"
-# PostgreSQL database configuration
-# Note: You'll need to configure database connection via environment variables
+# Global controller settings for main app
controllers:
main:
containers: