L'exécution de charges de travail serverless sur Kubernetes exige généralement la configuration manuelle des politiques d'Auto Scaling, la gestion du routage ingress et le développement de logiques de répartition du trafic. Service Mesh (ASM) intègre Knative Serving à votre cluster Container Service for Kubernetes (ACK) ou ACK Serverless. Cette intégration vous permet de déployer des charges de travail HTTP qui s'adaptent automatiquement, y compris jusqu'à zéro instance, et d'effectuer des déploiements canari via le maillage de services, sans avoir à gérer un contrôleur d'entrée distinct.
Fonctionnalités
Knative est un framework serverless basé sur Kubernetes, conçu pour établir une norme d'orchestration de conteneurs cloud-native et multiplateforme dédiée aux applications serverless. Il concrétise cette norme en unifiant la création de conteneurs (ou de fonctions), la gestion des charges de travail (Auto Scaling) et les modèles événementiels. Knative permet également d'intégrer et de router les services, ainsi que d'effectuer des déploiements canari grâce à Istio.
Knative sur ASM offre les fonctionnalités suivantes :
| Fonctionnalité | Description |
|---|---|
| Auto Scaling basé sur les requêtes | Ajuste automatiquement le nombre de pods en fonction des requêtes entrantes et des événements Knative. Le nombre d'instances revient à zéro en l'absence de trafic. |
| Déploiements canari basés sur le trafic | Répartit le trafic entre plusieurs révisions d'un service Knative pour effectuer des déploiements progressifs. |
| Ingress unifié via les passerelles ASM | Achemine tout le trafic entrant par une passerelle d'entrée ASM, ce qui élimine le besoin d'un contrôleur d'entrée séparé. |
Fonctionnement
Déployez le composant Knative Serving dans un cluster ACK ou ACK Serverless depuis la console ACK.
Créez une passerelle d'entrée nommée ingressgateway dans la console ASM. Knative Serving utilise cette passerelle comme passerelle de service.
Déployez vos applications sous forme de services Knative. ASM gère le routage du trafic tandis que Knative Serving assure l'Auto Scaling.
Si vous avez sélectionné Kourier comme passerelle lors du déploiement de Knative, désinstallez-le après le déploiement :
Dans la console ACK, accédez à Clusters, cliquez sur le nom de votre cluster, puis choisissez Applications > Knative. Dans l'onglet Components, repérez Kourier dans la section Add-on Component et cliquez sur Uninstall.
Pour plus d'informations sur le framework Knative, consultez la rubrique Présentation de Knative.