Add Support for Distributed Tracing with Jaeger

Jaeger is a free software distributed tracing system originally started by Uber. Jaeger is compatible with the OpenTracing data model and libraries, meaning that it's usable with a wide range of languages.

Having a distributed tracing system in place will greatly increase observability into our network, giving us visibility into the lifecycle and performance of requests.

This is an example of what a trace might look like, taken from the Jaeger docs:

traces-ss

This issue represents the platform portion of this work, which will entail deploying Jaeger into our clusters. Once the infrastructure is in place, the proxies for each of the applications will also need to be configured in a separate issue.

Helpful Links: