This is a Kubernetes operator for Grafana Tempo.
TempoStack
CR; the operator assigns fractions of it to each componentTempoStack
operands expose telemetry (metrics, traces) and integrate with Prometheus ServiceMonitor
and PrometheusRule
Install cert-manager and minio: make cert-manager deploy-minio
Build and deploy operator:
IMG_PREFIX=docker.io/${USER} OPERATOR_VERSION=$(date +%s).0.0 make docker-build docker-push deploy
kubectl apply -f - <<EOF
apiVersion: v1
kind: Secret
metadata:
name: minio-test
stringData:
endpoint: http://minio.minio.svc:9000
bucket: tempo
access_key_id: tempo
access_key_secret: supersecret
type: Opaque
EOF
kubectl apply -f - <<EOF
apiVersion: tempo.grafana.com/v1alpha1
kind: TempoStack
metadata:
name: simplest
spec:
storage:
secret:
name: minio-test
type: s3
storageSize: 1Gi
resources:
total:
limits:
memory: 2Gi
cpu: 2000m
template:
queryFrontend:
jaegerQuery:
enabled: true
EOF