ADR-008: Istio con sidecars para las capacidades transversales
Aceptado el 10/11/2026 por Andrés. Complementado por ADR-030 (la entrada sigue con recursos de Istio).
Contexto
Andrés quiere que los servicios de dominio no implementen telemetría, seguridad de transporte ni resiliencia de red, y mostrar el patrón sidecar.
Opciones
| Opción | Nota |
|---|---|
| Bibliotecas en cada servicio | Una por lenguaje; se desactualizan a ritmos distintos |
| Sidecars Envoy armados a mano | Reinventar una malla |
| Istio con sidecars | Estándar, basado en Envoy, muestra el patrón |
| Istio en modo ambient | Más liviano, pero sin sidecar por pod: no muestra el patrón |
Decisión
Istio con sidecars: mTLS estricto, políticas de autorización por identidad de carga, reintentos, circuit breaker, validación de JWT y cuota por partner. OpenTelemetry para trazas; logs por recolector de nodo.
Qué se sacrifica
- Memoria y latencia por sidecar (unos milisegundos por salto), sensible en un clúster de demo pequeño.
- Complejidad operativa de la malla.
Límite
El sidecar no puede aportar health de la aplicación, logs de aplicación ni métricas de negocio. Ver el contrato mínimo en docs/plataforma/01-forma-de-trabajo-y-capacidades.md.