Pour les scénarios de gestion du trafic à grande échelle dans des systèmes distribués ou des applications microservices, en particulier lorsque Istio sert de framework de maillage de services, vous pouvez adopter Alibaba Cloud Service Mesh (ASM) comme passerelle Knative. Compatible avec l'Istio open source, ASM fournit un plan de contrôle entièrement géré qui simplifie la gouvernance des services.
Ce guide explique comment sélectionner ASM comme passerelle Knative et vérifier l'accès de bout en bout via l'ingress ASM.
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
Une instance ASM en version 1.21.6.84 ou ultérieure. Consultez Créer une instance ASM.
Votre cluster ACS ajouté à l'instance ASM sous Kubernetes Clusters lors de la création de l'instance ASM.
Étape 1 : Sélectionner ASM comme passerelle Knative
Connectez-vous à la console ACS. Dans le volet de navigation de gauche, cliquez sur Clusters.
Cliquez sur l'ID du cluster à gérer. Dans le volet de navigation de gauche de la page de détails du cluster, choisissez Applications > Knative.
Sur la page Knative, cliquez sur l'onglet Components. Cliquez sur Deploy Knative, sélectionnez ASM dans la section Gateway, puis cliquez sur Deploy.
Une fois le déploiement terminé, ASM est actif en tant que passerelle Knative.
Étape 2 : Accéder à un service Knative via l'ingress ASM
Cet exemple crée un Knative Service nommé helloworld-go et vérifie l'accès via l'ingress ASM.
Connectez-vous à la console ACS. Dans le volet de navigation de gauche, cliquez sur Clusters.
Cliquez sur l'ID du cluster à gérer. Dans le volet de navigation de gauche de la page de détails du cluster, choisissez Applications > Knative.
-
Sur la page Knative, cliquez sur l'onglet Services. Définissez le Namespace sur default, puis cliquez sur Create from Template. Collez le YAML suivant et cliquez sur Create.
ImportantRemplacez
{REGION-ID}par l'ID de région de votre cluster (par exemple,cn-beijing).apiVersion: serving.knative.dev/v1 kind: Service metadata: name: helloworld-go spec: template: spec: containers: - image: registry.{REGION-ID}.aliyuncs.com/knative-sample/helloworld-go:73fbdd56 # Replace {REGION-ID} with your cluster's region ID. env: - name: TARGET value: "Knative" Sur la page Services, localisez l'entrée
helloworld-goet notez l'adresse de la passerelle dans la colonne Gateway.-
Exécutez la commande suivante pour envoyer une requête au service. Remplacez
39.XX.XX.XXpar l'adresse IP de votre passerelle.curl -H "host: helloworld-go.default.example.com" http://39.XX.XX.XXL'option
-H host:définit manuellement l'en-têteHostcar aucun enregistrement DNS ne pointe vers l'IP de la passerelle dans cet environnement de test. Knative route les requêtes en fonction de cet en-tête. Résultat attendu :Hello Knative!
(Facultatif) Étape 3 : Consulter le tableau de bord de supervision Knative
L'onglet Monitoring Dashboards de la page Knative offre une observabilité prête à l'emploi pour vos services. Pour plus d'informations, consultez Consulter le tableau de bord Knative.

Étapes suivantes
Configurer un nom de domaine personnalisé — associez un domaine personnalisé à vos services Knative.
Configurer un certificat pour accéder aux services via HTTPS — activez l'accès HTTPS à l'aide d'un certificat.
Déployer un service gRPC dans Knative — améliorez l'efficacité réseau grâce à gRPC.
Configurer la surveillance des ports dans Knative — suivez l'état de santé et la disponibilité de vos services.