- Enable env var expansion in config - Configure extraEnv for S3 credentials - Fix OTel Collector image settings
100 lines
2.8 KiB
YAML
100 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
|
|
# - MinIO S3 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: 512Mi
|
|
|
|
# =============================================================================
|
|
# 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 (MinIO S3)
|
|
# Uses environment variable expansion
|
|
storage:
|
|
trace:
|
|
backend: s3
|
|
s3:
|
|
bucket: tempo
|
|
endpoint: minio.minio.svc.cluster.local:9000
|
|
access_key: ${S3_ACCESS_KEY}
|
|
secret_key: ${S3_SECRET_KEY}
|
|
insecure: true
|
|
|
|
# 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
|
|
|
|
# Environment variables from secret for S3 credentials
|
|
extraEnv:
|
|
- name: S3_ACCESS_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: tempo-s3-secret
|
|
key: S3_ACCESS_KEY
|
|
- name: S3_SECRET_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: tempo-s3-secret
|
|
key: S3_SECRET_KEY
|
|
|
|
# =============================================================================
|
|
# Persistence (local cache)
|
|
# =============================================================================
|
|
persistence:
|
|
enabled: true
|
|
storageClassName: local-path
|
|
size: 2Gi
|
|
|
|
# =============================================================================
|
|
# Service
|
|
# =============================================================================
|
|
service:
|
|
type: ClusterIP
|
|
|
|
# =============================================================================
|
|
# ServiceMonitor for Prometheus
|
|
# =============================================================================
|
|
serviceMonitor:
|
|
enabled: true
|
|
additionalLabels:
|
|
release: prometheus
|