Investigate: deploy Jaeger into a K8s Cluster and instrument a test application.
Problem
In order to expand our tracing capability, we need to allow our users to instrument their running applications with Jaeger, currently, we support customers who want to bring their own Jaeger instance, however, we should offer a method to directly deploy Jaeger through our cluster integration.
Proposed solution
To support those users 2 things need to happen:
- Jaeger agent needs to be deployed into the K8s cluster (where your applications are running).
- The application needs to be instrumented with the right client libraries.
For the purpose of this investigation, we should deploy the Jaeger agent using Helm charts similar to the way we deploy Prometheus or Elasticsearch.
Jaeger requires a backend store and supports both Elasticsearch and Cassandra, we should use the deployed ES which we use for our logging use case, therefore, Elasticsearch should be a prerequisite. Once the jaeger instance is deployed we need to instrument the app with the client library and see the traces ingesting into Elasticsearch
Reference
I see that there was some investment around this in the past, maybe we can reuse some of the code here !4946 (closed)
Open question
how can we present Jaeger UI?
- Use the data that is in Elasticsearch to build our own UI?
- Use the data in Elasticsearch to redirect users to the logging UI?
- Should we iframe Jaeger UI?