Gestion réseau sur Kubernetes : l'API Gateway stabilisée
Alternative plus « flexible » aux contrôleurs Ingress, l'API Gateway du projet Kubernetes est désormais stable.
Plus de flexibilité et d'extensibilité que les contrôleurs Ingress ? Ce sont, dans les grandes lignes, les promesses de l'API Gateway.
Développée directement dans le cadre du projet Kubernetes, elle vient de passer en v1. Et pour cause : ses principales composantes sont désormais stables. En l'occurrence, les objets Gateway (points d'accès), GatewayClass (contrôleurs) et HTTPRoute (règles de routage).
Par opposition aux annotations et aux ConfigMaps généralement impliqués dans le déploiement des contrôleurs Ingress, l'API utilise des CRD pour définir les ressources. C'est l'un de ses arguments de flexibilité, aux côtés des ressources Route (stable pour HTTP ; expérimental pour TLS, TCP, UDP et gRPC), de la capacité à répartir/mettre en miroir le trafic.
L'API Gateway suit une approche fondée sur les rôles (infra, ops, dev). Elle ne remplace pas l'API Ingress, stable depuis Kubernetes 1.19. Celle-ci reste disponible, en particulier pour les usages ne ciblant que les applications HTTP.
Les maillages de services Kubernetes dans le viseur
Les produits suivants disposent d'une implémentation :
- Alpha : Amazon EKS, HAProxy, Traefik
- Bêta : Cilium, Contour, Envoy, Istio, Kong
- Preview : Azure (Application Gateway for Containers)
- GA : GKE (Google Kubernetes Engine)
Lire aussi : Le FinOps, en filigrane de l'AWS re:Invent 2024
La prise en charge des maillages de services en reste au stade expérimental. Le chantier a démarré en 2022, sous la bannière GAMMA (Gateway API for Mesh Management and Administration). Istio, Kuma et Linkerd ont commencé à l'implémenter.
Parmi les autres fonctionnalités expérimentales de l'API Gateway :
- BackendTLSPolicy, pour configurer la validation des certificats back-end
- Champ Timeout dans les règles de routage HTTP
- Champ Infrastructure pour spécifier des étiquettes/anotations à propager aux ressources
- Prise en charge de WebSocket en clair et sur TLS pour la connexion aux services Kubernetes
- CLI (et plug-in kubectl) ; qui, pour commencer, fournira des informations sur les stratégies disponibles au sein des clusters
À consulter en complément :
Kubernetes, mais en plus simple ? Microsoft dégaine une surcouche
Le « portefeuille multicloud » de VMware rejoint la marketplace Oracle
FinOps sur Kubernetes : un modèle QoS à maîtriser
Illustration principale © Sergey Novikov - Adobe Stock
Sur le même thème
Voir tous les articles Workspace