learn-grafana/otel-collector.yaml
Waylon S. Walker 0a4b32dffe init
2025-05-07 08:09:39 -05:00

84 lines
1.7 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: otel-collector
namespace: meta
spec:
replicas: 1
selector:
matchLabels:
app: otel-collector
template:
metadata:
labels:
app: otel-collector
spec:
containers:
- name: otel-collector
image: otel/opentelemetry-collector-contrib:0.81.0
args: ["--config=/etc/otel/otel-collector-config.yaml"]
volumeMounts:
- name: otel-config
mountPath: /etc/otel
volumes:
- name: otel-config
configMap:
name: otel-collector-config
---
apiVersion: v1
kind: ConfigMap
metadata:
name: otel-collector-config
namespace: meta
data:
otel-collector-config.yaml: |
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
processors:
spanmetrics:
dimensions:
- name: operation
default: unknown
metrics_exporter: prometheus
aggregation_temporality: "AGGREGATION_TEMPORALITY_CUMULATIVE"
exporters:
otlp:
endpoint: tempo:4317
tls:
insecure: true
prometheus:
endpoint: "0.0.0.0:8889"
service:
pipelines:
traces:
receivers: [otlp]
processors: [spanmetrics]
exporters: [otlp]
metrics:
receivers: []
exporters: [prometheus]
processors: []
---
apiVersion: v1
kind: Service
metadata:
name: otel-collector
namespace: meta
spec:
ports:
- name: grpc
port: 4317
targetPort: 4317
- name: http
port: 4318
targetPort: 4318
selector:
app: otel-collector