PERF(observability): optimize resources via VPA

- alertmanager: CPU 15m/15m, memory 100Mi/100Mi
- blackbox-exporter: CPU 15m/32m, memory 100Mi/100Mi
- goldilocks: controller 15m/25m, dashboard 15m/15m
- grafana: CPU 22m/24m, memory 144Mi/242Mi (upperBound)
- kube-state-metrics: CPU 15m/15m, memory 100Mi/100Mi
- loki: CPU 10m/69m, memory 225Mi/323Mi
- node-exporter: CPU 15m/15m, memory 100Mi/100Mi
- opentelemetry: CPU 34m/410m, memory 142Mi/1024Mi
- prometheus-operator: CPU 15m/15m, memory 100Mi/100Mi
- tempo: CPU 15m/15m, memory 100Mi/109Mi
- thanos: CPU 15m/15m, memory 100Mi/126Mi
- vpa: CPU 15m/15m, memory 100Mi/100Mi
This commit is contained in:
2026-01-12 01:07:58 +09:00
parent a70403d1ae
commit 3b5bf20902
12 changed files with 47 additions and 17 deletions

View File

@@ -21,11 +21,13 @@ affinity:
persistence:
enabled: false
# Resource settings (VPA lowerBound/target)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
cpu: 15m
memory: 100Mi
# Disable default config - use secret instead

View File

@@ -5,11 +5,13 @@ fullnameOverride: blackbox-exporter
replicas: 1
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 23m
cpu: 15m
memory: 100Mi
limits:
cpu: 32m
memory: 100Mi
config:

View File

@@ -6,11 +6,13 @@ dashboard:
enabled: true
replicaCount: 1
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
cpu: 15m
memory: 100Mi
service:
@@ -49,11 +51,13 @@ controller:
enabled: true
replicaCount: 1
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
cpu: 25m
memory: 100Mi
# Enable VPA recommendations for all namespaces

View File

@@ -39,12 +39,14 @@ podSecurityContext:
fsGroup: 472
fsGroupChangePolicy: "Always"
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 23m
memory: 256Mi
cpu: 22m
memory: 144Mi
limits:
memory: 256Mi
cpu: 24m
memory: 242Mi
service:
type: ClusterIP

View File

@@ -7,12 +7,14 @@ fullnameOverride: kube-state-metrics
# Note: kube-state-metrics는 stateless이지만, 여러 replica는 동일한 메트릭을 중복 생성하므로
# 단일 replica로 실행하는 것이 권장됩니다.
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 15m
memory: 105Mi
memory: 100Mi
limits:
memory: 105Mi
cpu: 15m
memory: 100Mi
service:
type: ClusterIP

View File

@@ -60,12 +60,14 @@ singleBinary:
mountPath: /var/loki
# Medium priority for observability
priorityClassName: medium-priority
# Resource settings (VPA lowerBound/target)
resources:
requests:
cpu: 63m
memory: 363Mi
cpu: 10m
memory: 225Mi
limits:
memory: 363Mi
cpu: 69m
memory: 323Mi
# Disable components not needed in single binary mode
backend:

View File

@@ -6,11 +6,13 @@ fullnameOverride: node-exporter
hostNetwork: true
hostPID: true
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
cpu: 15m
memory: 100Mi
service:

View File

@@ -28,14 +28,15 @@ image:
mode: daemonset
# =============================================================================
# Resource Limits (based on VPA recommendation)
# Resource Limits (VPA lowerBound/upperBound, mem limit capped at 1024Mi)
# =============================================================================
resources:
requests:
cpu: 25m
memory: 400Mi
cpu: 34m
memory: 142Mi
limits:
memory: 400Mi
cpu: 410m
memory: 1024Mi
# =============================================================================
# Environment Variables

View File

@@ -14,6 +14,14 @@ prometheusOperator:
enabled: true
# CRD 생성 비활성화
createCustomResource: false
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
cpu: 15m
memory: 100Mi
# Kubelet ServiceMonitor with cluster label
kubelet:

View File

@@ -17,13 +17,14 @@ replicas: 1
# Tempo Configuration
# =============================================================================
tempo:
# Resource Limits (optimized for small cluster)
# Resource settings (VPA lowerBound/target)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
memory: 100Mi
cpu: 15m
memory: 109Mi
# Receivers - protocols Tempo accepts
receivers:
otlp:

View File

@@ -46,12 +46,14 @@ query:
- --query.replica-label=prometheus_replica
- --query.auto-downsampling
# Resource settings (VPA lowerBound/target)
resources:
requests:
cpu: 15m
memory: 283Mi
memory: 100Mi
limits:
memory: 283Mi
cpu: 15m
memory: 126Mi
# =============================================================================
# Query Frontend - Caching layer for Query (optional, disabled for small cluster)

View File

@@ -6,11 +6,13 @@ recommender:
enabled: true
replicaCount: 1
# Resource settings (VPA lowerBound/upperBound)
resources:
requests:
cpu: 15m
memory: 100Mi
limits:
cpu: 15m
memory: 100Mi
# Updater - applies recommended resource requests to pods