Istio ist ein Open-Source-Service-Mesh für Kubernetes-Cluster. Es bringt eine einheitliche Kommunikationsschicht zwischen Microservices, die Verkehrssteuerung, Sicherheit und Beobachtbarkeit in einer Lösung bündelt — ohne dass jede Anwendung selbst dafür Code enthalten muss.
So funktioniert Istio
Istio setzt auf einem Service Mesh auf und nutzt ein Sidecar-Muster: Neben jedem Anwendungs-Container läuft ein schlanker Proxy (Envoy), der den gesamten ein- und ausgehenden Datenverkehr abfängt. Eine zentrale Steuerungsebene (istiod) verteilt die Regeln an alle Proxys. So kann Istio Datenverkehr umleiten, aufteilen oder blockieren, ohne die Anwendung selbst zu verändern.
Die drei Säulen
- Traffic Management: Lastverteilung, Canary-Releases und detailliertes Routing zwischen Diensten (verwandt: Load Balancer, Reverse Proxy).
- Security: automatische Verschlüsselung zwischen Diensten (mTLS), Authentifizierung und Autorisierung auf Netzebene.
- Observability: einheitliche Metriken, Tracing und Logs für alle Dienste — die Grundlage für Observability und Monitoring im Cluster.
Istio im Ökosystem
Istio ergänzt Kubernetes und Docker: Während Kubernetes die Container orchestriert, kümmert sich Istio um die Verbindungen zwischen ihnen. Als moderner API-Gateway-Baustein übernimmt Istio zusätzlich Aufgaben, die früher eigene Gateway-Komponenten übernahmen. Es ist damit ein zentraler Baustein für Cloud-native Anwendungen (Grundlagen: Kubernetes-Glossar).
Ähnliche Werkzeuge sind Linkerd und Traefik — sie verfolgen teils andere Schwerpunkte und sind in diesem Glossar noch nicht als eigene Artikel beschrieben.