- Loki: disable PVC, use emptyDir for /var/loki - Tempo: switch backend from local to s3 (MinIO) - Tempo: disable PVC, use emptyDir for /var/tempo - Both services no longer use boot volume (/dev/sda1) - WAL data is temporary, persistent data stored in MinIO
106 lines
2.8 KiB
YAML
106 lines
2.8 KiB
YAML
# Tempo Helm Values
|
|
# Chart: https://github.com/grafana/helm-charts/tree/main/charts/tempo
|
|
#
|
|
# Architecture:
|
|
# - Single binary (monolithic) mode for small clusters
|
|
# - S3 (MinIO) for trace storage
|
|
# - OTLP receiver for OpenTelemetry data
|
|
# - Integrates with Grafana for trace visualization
|
|
|
|
# Run on master node for stability
|
|
tolerations:
|
|
- key: node-role.kubernetes.io/control-plane
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
nodeSelector:
|
|
node-role.kubernetes.io/control-plane: "true"
|
|
|
|
# =============================================================================
|
|
# Resource Limits (optimized for small cluster)
|
|
# =============================================================================
|
|
resources:
|
|
requests:
|
|
cpu: 50m
|
|
memory: 128Mi
|
|
limits:
|
|
memory: 128Mi
|
|
|
|
# =============================================================================
|
|
# Tempo Configuration
|
|
# =============================================================================
|
|
tempo:
|
|
# Receivers - protocols Tempo accepts
|
|
receivers:
|
|
otlp:
|
|
protocols:
|
|
grpc:
|
|
endpoint: 0.0.0.0:4317
|
|
http:
|
|
endpoint: 0.0.0.0:4318
|
|
|
|
# Retention settings
|
|
retention: 72h # Keep traces for 3 days
|
|
|
|
# Backend storage (S3/MinIO)
|
|
storage:
|
|
trace:
|
|
backend: s3
|
|
s3:
|
|
bucket: tempo
|
|
endpoint: minio.minio.svc.cluster.local:9000
|
|
insecure: true
|
|
forcepathstyle: true
|
|
wal:
|
|
path: /var/tempo/wal
|
|
|
|
# Query settings
|
|
querier:
|
|
frontend_worker:
|
|
frontend_address: ""
|
|
|
|
# Metrics generator for trace-derived metrics
|
|
metricsGenerator:
|
|
enabled: true
|
|
remoteWriteUrl: http://prometheus-kube-prometheus-prometheus.prometheus.svc:9090/api/v1/write
|
|
|
|
# =============================================================================
|
|
# Persistence - Disabled (use emptyDir for WAL, data in MinIO)
|
|
# =============================================================================
|
|
persistence:
|
|
enabled: false
|
|
|
|
# emptyDir for WAL
|
|
extraVolumes:
|
|
- name: tempo-data
|
|
emptyDir: {}
|
|
extraVolumeMounts:
|
|
- name: tempo-data
|
|
mountPath: /var/tempo
|
|
|
|
# MinIO S3 credentials
|
|
extraEnv:
|
|
- name: AWS_ACCESS_KEY_ID
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: minio-s3-credentials
|
|
key: AWS_ACCESS_KEY_ID
|
|
- name: AWS_SECRET_ACCESS_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: minio-s3-credentials
|
|
key: AWS_SECRET_ACCESS_KEY
|
|
|
|
# =============================================================================
|
|
# Service
|
|
# =============================================================================
|
|
service:
|
|
type: ClusterIP
|
|
|
|
# =============================================================================
|
|
# ServiceMonitor for Prometheus
|
|
# =============================================================================
|
|
serviceMonitor:
|
|
enabled: true
|
|
additionalLabels:
|
|
release: prometheus
|