Injecting Auto-instrumentation
An implementation of auto-instrumentation using the OpenTelemetry Operator.
The OpenTelemetry Operator is an implementation of a Kubernetes Operator.
The operator manages:
To install the operator in an existing cluster, make sure you have
cert-manager
installed and run:
kubectl apply -f https://github.com/open-telemetry/opentelemetry-operator/releases/latest/download/opentelemetry-operator.yaml
Once the opentelemetry-operator
deployment is ready, create an OpenTelemetry
Collector (otelcol) instance, like:
$ kubectl apply -f - <<EOF
apiVersion: opentelemetry.io/v1beta1
kind: OpenTelemetryCollector
metadata:
name: simplest
spec:
config:
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
processors:
memory_limiter:
check_interval: 1s
limit_percentage: 75
spike_limit_percentage: 15
batch:
send_batch_size: 10000
timeout: 10s
exporters:
# NOTE: Prior to v0.86.0 use `logging` instead of `debug`.
debug: {}
service:
pipelines:
traces:
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [debug]
EOF
By default, opentelemetry-operator
uses the
opentelemetry-collector
image.
When the operator is installed using
Helm charts, the
opentelemetry-collector-k8s
image
is used. If you need a component not found in these releases, you may need to
build your own collector.
For more configuration options and for setting up the injection of auto-instrumentation of the workloads using OpenTelemetry instrumentation libraries, see OpenTelemetry Operator for Kubernetes.
An implementation of auto-instrumentation using the OpenTelemetry Operator.
Was this page helpful?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!