From 5089e8607dade75421a4089a5ed82e3aef684d7b Mon Sep 17 00:00:00 2001 From: Mayne0213 Date: Fri, 9 Jan 2026 14:05:54 +0900 Subject: [PATCH] CHORE(resources): set memory limits equal to memory requests Align memory limits with memory requests for guaranteed QoS class. - prometheus, thanos (query, storegateway, compactor) - alertmanager, tempo, goldilocks (dashboard, controller) - node-exporter, opentelemetry-collector, vpa, kube-state-metrics --- alertmanager/helm-values.yaml | 2 +- goldilocks/helm-values.yaml | 4 ++-- kube-state-metrics/helm-values.yaml | 2 +- loki/helm-values.yaml | 22 ++++++++++------------ node-exporter/helm-values.yaml | 2 +- opentelemetry-collector/helm-values.yaml | 2 +- prometheus/helm-values.yaml | 2 +- tempo/helm-values.yaml | 2 +- thanos/helm-values.yaml | 6 +++--- vpa/helm-values.yaml | 2 +- 10 files changed, 22 insertions(+), 24 deletions(-) diff --git a/alertmanager/helm-values.yaml b/alertmanager/helm-values.yaml index ce4d580..6b4cf22 100644 --- a/alertmanager/helm-values.yaml +++ b/alertmanager/helm-values.yaml @@ -26,7 +26,7 @@ resources: cpu: 15m memory: 100Mi limits: - memory: 150Mi + memory: 100Mi # Disable default config - use secret instead config: diff --git a/goldilocks/helm-values.yaml b/goldilocks/helm-values.yaml index e937e7f..5b9b97d 100644 --- a/goldilocks/helm-values.yaml +++ b/goldilocks/helm-values.yaml @@ -11,7 +11,7 @@ dashboard: cpu: 15m memory: 100Mi limits: - memory: 150Mi + memory: 100Mi service: type: ClusterIP @@ -54,7 +54,7 @@ controller: cpu: 15m memory: 100Mi limits: - memory: 150Mi + memory: 100Mi # Enable VPA recommendations for all namespaces # Set to false to only monitor namespaces with the label: goldilocks.fairwinds.com/enabled=true diff --git a/kube-state-metrics/helm-values.yaml b/kube-state-metrics/helm-values.yaml index 8125951..b7f458b 100644 --- a/kube-state-metrics/helm-values.yaml +++ b/kube-state-metrics/helm-values.yaml @@ -12,7 +12,7 @@ resources: cpu: 15m memory: 100Mi limits: - memory: 150Mi + memory: 100Mi # Schedule on control-plane node nodeSelector: diff --git a/loki/helm-values.yaml b/loki/helm-values.yaml index ca2a65c..9f8a965 100644 --- a/loki/helm-values.yaml +++ b/loki/helm-values.yaml @@ -20,9 +20,9 @@ loki: ruler: loki admin: loki - # Single binary mode with 2 replicas + # Single binary mode with 1 replica commonConfig: - replication_factor: 2 + replication_factor: 1 # Schema config schemaConfig: @@ -49,18 +49,16 @@ loki: deploymentMode: SingleBinary singleBinary: - replicas: 2 + replicas: 1 persistence: enabled: false - affinity: - podAntiAffinity: - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 100 - podAffinityTerm: - labelSelector: - matchLabels: - app.kubernetes.io/name: loki - topologyKey: kubernetes.io/hostname + # Run on master node for stability (consistent with Thanos/Tempo) + tolerations: + - key: node-role.kubernetes.io/control-plane + operator: Exists + effect: NoSchedule + nodeSelector: + node-role.kubernetes.io/control-plane: "true" extraEnvFrom: - secretRef: name: minio-s3-credentials diff --git a/node-exporter/helm-values.yaml b/node-exporter/helm-values.yaml index 00a877c..d107eb2 100644 --- a/node-exporter/helm-values.yaml +++ b/node-exporter/helm-values.yaml @@ -11,7 +11,7 @@ resources: cpu: 15m memory: 64Mi limits: - memory: 96Mi + memory: 64Mi service: type: ClusterIP diff --git a/opentelemetry-collector/helm-values.yaml b/opentelemetry-collector/helm-values.yaml index ae6353b..76b52cf 100644 --- a/opentelemetry-collector/helm-values.yaml +++ b/opentelemetry-collector/helm-values.yaml @@ -28,7 +28,7 @@ resources: cpu: 25m memory: 64Mi limits: - memory: 256Mi + memory: 64Mi # ============================================================================= # Tolerations (run on all nodes including master) diff --git a/prometheus/helm-values.yaml b/prometheus/helm-values.yaml index b34b82e..e19bfc4 100644 --- a/prometheus/helm-values.yaml +++ b/prometheus/helm-values.yaml @@ -86,7 +86,7 @@ prometheus: cpu: 50m memory: 512Mi limits: - memory: 768Mi + memory: 512Mi # ServiceMonitor 자동 발견 - 모든 ServiceMonitor 선택 serviceMonitorSelectorNilUsesHelmValues: false diff --git a/tempo/helm-values.yaml b/tempo/helm-values.yaml index 25ca824..f307bbe 100644 --- a/tempo/helm-values.yaml +++ b/tempo/helm-values.yaml @@ -23,7 +23,7 @@ resources: cpu: 50m memory: 128Mi limits: - memory: 512Mi + memory: 128Mi # ============================================================================= # Tempo Configuration diff --git a/thanos/helm-values.yaml b/thanos/helm-values.yaml index 229758f..617804c 100644 --- a/thanos/helm-values.yaml +++ b/thanos/helm-values.yaml @@ -56,7 +56,7 @@ query: cpu: 15m memory: 128Mi limits: - memory: 256Mi + memory: 128Mi # ============================================================================= # Query Frontend - Caching layer for Query (optional, disabled for small cluster) @@ -84,7 +84,7 @@ storegateway: cpu: 15m memory: 128Mi limits: - memory: 512Mi + memory: 128Mi persistence: enabled: true @@ -115,7 +115,7 @@ compactor: cpu: 15m memory: 128Mi limits: - memory: 512Mi + memory: 128Mi persistence: enabled: true diff --git a/vpa/helm-values.yaml b/vpa/helm-values.yaml index 27c64f3..54119f6 100644 --- a/vpa/helm-values.yaml +++ b/vpa/helm-values.yaml @@ -11,7 +11,7 @@ recommender: cpu: 15m memory: 128Mi limits: - memory: 192Mi + memory: 128Mi # Schedule on control-plane node nodeSelector: