Istio
Tecnología

Istio

Un service mesh para conectar, proteger y observar microservicios

Istio es un service mesh que añade gestión de tráfico, seguridad y observabilidad a una red de microservicios, sin requerir cambios en el código de la aplicación. Funciona inyectando de forma transparente un proxy (Envoy) junto a cada carga de trabajo y gestionando esa flota de proxies desde un plano de control central.

Cómo funciona

El plano de control de Istio, istiod, configura un proxy Envoy sidecar inyectado junto a cada contenedor de aplicación. Todo el tráfico entre servicios fluye por estos sidecars, lo que permite a Istio aplicar TLS mutuo, aplicar reintentos y timeouts, repartir el tráfico entre versiones para despliegues canary y recopilar métricas y trazas uniformes, todo a partir de configuración, sin ningún cambio a nivel de aplicación.

Conceptos clave

  • Sidecar proxy — la instancia de Envoy inyectada junto al Pod de cada carga de trabajo, que intercepta y gestiona todo su tráfico entrante y saliente.
  • VirtualService — define las reglas de enrutamiento del tráfico hacia un servicio: reparto entre versiones, reintentos, timeouts e inyección de fallos.
  • DestinationRule — define las políticas que se aplican después del enrutamiento, como la estrategia de balanceo de carga y los ajustes de TLS mutuo, para los subsets de un servicio dado.
  • Gateway — configura un balanceador de carga en el borde de la malla para el tráfico de ingress o egress.

Por qué los equipos adoptan Istio

  • mTLS sin cambios de código. El tráfico entre servicios puede cifrarse y autenticarse en toda la malla solo con configuración.
  • Control fino del tráfico. Los despliegues canary, las pruebas A/B y la inyección de fallos son reglas de enrutamiento declarativas, no lógica de aplicación.
  • Observabilidad uniforme. Cada servicio obtiene métricas, logs y trazas distribuidas coherentes, incluso los que no instrumentaste tú mismo.
  • Aplicación de políticas. La autorización, el rate limiting y los reintentos se aplican de forma coherente en cada servicio de la malla.

Primeros pasos

Instala Istio en un clúster, etiqueta los namespaces que quieras incluir en la malla para la inyección automática de sidecars y despliega tus cargas de trabajo como de costumbre: los proxies se adjuntan automáticamente. Las guías siguientes cubren cómo habilitar la malla, repartir el tráfico y proteger la comunicación entre servicios.