Plugin uses TracerResolver
-
Build plugin
mvn clean package
-
Set
L5D_HOME
e.g.export L5D_HOME=/apps/linkerd-1.3.x
-
Copy built fat jar linkerd-plugin-0.0.1.jar to linkerd plugins folder
cp target/linkerd-plugin-0.0.1.jar ${L5D_HOME}/plugins/
-
Copy
TracerResolver
implementation to ${L5D_HOME}/plugins/ -
Add configuration to linkerd config file e.g.
${L5D_HOME}/config/linkerd.yaml
telemetry: - kind: io.opentracing.tracer
-
Initialize
TracerResolver
implementation e.g. set tracer specific environment variables -
Start linkerd
${L5D_HOME}/linkerd-1.3.x-exec ${L5D_HOME}/config/linkerd.yaml
-
Start Jaeger docker image
docker run -d -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 -p5775:5775/udp -p6831:6831/udp -p6832:6832/udp \ -p5778:5778 -p16686:16686 -p14268:14268 -p9411:9411 jaegertracing/all-in-one:latest
-
Navigate to http://localhost:16686 to access the Jaeger UI
-
Download and copy Jaeger TracerResolver jars to
${L5D_HOME}/plugins/
mvn dependency:get -Dartifact=com.uber.jaeger:jaeger-core:0.23.0:pom -Ddest=. mvn org.apache.maven.plugins:maven-dependency-plugin:2.7:copy-dependencies -f jaeger-core-0.23.0.pom -DincludeScope=compile -DoutputDirectory=.
-
Set Jaeger environment variables
export JAEGER_SERVICE_NAME=linkerd
-
Start linkerd