Maillage de Services (Service Mesh) sur Kubernetes
Programme
Présentations et rappels généraux : Microservices, Istio, Kubernetes…
- Rappels micro-services, LoadBalaning, CircuitBreaker, Monitoring
- Définition d’un service Mesh, Composants Data Plane et Control Plane
- Rappels Kubernetes, Réseau Kubernetes
- Présentation Istio : Fonctionnalités et Architecture
- Contraintes sur les pods et services
- Différents types d’installation
Gestion de trafic
- Relations entre le service de découverte Istio et celui de Kubernetes
- Les différents types de ressources Istio pour la gestion de trafic : services virtuels, règles de routage, gateway, point d’entrée service, configuration side-car
- Routage de requêtes vers différentes versions d’un microservice, migration progressive
- Techniques de mirroring pour sécuriser les mises en production
- Injection de fautes pour tester la résilience
- Gateway Ingress, Utilisation de TLS ou mTLS
- Pattern disjoncteur
Sécurité
- Apports de Istio pour la sécurité des microservices
- Architecture de la sécurité
- Gestion des identités et des certificats
- Authentification : Architecture, différentes stratégies, Mutual TLS, JWT
- Autorisation : Architecture, ACLs, dépendance sur mTLS
Surveillance
- Apports d’Istio pour la surveillance
- Métriques service et métriques proxy
- Les composants Pilot, Galley, Mixer et Citadel
- Traces distribuées, back-end supportés
- Logs d’accès, configuration
Exploitation
- Modèles de déploiement
- Usage d’Istio des webhooks Kubernetes, contrôles de santé des services Istio
- Configuration de la répartition de charge
- Sécuriser les images Docker
- Outils pour le diagnostic : istioctl, niveau de trace, introspection des composants