diff --git a/loki/helm-values.yaml b/loki/helm-values.yaml index 48edf2c..6e43a98 100644 --- a/loki/helm-values.yaml +++ b/loki/helm-values.yaml @@ -45,10 +45,20 @@ loki: deploymentMode: SingleBinary singleBinary: - replicas: 1 + replicas: 2 # Disable PVC - use emptyDir for WAL (data stored in MinIO) persistence: enabled: false + # Soft anti-affinity for HA + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 100 + podAffinityTerm: + labelSelector: + matchLabels: + app.kubernetes.io/name: loki + topologyKey: kubernetes.io/hostname extraVolumes: - name: data emptyDir: diff --git a/prometheus/helm-values.yaml b/prometheus/helm-values.yaml index 396722d..e75b12e 100644 --- a/prometheus/helm-values.yaml +++ b/prometheus/helm-values.yaml @@ -70,7 +70,7 @@ prometheus: # Enable remote write receiver for OTel Collector enableRemoteWriteReceiver: true - # Single replica (HA removed for resource optimization) + # Single replica replicas: 1 replicaExternalLabelName: prometheus_replica diff --git a/tempo/helm-values.yaml b/tempo/helm-values.yaml index 8f5684c..b05b76d 100644 --- a/tempo/helm-values.yaml +++ b/tempo/helm-values.yaml @@ -10,6 +10,20 @@ # Medium priority for observability priorityClassName: medium-priority +# HA with 2 replicas +replicas: 2 + +# Soft anti-affinity for HA +affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 100 + podAffinityTerm: + labelSelector: + matchLabels: + app.kubernetes.io/name: tempo + topologyKey: kubernetes.io/hostname + # ============================================================================= # Resource Limits (optimized for small cluster) # =============================================================================