smaddis / smad-deploy-azure

Terraform scripts to set up AKS, ACR, KV for Kuksa Cloud (Eclipse Hono) deployment.
MIT License
0 stars 6 forks source link

Deploy Jaeger with persistent storage #40

Open hjhsalo opened 3 years ago

hjhsalo commented 3 years ago

Eclipse Hono helm charts can deploy an example Jaeger deployment using jaeger-all-in-one image: https://github.com/eclipse/packages/blob/2760401288f22048346287d12abf53bd3b12320c/charts/hono/values.yaml#L232-L275

Jaeger documentation says that all-in-one-image uses Badger as storage backend and it can be configured for persistent storage: (NOTE: --badger.ephemeral=false and -v <storage_dir_on_host>:/badger) https://www.jaegertracing.io/docs/1.22/deployment/#badger---local-storage

Documentation in Eclipse Hono helm charts mention a Kubernetes sidecar based usage of Jaeger in Hono components but the helm charts don't specify what needs to be done if Jaeger is deployed externally (i.e. without using Hono helm charts) and you want to use this external Jaeger deployment for Hono traces. Check e.g. jaeger architecture and deployment documentation for more info.

TODO ~~1. Deploy Jaeger with Hono Helm charts (See https://github.com/smaddis/smad-deploy-azure/issues/41) Check what Jaeger UI looks like when Hono sends traces to it. Documentation for configuring Hono with Jaeger tracing available in Hono documentation: https://www.eclipse.org/hono/docs/dev/admin-guide/monitoring-tracing-config/#configuring-usage-of-jaeger-tracing-included-in-docker-images

  1. Configure Jaeger (deployed with Hono helm charts) for persistent storage using Badger. (One probably needs to modify/override the Hono helm charts)
  2. Find out how Jaeger can be deployed externally and Hono helm charts can be configured to use the external Jaeger deployment. See https://github.com/smaddis/smad-deploy-azure/issues/44~~
  3. Deploy Elasticsearch backend
  4. Configure Jaeger to use Elasticsearch

Summary of Jaeger architecture is available here. https://www.jaegertracing.io/docs/1.21/architecture/ https://www.jaegertracing.io/docs/1.21/deployment/

~~all-in-one Jaeger deployment (here) is suitable for testing & development using Kubernetes Operator, but otherwise Kubernetes Operator based deployment needs to be investigated; will really bring any pros with it compare to e.g. Helm and kubectl? https://www.jaegertracing.io/docs/1.21/operator/~~

wisack commented 3 years ago

WIP: deploy Elasticsearch as persistent storage