I have a working Ambassador and a working Istio and I use the default Jaeger tracer in Istio which works fine.
Now I would like to make Ambassador report trace data to Istio's Jaeger.
Ambassador documentation suggests that Jaeger is supported with the Zipkin driver, but gives example only for usage with Zipkin.
https://www.getambassador.io/user-guide/with-istio/#tracing-integration
So I checked the ports of jaeger-collector service, and picked the http: jaeger-collector-http 14268/TCP
kubectl describe svc jaeger-collector -n istio-system
And modified the TracingService shown in the Ambassador docs:
apiVersion: getambassador.io/v2
kind: TracingService
metadata:
name: tracing
namespace: {{ .Values.namespace }}
spec:
#service: "zipkin.istio-system:9411"
service: "jaeger-collector.istio-system:14268"
driver: zipkin
ambassador_id: ambassador-{{ .Values.namespace }}
config: {}
But I cannot see trace data from Ambassador in Jaeger.
Does anyone have any experience on this topic?
The answer here is to install istio with --set values.global.tracer.zipkin.address
as provided in istio documentation
istioctl manifest apply --set values.global.tracer.zipkin.address=<jaeger-collector-service>.<jaeger-collector-namespace>:9411
And
Use the original TracingService setting: service: "zipkin.istio-system:9411"
as Donato Szilagyi confirmed in comments.
apiVersion: getambassador.io/v2
kind: TracingService
metadata:
name: tracing
namespace: {{ .Values.namespace }}
spec:
service: "zipkin.istio-system:9411"
driver: zipkin
ambassador_id: ambassador-{{ .Values.namespace }}
config: {}
Great! It works. And this time I used the original TracingService setting: service: "zipkin.istio-system:9411" – Donato Szilagy