我想在 istio 中使用 stackdriver trace 作为分布式跟踪的后端。我在 GCP 的虚拟机上安装了 Docker,并运行了 zipkin-gcp 的镜像。
docker run -d -p 9411:9411 -e STORAGE_TYPE=stackdriver -e STACKDRIVER_PROJECT_ID=my-project openzipkin/zipkin-gcp
然后,根据官方文档,我将 istio 配置为将 spans 发送到此 VM。
istioctl manifest apply --set values.tracing.enabled=true --set values.tracing.provider=zipkin --set values.global.tracer.zipkin.address=10.128.0.30:9411 --set values.pilot.traceSampling=100.0
但是,堆栈驱动程序跟踪中没有显示任何跟踪。
为了隔离问题,我停止了 zipkin-gcp 并检查了是否使用 tcpdump 发送了数据包。
tcpdump -i eth0 dst port 9411
结果发现什么都没有发送。我已经确认了从 kubernetes 集群到 VM 的端口 9411 连接。
如何使用 istio 向外部 zipkin 服务器发送跟踪信息?