Note: This is just for local development/trying it out. The all-in-one is not recommended for production scenarios.
The commands below are taken from the official documentation: https://www.jaegertracing.io/docs/1.25/operator/#quick-start---deploying-the-allinone-image
- Deploy the operator
kubectl create namespace observability # <1>
kubectl create -f https://raw.githubusercontent.com/jaegertracing/jaeger-operator/master/deploy/crds/jaegertracing.io_jaegers_crd.yaml # <2>
kubectl create -n observability -f https://raw.githubusercontent.com/jaegertracing/jaeger-operator/master/deploy/service_account.yaml
kubectl create -n observability -f https://raw.githubusercontent.com/jaegertracing/jaeger-operator/master/deploy/role.yaml
kubectl create -n observability -f https://raw.githubusercontent.com/jaegertracing/jaeger-operator/master/deploy/role_binding.yaml
kubectl create -n observability -f https://raw.githubusercontent.com/jaegertracing/jaeger-operator/master/deploy/operator.yaml
- Deploy the all-in-one instance
kubectl apply -n observability -f - <<EOF
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: simplest
EOF
- (Optional) Expose the Jaeger UI (using istio)
kubectl apply -f - <<EOF
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: istio
name: jaeger-ingress
namespace: observability
spec:
rules:
- host: jaeger.127.0.0.1.nip.io
http:
paths:
- pathType: Prefix
path: /
backend:
service:
name: simplest-query
port:
number: 16686
EOF