Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

k8s-credential-provider manifest is missing ate-otel-config envFrom, failing OTLP metric exports to [::1]:4317 / 127.0.0.1:4317 every 60s

Abierto Apto para principiantes
#3,282 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@ericcurtin ya está trabajando en esto.

Desde el 28/10/2026.

  • #3379 de @ericcurtin — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
82/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
go, kubernetes

Línea de trabajo

Lee manifests/egress-credential-injection/k8s-credential-provider.yaml alrededor de las líneas 73–118 y compáralo con el contenedor ext-proc de manifests/ate-install/atenet-egress.yaml alrededor de las líneas 1419–1427. Comprueba el Deployment generado con el comando proporcionado kubectl get deploy; estará listo cuando cargue ate-otel-config y establezca OTEL_RESOURCE_ATTRIBUTES para que las métricas del proveedor usen el endpoint del collector configurado.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

area/dev-infra area/observability area/security kind/bug
Summary & Root Cause

Every control-plane container gets its OTLP endpoint from the ate-otel-config ConfigMap through envFrom. The k8s-credential-provider Deployment, deployed when --credential-provider='{"name":"k8s.io"}' is set, omits it. The OpenTelemetry SDK therefore uses its default endpoint localhost:4317, where nothing listens, and every 60s export fails. All provider metrics are lost on GKE, and on Kind the OTEL_METRICS_EXPORTER choice in ate-otel-config is ignored.

Affected Code Locations
  • manifests/egress-credential-injection/k8s-credential-provider.yaml:73-118 (container spec has args, ports, probes and volumeMounts, but no env or envFrom)
  • manifests/ate-install/atenet-egress.yaml:1419-1427 (ext-proc container for comparison: OTEL_RESOURCE_ATTRIBUTES plus envFrom: [{configMapRef: {name: ate-otel-config}}], with a comment explaining that without it the SDK falls back to localhost:4317)
Detailed Reproduction Guide
  1. Deploy with the bundled Kubernetes credential provider:

    go run ./cmd/ate-setup deploy ate-system --credential-provider='{"name":"k8s.io"}'
    
  2. Inspect the spec and the logs:

    kubectl get deploy -n ate-system k8s-credential-provider -o jsonpath='{.spec.template.spec.containers[0].envFrom}'
    kubectl logs -n ate-system -l app=k8s-credential-provider --tail=20
    
Expected vs. Actual Behavior
  • Expected: Deployment/k8s-credential-provider loads ate-otel-config (and sets OTEL_RESOURCE_ATTRIBUTES) like the other ate-system components, and exports metrics to the cluster collector.
  • Actual: envFrom is empty. The logs show failed to upload metrics: exporter export timeout against 127.0.0.1:4317 / [::1]:4317 every 60s.
Observed Output & Logs
  {"time":"2026-10-27T00:48:43.421326933Z","level":"INFO","msg":"Metrics initialized","otlp_export":true}
  {"time":"2026-10-27T00:49:53.43116369Z","level":"INFO","msg":"failed to upload metrics: exporter export timeout: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing: dial tcp 127.0.0.1:4317: connect: connection refused\""}
  {"time":"2026-10-27T00:50:53.42768382Z","level":"INFO","msg":"failed to upload metrics: exporter export timeout: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing: dial tcp [::1]:4317: connect: cannot assign requested address\""}
  01:59:59  failed to upload metrics: ... dial tcp [::1]:4317: connect: cannot assign requested address
  02:00:59  failed to upload metrics: ... dial tcp [::1]:4317: connect: cannot assign requested address
  02:01:59  failed to upload metrics: ... dial tcp [::1]:4317: connect: cannot assign requested address
Lenguaje dominante
Go
Estrellas
5.9k
Forks
637
Merge medio
2 d 10 h
PR fusionados (30 d)
562

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de agent-substrate/substrate

Todos los issues de agent-substrate/substrate

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.