This is a guide to deploy Jaeger with Clickhouse storage on Kubernetes.
- Deploy Jaeger operator. Note that
grpc-plugin
storage type is supported since version 1.25.0. - Deploy Clickhouse operator
- Deploy Zookeeper (if replication is used)
Deploy Clickhouse:
cat <<EOF | kubectl apply -f -
apiVersion: clickhouse.altinity.com/v1
kind: ClickHouseInstallation
metadata:
name: jaeger
labels:
jaeger-clickhouse: demo
spec:
configuration:
clusters:
- name: cluster1
layout:
shardsCount: 1
EOF
Create config map for Jaeger Clickhouse plugin:
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
name: jaeger-clickhouse
labels:
jaeger-clickhouse: demo
data:
config.yaml: |
address: clickhouse-jaeger:9000
username: clickhouse_operator
password: clickhouse_operator_password
spans_table:
spans_index_table:
operations_table:
EOF
Deploy Jaeger:
cat <<EOF | kubectl apply -f -
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: jaeger-clickhouse
labels:
jaeger-clickhouse: demo
spec:
storage:
type: grpc-plugin
grpcPlugin:
image: ghcr.io/jaegertracing/jaeger-clickhouse:0.7.0
options:
grpc-storage-plugin:
binary: /plugin/jaeger-clickhouse
configuration-file: /plugin-config/config.yaml
log-level: debug
volumeMounts:
- name: plugin-config
mountPath: /plugin-config
volumes:
- name: plugin-config
configMap:
name: jaeger-clickhouse
EOF
kubectl delete jaeger,cm,chi -l jaeger-clickhouse=demo