Skip to content

Commit

Permalink
feat: added documentation for using jaeger v2 in-memory config with o…
Browse files Browse the repository at this point in the history
…tel operator

Signed-off-by: Ankit152 <[email protected]>
  • Loading branch information
Ankit152 committed Nov 24, 2024
1 parent 174a592 commit dfa5f6d
Showing 1 changed file with 70 additions and 0 deletions.
70 changes: 70 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,76 @@ curl https://raw.githubusercontent.com/jaegertracing/jaeger-operator/main/exampl

It is recommended to deploy the operator instead of generating a static manifest.

## Jager V2 Operator

As the Jaeger V2 is released, it is decided that Jaeger V2 will deployed on Kubernetes using [OpenTelemetry Operator](https://github.com/open-telemetry/opentelemetry-operator). This will benefit both the users of Jaeger and OpenTelemetry. To use Jaeger V2 with OpenTelemetry Operator, the steps are as follows:

* Install the cert-manager in the existing cluster with the command:
```bash
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.16.1/cert-manager.yaml
```

Please verify all the resources (e.g., Pods and Deployments) are in a ready state in the `cert-manager` namespace.

* Install the OpenTelemetry Operator by running:
```bash
kubectl apply -f https://github.com/open-telemetry/opentelemetry-operator/releases/latest/download/opentelemetry-operator.yaml
```

Please verify all the resources (e.g., Pods and Deployments) are in a ready state in the `opentelemetry-operator-system` namespace.

* Once all the resources are ready, create a Jaeger instance as follows:
```yaml
kubectl apply -f - <<EOF
apiVersion: opentelemetry.io/v1beta1
kind: OpenTelemetryCollector
metadata:
name: jaeger-inmemory-instance
spec:
image: jaegertracing/jaeger:latest
ports:
- name: jaeger
port: 16686
config:
service:
extensions: [jaeger_storage, jaeger_query]
pipelines:
traces:
receivers: [otlp]
exporters: [jaeger_storage_exporter]
extensions:
jaeger_query:
storage:
traces: memstore
jaeger_storage:
backends:
memstore:
memory:
max_traces: 100000
receivers:
otlp:
protocols:
grpc:
http:
exporters:
jaeger_storage_exporter:
trace_storage: memstore
EOF
```

To use the in-memory storage ui for Jaeger V2, expose the pod, deployment or the service as follows:
```bash
kubectl port-forward deployment/jaeger-inmemory-instance-collector 8080:16686
```

```bash
kubectl port-forward service/jaeger-inmemory-instance-collector 8080:16686
```

Once done, type `localhost:8080` in the browser to interact with the UI.

[Note] There's an ongoing development in OpenTelemetry Operator where users will able to interact directly with the UI which will also support the different storage backend in Jaeger.

## Contributing and Developing

Please see [CONTRIBUTING.md](CONTRIBUTING.md).
Expand Down

0 comments on commit dfa5f6d

Please sign in to comment.