DevOps Fortgeschritten
Jaeger — Distributed Tracing System¶
JaegerTracingMicroservicesObservability 5 min Lesezeit
Jaeger für verteiltes Tracing. Architektur, Deployment, Sampling-Strategien und Latenzanalyse.
Jaeger-Architektur¶
Jaeger ist ein CNCF-Graduated-Projekt für verteiltes Tracing.
- Agent — UDP-Listener auf dem Node, bündelt Spans
- Collector — empfängt und validiert Traces
- Query — API und UI für Abfragen
- Storage — Elasticsearch, Cassandra oder Kafka
Kubernetes-Deployment¶
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: production
spec:
strategy: production
collector:
replicas: 3
maxReplicas: 10
storage:
type: elasticsearch
options:
es:
server-urls: https://elasticsearch:9200
index-prefix: jaeger
esIndexCleaner:
enabled: true
numberOfDays: 14
schedule: "55 23 * * *"
sampling:
options:
default_strategy:
type: probabilistic
param: 0.1
Sampling-Strategien¶
- Constant — alles (1) oder nichts (0)
- Probabilistic — Prozentsatz der Requests (0.1 = 10%)
- Rate Limiting — max N Traces pro Sekunde
- Adaptive — passt sich automatisch pro Endpoint an
Zusammenfassung¶
Jaeger ist eine bewährte Lösung für Distributed Tracing. Adaptive Sampling und flexibles Storage-Backend machen es für Enterprise-Einsätze geeignet.
Brauchen Sie Hilfe bei der Implementierung?¶
Unser Team hat Erfahrung mit dem Entwurf und der Implementierung moderner Architekturen. Wir helfen Ihnen gerne.