L'Ingress APIG est une passerelle d'entreprise basée sur le projet open source Higress. Compatible avec l'Ingress Nginx, il prend en charge la gestion des API et les scénarios de microservices.
Concepts de l'Ingress
Dans un cluster Kubernetes, un Ingress assure l'équilibrage de charge de niveau 7 pour exposer les services internes. Les règles de transfert acheminent les requêtes vers les pods du service backend en fonction du contenu de la requête. Les ressources Ingress standard ne prennent en charge que les règles HTTP et ne disposent pas de fonctionnalités avancées telles que les algorithmes d'équilibrage de charge et l'affinité de session. Pour bénéficier de ces capacités, utilisez une implémentation d'Ingress telle que l'Ingress Nginx ou l'Ingress APIG.
Fonctionnalités de l'Ingress APIG
Utilisation de l'Ingress APIG
Basé sur la passerelle API cloud-native, l'Ingress APIG constitue une évolution de MSE Cloud Native Gateway. Il prend en charge plus de 50 annotations Nginx Ingress, couvrant plus de 90 % des cas d'utilisation, ainsi que les déploiements canaris, la gouvernance du trafic et la protection de la sécurité pour les applications cloud-native à grande échelle. L'Ingress APIG propose également des annotations qui vont au-delà de la compatibilité avec l'Ingress Nginx. Utilisation avancée de l'Ingress APIG.
Après le déploiement du APIG Controller, celui-ci écoute les ressources ApigConfig et gère les instances de passerelle, les configurations globales et les options d'écouteur Ingress. La passerelle convertit les ressources Ingress en configurations de gouvernance du trafic qui exposent les services internes. Créer et utiliser un Ingress APIG pour exposer des services.
L'Ingress APIG remplace l'Ingress MSE. Dans les régions où les deux sont pris en charge, la console ACK n'affiche que les options de l'Ingress APIG. Les utilisateurs existants de l'Ingress MSE peuvent continuer à créer et à gérer leurs Ingress MSE. Pour utiliser l'Ingress MSE, soumettez un ticket afin de contacter l'équipe APIG.
Fonctionnement de l'Ingress APIG
Composants
-
APIG Controller :
Le APIG Controller gère les instances et les configurations de la passerelle API cloud-native. Il fonctionne en mode bypass et ne traite pas le trafic des services ; les instances de passerelle gèrent tout le trafic du plan de données.
Dans le cluster, installez le composant APIG Controller. Utilisez son CRD ApigConfig pour gérer de manière déclarative les instances de passerelle et configurer les options d'écouteur Ingress.
-
Passerelle API cloud-native :
Le APIG Controller crée la passerelle à partir de la ressource ApigConfig. La passerelle dispose d'un plan de contrôle et d'un plan de données.
Plan de contrôle : écoute les ressources Ingress, IngressClass et Service dans le cluster associé, les analyse et pousse les configurations vers le plan de données en temps réel.
Plan de données : traite les requêtes externes selon les règles du plan de contrôle et les transfère vers les services backend.
Mode de fonctionnement
Le APIG Controller écoute les ressources ApigConfig dans le cluster et maintient le cycle de vie et l'association au cluster de chaque instance de passerelle.
Le plan de contrôle de la passerelle récupère les modifications Ingress depuis le serveur API et met à jour les règles de routage. Lorsqu'une requête arrive, la passerelle la fait correspondre aux règles Ingress et la transfère vers les pods du service backend.
Les ressources et composants Kubernetes clés sont les suivants :
Service : abstraction représentant une ou plusieurs instances de service backend identiques.
Ingress : règles de proxy inverse qui acheminent les requêtes HTTP/HTTPS vers les services en fonction de l'hôte et du chemin URL.
IngressClass : identifie une implémentation de contrôleur Ingress. Utilisez le champ Parameter pour associer un ApigConfig qui implémente les règles de trafic issues des ressources Ingress.
ApigConfig : CRD fourni par le APIG Controller qui définit une instance de passerelle API cloud-native.
APIG Controller : gère les instances et les configurations de la passerelle en écoutant les ressources ApigConfig et en coordonnant la passerelle pour implémenter les règles de trafic Ingress.
Le diagramme suivant illustre le fonctionnement du APIG Controller.