• Stars
    star
    980
  • Rank 44,848 (Top 1.0 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 5 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Jaeger Operator for Kubernetes simplifies deploying and running Jaeger on Kubernetes.

Build Status Go Report Card Code Coverage GoDoc

Jaeger Operator for Kubernetes

The Jaeger Operator is an implementation of a Kubernetes Operator.

Getting started

Firstly, ensure an ingress-controller is deployed. When using minikube, you can use the ingress add-on: minikube start --addons=ingress

Then follow the Jaeger Operator installation instructions.

Once the jaeger-operator deployment in the namespace observability is ready, create a Jaeger instance, like:

kubectl apply -n observability -f - <<EOF
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: simplest
EOF

This will create a Jaeger instance named simplest. The Jaeger UI is served via the Ingress, like:

$ kubectl get -n observability ingress
NAME             HOSTS     ADDRESS          PORTS     AGE
simplest-query   *         192.168.122.34   80        3m

In this example, the Jaeger UI is available at http://192.168.122.34.

The official documentation for the Jaeger Operator, including all its customization options, are available under the main Jaeger Documentation.

CRD-API documentation can be found here.

Compatibility matrix

See the compatibility matrix here.

Jaeger Operator vs. Jaeger

The Jaeger Operator follows the same versioning as the operand (Jaeger) up to the minor part of the version. For example, the Jaeger Operator v1.22.2 tracks Jaeger 1.22.0. The patch part of the version indicates the patch level of the operator itself, not that of Jaeger. Whenever a new patch version is released for Jaeger, we'll release a new patch version of the operator.

Jaeger Operator vs. Kubernetes

We strive to be compatible with the widest range of Kubernetes versions as possible, but some changes to Kubernetes itself require us to break compatibility with older Kubernetes versions, be it because of code imcompatibilities, or in the name of maintainability.

Our promise is that we'll follow what's common practice in the Kubernetes world and support N-2 versions, based on the release date of the Jaeger Operator.

For instance, when we released v1.22.0, the latest Kubernetes version was v1.20.5. As such, the minimum version of Kubernetes we support for Jaeger Operator v1.22.0 is v1.18 and we tested it with up to 1.20.

The Jaeger Operator might work on versions outside of the given range, but when opening new issues, please make sure to test your scenario on a supported version.

Jaeger Operator vs. Strimzi Operator

We maintain compatibility with a set of tested Strimzi operator versions, but some changes in Strimzi operator require us to break compatibility with older versions.

The jaeger Operator might work on other untested versions of Strimzi Operator, but when opening new issues, please make sure to test your scenario on a supported version.

(experimental) Generate Kubernetes manifest file

Sometimes it is preferable to generate plain manifests files instead of running an operator in a cluster. jaeger-operator generate generates kubernetes manifests from a given CR. In this example we apply the manifest generated by examples/simplest.yaml to the namespace jaeger-test:

curl https://raw.githubusercontent.com/jaegertracing/jaeger-operator/main/examples/simplest.yaml | docker run -i --rm jaegertracing/jaeger-operator:master generate | kubectl apply -n jaeger-test -f -

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

Contributing and Developing

Please see CONTRIBUTING.md.

License

Apache 2.0 License.

More Repositories

1

jaeger

CNCF Jaeger, a Distributed Tracing Platform
Go
19,236
star
2

jaeger-client-go

🛑 This library is DEPRECATED!
Go
1,366
star
3

jaeger-ui

Web UI for Jaeger
JavaScript
1,039
star
4

jaeger-client-node

🛑 This library is DEPRECATED!
JavaScript
553
star
5

jaeger-client-java

🛑 This library is DEPRECATED!
Java
491
star
6

jaeger-kubernetes

Support for deploying Jaeger into Kubernetes
Java
446
star
7

jaeger-client-python

🛑 This library is DEPRECATED!
Python
408
star
8

jaeger-client-csharp

🛑 This library is DEPRECATED!
C#
304
star
9

helm-charts

Helm Charts for Jaeger backend
Mustache
248
star
10

jaeger-clickhouse

Jaeger ClickHouse storage plugin implementation
Go
227
star
11

jaeger-client-cpp

🛑 This library is DEPRECATED!
C++
137
star
12

spark-dependencies

Spark job for dependency links
Java
119
star
13

docker-protobuf

An all-inclusive protoc Docker image for the Jaeger project
Dockerfile
85
star
14

jaeger-idl

A set of shared data model definitions used by Jaeger components.
Thrift
77
star
15

jaeger-analytics-flink

Big data analytics for Jaeger using Apache Flink
Java
67
star
16

jaeger-lib

A collection of shared infrastructure libraries used by different components of Jaeger.
Go
64
star
17

documentation

Documentation/website for the Jaeger Distributed Tracing project.
HTML
62
star
18

jaeger-openshift

Support for deploying Jaeger into OpenShift
Groovy
56
star
19

jaeger-analytics-java

Data analytics pipeline and models for tracing data
Java
43
star
20

jaeger-client-javascript

Note: this SDK is not implemented yet, see https://github.com/jaegertracing/jaeger-client-javascript/issues/1.
JavaScript
32
star
21

jaeger-performance

Home of the Jaeger Performance tests
Java
21
star
22

jaeger-opentelemetry-collector

Experimental: components needed to build Jaeger on top of OpenTelemetry Collector
Makefile
12
star
23

jaeger-otelcol

Jaeger's OpenTelemetry Collector distribution
Go
7
star
24

legacy-client-java

Legacy com.uber.jaeger java client
Java
5
star
25

jaeger-vscode

VSCode extension for Jaeger
TypeScript
5
star
26

security-audits

Jaeger security audits
3
star
27

vertx-create-span

Demo application used in e2e tests for the Jaeger Operator
Java
3
star
28

jaeger-opentelemetry-releases

Go
3
star
29

artwork

Jaeger Logo and Artwork
2
star