|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Recolector OpenTelemetry como un proxy
La configuración normal del recolector OpenTelemetry para el tail-sampling de trazas se puede encontrar aquí
La configuración a continuación describe una ampliación que solo realiza agrupamiento y no procesa trazas, métricas ni registros. Está destinado a ser un proxy de seguridad que existe fuera del clúster de Observabilidad de SUSE, pero dentro de una infraestructura de red de confianza. Las credenciales de seguridad para el proxy y SUSE Observability se pueden configurar por separado, añadiendo una capa de autenticación que no reside en el solicitante, sino en el anfitrión.
-
Traefik (Por defecto)
-
Nginx
mode: deployment
presets:
kubernetesAttributes:
enabled: true
# You can also configure the preset to add all the associated pod's labels and annotations to you telemetry.
# The label/annotation name will become the resource attribute's key.
extractAllPodLabels: true
extraEnvsFrom:
- secretRef:
name: open-telemetry-collector
image:
repository: "otel/opentelemetry-collector-k8s"
config:
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
exporters:
# Exporter for traces to traffic mirror (used by the common config)
otlp:
endpoint: <url for opentelemetry ingestion by suse observability>
auth:
authenticator: bearertokenauth
extensions:
bearertokenauth:
scheme: SUSEObservability
token: "${env:API_KEY}"
service:
extensions: [health_check, bearertokenauth]
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
metrics:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
logs:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: ingress-traefik-external
traefik.ingress.kubernetes.io/ingress.class: ingress-traefik-external
traefik.ingress.kubernetes.io/backend-protocol: GRPC
# "12.34.56.78/32" IP address of NatGateway in the VPC where the otel data is originating from
# traefik.ingress.kubernetes.io/whitelist-source-range: "12.34.56.78/32"
hosts:
- host: "otlp-collector-proxy.${CLUSTER_NAME}"
paths:
- path: /
pathType: ImplementationSpecific
port: 4317
tls:
- secretName: ${CLUSTER_NODOT}-ecc-tls
hosts:
- "otlp-collector-proxy.${CLUSTER_NAME}"
|
El proyecto Ingress Nginx está siendo retirado. Se aconseja a los usuarios considerar alternativas como Traefik. |
mode: deployment
presets:
kubernetesAttributes:
enabled: true
# You can also configure the preset to add all the associated pod's labels and annotations to you telemetry.
# The label/annotation name will become the resource attribute's key.
extractAllPodLabels: true
extraEnvsFrom:
- secretRef:
name: open-telemetry-collector
image:
repository: "otel/opentelemetry-collector-k8s"
config:
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
exporters:
# Exporter for traces to traffic mirror (used by the common config)
otlp:
endpoint: <url for opentelemetry ingestion by suse observability>
auth:
authenticator: bearertokenauth
extensions:
bearertokenauth:
scheme: SUSEObservability
token: "${env:API_KEY}"
service:
extensions: [health_check, bearertokenauth]
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
metrics:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
logs:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: ingress-nginx-external
nginx.ingress.kubernetes.io/ingress.class: ingress-nginx-external
nginx.ingress.kubernetes.io/backend-protocol: GRPC
# "12.34.56.78/32" IP address of NatGateway in the VPC where the otel data is originating from
# nginx.ingress.kubernetes.io/whitelist-source-range: "12.34.56.78/32"
hosts:
- host: "otlp-collector-proxy.${CLUSTER_NAME}"
paths:
- path: /
pathType: ImplementationSpecific
port: 4317
tls:
- secretName: ${CLUSTER_NODOT}-ecc-tls
hosts:
- "otlp-collector-proxy.${CLUSTER_NAME}"
Lista blanca de rangos de origen de Ingress
Para enfatizar el papel del recolector proxy como medida de seguridad, se recomienda utilizar una lista blanca de rangos de origen para filtrar datos de fuentes no confiables y/o desconocidas. En contraste, el recolector de ingesta de SUSE Observability puede tener que aceptar datos de múltiples fuentes; mantener una lista blanca a ese nivel no escala bien.