Skip to content

Role in the deployment

Jaeger collects distributed traces from DE services, which is how a slow request is attributed to a specific service rather than to "the DE". Services send spans to the collector endpoint configured in the Jaeger section of the deployment group variables.

Jaeger is optional. Nothing user-facing depends on it, and it can be added to a running deployment later.

Prerequisites

Deploy

kubectl create ns jaeger

kubectl apply -f resources/addons/jaeger/rollover-cron.yaml -n jaeger
kubectl apply -f resources/addons/jaeger/query.yaml         -n jaeger
kubectl apply -f resources/addons/jaeger/collector.yaml     -n jaeger

Each of those three manifests names the search cluster it talks to. If your search cluster is not in the prod namespace, update the endpoint in all three before applying:

- "http://elasticsearch.prod:9200"
+ "http://<SEARCH_SERVICE>.<NAMESPACE>:9200"

The rollover cron job is what keeps span indices from growing without bound. Deploy it, not just the collector and query components — a Jaeger install without rollover fills its storage and then takes the search cluster down with it.

Verify

kubectl -n jaeger get pods
kubectl -n jaeger logs deploy/jaeger-collector --tail=50

Related