Scaling your tracing deployment
This topic provides instructions for scaling the OpenTelemetry Collector deployment for tracing in Kubernetes.
Metrics scaling can have different characteristics from tracing, so we recommend scaling them independently. You can scale an OpenTelemetry Collector with a Prometheus receiver by using a StatefulSet.
- An OpenTelemetry Operator and Collector running in your cluster
- Installed Terraform dashboards
There are two ways to scale your deployment: vertically and horizontally. In Kubernetes, vertical scaling entails increasing the memory and CPU requests/limits of your Kubernetes pod. Horizontal scaling means adding more pods (collector instances) to handle your traffic.
Vertically scale the Collector
values.yaml for your Collector deployment, adjust the following block:
1 2 3 4 5 6 7 resources: limits: cpu: CPU_LIMIT_HERE memory: MEMORY_LIMIT_HERE requests: cpu: CPU_REQUEST_HERE memory: MEMORY_REQUEST_HERE
Ensure that your memory and CPU values are well formatted for Kubernetes
Horizontally scale the Collector
values.yaml for your collector deployment, adjust the replica count:
1 2 3 collectors: - name: "collector-name" replicas: REPLICA_COUNT_HERE
Apply the changes
1 helm upgrade lightstep ./collector_k8s -f ./collector_k8s/values.yaml -n opentelemetry --install
Observe the changes
Your new Collectors should appear in your OpenTelemetry Collector dashboard.