Tous les produits
Search
Centre de documentation

Server Load Balancer:Guide d'utilisation de l'Ingress ALB

Dernière mise à jour :Aug 18, 2026

Outre Container Service for Kubernetes (ACK) et ACK Serverless, l'Ingress ALB fonctionne avec Enterprise Distributed Application Service (EDAS), Serverless App Engine (SAE) et les clusters Kubernetes gérés par vos soins pour répondre à divers besoins métier. Cette rubrique décrit les fonctionnalités de base et avancées de l'Ingress ALB et montre comment l'utiliser avec d'autres services Alibaba Cloud.

Fonctionnalités de base

Un AlbConfig est une définition de ressource personnalisée (CRD) fournie par le contrôleur Ingress ALB pour configurer les instances Application Load Balancer (ALB) et leurs écouteurs. Le tableau suivant explique comment installer et désinstaller le contrôleur Ingress ALB, créer et modifier des AlbConfigs, ainsi qu'activer Simple Log Service dans les clusters ACK et ACK Serverless.

Objet

Fonctionnalité

Description

Documentation ACK

Documentation ACK Serverless

Contrôleur Ingress ALB

Gérer le composant du contrôleur Ingress ALB

ACK fournit un contrôleur Ingress ALB managé basé sur ALB.

Installez le contrôleur Ingress ALB lors de la création d'un cluster ou depuis la page Add-ons.

Gérer le composant du contrôleur Ingress ALB

Gérer le composant du contrôleur Ingress ALB

Gestion des instances

Créer un AlbConfig

Un AlbConfig est une définition de ressource personnalisée (CRD) fournie par le contrôleur Ingress ALB que vous utilisez pour configurer une instance ALB et ses écouteurs.

Chaque AlbConfig correspond à une instance ALB ; vous devez donc créer plusieurs AlbConfigs pour utiliser plusieurs instances ALB.

Créer un AlbConfig

Créer un AlbConfig

Associer un Ingress

Un AlbConfig est associé à un Ingress via une ressource IngressClass Kubernetes standard. Créez d'abord un IngressClass, puis associez-le à l'AlbConfig.

Créer un IngressClass et l'associer à un AlbConfig

Utiliser un IngressClass pour associer un AlbConfig à un Ingress

Modifier un AlbConfig

Modifiez les propriétés d'un AlbConfig, telles que le nom et les paramètres vSwitch.

Les modifications prennent effet immédiatement après enregistrement.

Activer la journalisation des accès avec Simple Log Service

Pour que l'Ingress ALB collecte les journaux d'accès, spécifiez logProject et logStore dans l'AlbConfig.

Remarque
  • Créez manuellement un projet Simple Log Service. Pour plus d'informations, consultez Gérer les projets.

  • Le nom du Logstore doit commencer par alb_. Si le Logstore spécifié n'existe pas, le système le crée automatiquement.

Activer la journalisation des accès avec Simple Log Service

Activer la journalisation des accès avec Simple Log Service

Réutiliser une instance ALB existante

Pour réutiliser une instance ALB existante, spécifiez son ID lors de la création de l'AlbConfig.

Réutiliser une instance ALB existante

Réutiliser une instance ALB existante

Utiliser plusieurs instances ALB

Pour utiliser plusieurs instances ALB, spécifiez différents IngressClasses dans l'Ingress à l'aide de spec.ingressClassName.

Créer et utiliser plusieurs instances ALB

Créer et utiliser plusieurs instances ALB

Supprimer une instance ALB

Chaque instance ALB correspond à un AlbConfig. Pour supprimer une instance ALB, supprimez l'AlbConfig associé. Avant de supprimer un AlbConfig, supprimez tous les Ingresses qui lui sont associés.

Supprimer un AlbConfig

Supprimer un AlbConfig

Gestion des écouteurs

Spécifier un certificat HTTPS

Spécifiez un certificat Application Load Balancer (ALB) en utilisant un AlbConfig et en configurant ses listeners pour indiquer l'ID du certificat pour HTTPS.

Configurer un certificat HTTPS pour activer la communication chiffrée

Configurer un certificat HTTPS pour activer la communication chiffrée

Prise en charge des politiques de sécurité TLS

Lors de la configuration d'un écouteur HTTPS dans un AlbConfig, spécifiez une politique de sécurité TLS personnalisée ou celle par défaut du système. Pour plus d'informations, consultez Politiques de sécurité TLS.

Spécifier une politique de sécurité TLS

Spécifier une politique de sécurité TLS

Fonctionnalités avancées

Dans un cluster ACK, l'Ingress ALB gère l'accès externe aux Services du cluster, offrant des capacités d'équilibrage de charge de niveau 7. Le tableau suivant décrit comment utiliser un Ingress ALB pour acheminer les requêtes provenant de différents noms de domaine ou chemins URL vers différents groupes de serveurs backend, rediriger les requêtes HTTP vers HTTPS et mettre en œuvre des déploiements canaris.

Fonctionnalité

Description

Documentation ACK

Documentation ACK Serverless

Acheminer les requêtes en fonction des noms de domaine

Créez un Ingress simple pour acheminer les requêtes en fonction d'un nom de domaine spécifié ou d'un nom de domaine vide.

Acheminer les requêtes en fonction des noms de domaine

Acheminer les requêtes en fonction des noms de domaine

Acheminer les requêtes en fonction des chemins URL

L'Ingress ALB achemine les requêtes en fonction des chemins URL. Spécifiez le mode de correspondance dans le champ pathType. pathType prend en charge trois modes.

Acheminer les requêtes en fonction des chemins URL

Acheminer les requêtes en fonction des chemins URL

Règles de transfert personnalisées

L'Ingress ALB prend en charge des règles de transfert personnalisées composées de conditions de correspondance et d'actions. Avec l'Ingress ALB, vous pouvez :

  • Définir des conditions de correspondance personnalisées basées sur des critères tels que le nom de domaine de la requête, le chemin, l'en-tête de requête, la chaîne de requête, la méthode de requête, le Cookie et l'IP source dans l'annotation alb.ingress.kubernetes.io/conditions.<service-name>.

  • Configurer des actions de transfert personnalisées, telles que des réponses fixes, des redirections, l'insertion d'en-têtes de requête, la mise en miroir du trafic, le transfert vers plusieurs groupes de serveurs backend et les réécritures, à l'aide de l'annotation alb.ingress.kubernetes.io/actions.<service-name>.

  • Définir des conditions de correspondance personnalisées, telles que le nom de domaine, le chemin et l'en-tête HTTP, dans la console ACK.

  • Définir des actions personnalisées, telles que le transfert de requêtes ou le renvoi d'une réponse fixe, dans la console ACK.

Important
  • Une règle de transfert prend en charge un maximum de 10 conditions de correspondance.

  • Les conditions de correspondance ResponseHeader et ResponseStatusCode ne s'appliquent qu'aux règles de transfert de réponse personnalisées.

Personnaliser les règles de transfert pour l'Ingress ALB

Personnaliser les règles de transfert pour l'Ingress ALB

Configurer les vérifications d'état

Utilisez une annotation pour configurer les vérifications d'état et garantir la disponibilité du service.

Configurer les vérifications d'état

Configurer les vérifications d'état

Configurer la découverte automatique des certificats

Créez d'abord un certificat dans la console Certificate Management Service. Le contrôleur Ingress ALB découvre alors automatiquement le certificat et le fait correspondre au nom de domaine spécifié dans la configuration TLS de l'Ingress.

Configurer un certificat HTTPS pour activer la communication chiffrée

Configurer un certificat HTTPS pour activer la communication chiffrée

Rediriger HTTP vers HTTPS

Ajoutez l'annotation suivante pour rediriger les requêtes HTTP vers le port HTTPS 443.

Rediriger HTTP vers HTTPS

Rediriger HTTP vers HTTPS

Prise en charge des protocoles HTTPS et gRPC

ALB prend en charge HTTPS et gRPC en tant que protocoles backend. Configurez-les pour un Ingress ALB en définissant l'annotation sur alb.ingress.kubernetes.io/backend-protocol: "grpc" ou alb.ingress.kubernetes.io/backend-protocol: "https". Pour utiliser un Ingress afin d'acheminer les requêtes vers un Service gRPC, le nom de domaine correspondant doit disposer d'un certificat SSL et utiliser le protocole TLS pour la communication.

Remarque

Le protocole backend ne peut pas être modifié. Si vous devez changer de protocole, supprimez et recréez l'Ingress.

Prise en charge des protocoles backend HTTPS et gRPC

Prise en charge des protocoles backend HTTPS et gRPC

Prise en charge de la réécriture

Configurez des réécritures en définissant l'annotation alb.ingress.kubernetes.io/rewrite-target: /path/${2}.

Remarque
  • Dans l'annotation rewrite-target, les variables de groupe de capture de type ${number} doivent être configurées sur un path de type Prefix.

  • Le paramètre path ne prend pas en charge par défaut les symboles d'expression régulière tels que * et ?. Pour les utiliser, configurez l'annotation rewrite-target.

  • Le path doit commencer par /.

Configurer les réécritures

Configurer les réécritures

Configurer des ports d'écoute personnalisés

L'Ingress ALB prend en charge les ports d'écoute personnalisés. Cela vous permet d'exposer des services simultanément sur le port 80 et le port 443.

Configurer des ports d'écoute personnalisés

Configurer des ports d'écoute personnalisés

Configurer la priorité des règles de transfert

Utilisez une annotation pour définir la priorité des règles de transfert pour un Ingress ALB.

Remarque

Les priorités des règles doivent être uniques au sein d'un même écouteur. L'annotation alb.ingress.kubernetes.io/order spécifie l'ordre de priorité parmi les Ingresses. La valeur varie de 1 à 1000, une valeur plus petite indiquant une priorité plus élevée.

Configurer la priorité des règles de transfert

Configurer la priorité des règles de transfert

Mettre en œuvre un déploiement canari à l'aide d'annotations

L'Ingress ALB offre des capacités de routage complexes et prend en charge les déploiements canaris basés sur l'en-tête, le Cookie et le poids. Utilisez des annotations pour mettre en œuvre des déploiements canaris. Pour activer cette fonctionnalité, définissez l'annotation alb.ingress.kubernetes.io/canary: "true". Vous pouvez utiliser différentes annotations pour implémenter divers types de déploiements canaris.

Mettre en œuvre la persistance de session à l'aide d'annotations

L'Ingress ALB prend en charge la persistance de session via les annotations alb.ingress.kubernetes.io/sticky-session et alb.ingress.kubernetes.io/sticky-session-type.

Mettre en œuvre la persistance de session à l'aide d'annotations

Mettre en œuvre la persistance de session à l'aide d'annotations

Spécifier un algorithme d'équilibrage de charge pour un groupe de serveurs

L'Ingress ALB permet de spécifier l'algorithme d'équilibrage de charge du groupe de serveurs en définissant l'annotation Ingress alb.ingress.kubernetes.io/backend-scheduler.

Spécifier un algorithme d'équilibrage de charge pour un groupe de serveurs

Spécifier un algorithme d'équilibrage de charge pour un groupe de serveurs

Configurer le partage de ressources cross-origin (CORS)

Configurez le partage de ressources cross-origin (CORS) à l'aide d'annotations.

Configurer le CORS

Configurer le CORS

Connexions persistantes backend

ALB prend en charge les connexions keep-alive backend pour réduire la consommation de ressources au niveau de la couche de connexion et améliorer les performances de traitement. Dans l'Ingress ALB, activez cette fonctionnalité à l'aide de l'annotation alb.ingress.kubernetes.io/backend-keepalive.

Connexions persistantes backend

Connexions persistantes backend

Prise en charge de la limitation QPS

ALB prend en charge la limitation QPS pour les règles de transfert. La valeur de limitation QPS peut varier de 1 à 100 000. Pour l'Ingress ALB, définissez simplement l'annotation alb.ingress.kubernetes.io/traffic-limit-qps.

Prise en charge de la limitation QPS

Prise en charge de la limitation QPS

Démarrage progressif

L'Ingress ALB permet d'activer le démarrage progressif à l'aide de l'annotation alb.ingress.kubernetes.io/slow-start-enabled et de définir la durée du démarrage progressif à l'aide de l'annotation alb.ingress.kubernetes.io/slow-start-duration. La plage de valeurs est de 30 à 900 secondes (s).

Remarque

Plus la durée est longue, plus l'augmentation du trafic est lente.

Démarrage progressif backend

Démarrage progressif backend

Vidage de connexion

L'Ingress ALB prend en charge le vidage de connexion. Activez le vidage de connexion à l'aide de l'annotation alb.ingress.kubernetes.io/connection-drain-enabled et définissez la période de délai d'attente à l'aide de l'annotation alb.ingress.kubernetes.io/connection-drain-timeout. La période de délai d'attente peut être définie sur une valeur comprise entre 0 et 900 secondes (s).

Vidage de connexion

Vidage de connexion

Monter des pods Kubernetes et des instances ECS en tant que serveurs backend

L'Ingress ALB permet de configurer des groupes de serveurs backend à l'aide de l'annotation alb.ingress.kubernetes.io/actions.<service-name>. Attachez des groupes de serveurs backend en utilisant un nom de service ou un ID de groupe de serveurs. Cela permet un attachement mixte de Pods issus d'un cluster Kubernetes et d'instances Elastic Compute Service (ECS) externes au cluster.

Utiliser l'Ingress ALB pour mettre en œuvre un montage hybride, un montage inter-régions et un montage vers un centre de données sur site

Utiliser l'Ingress ALB pour mettre en œuvre un montage hybride, un montage inter-régions et un montage vers un centre de données sur site

Monter des ressources inter-régions et des centres de données sur site en combinant des produits tels que Cloud Enterprise Network et Transit Router

En utilisant ALB avec des produits comme Cloud Enterprise Network (CEN) et Transit Router, acheminez les requêtes vers des serveurs situés dans des VPC d'autres régions ou vers des centres de données sur site.

Les valeurs JSON dans les annotations Ingress doivent utiliser la ponctuation anglaise standard. Le mélange de ponctuation chinoise et anglaise provoque une erreur de réconciliation invalid character. Modifiez ces valeurs en utilisant une méthode de saisie anglaise.

Intégrations de l'Ingress ALB

Intégrations Alibaba Cloud

Produit Alibaba Cloud

Fonctionnalité

Description

Documentation

WAF

Activer la protection WAF pour l'Ingress ALB

Web Application Firewall (WAF) protège vos applications contre les attaques web courantes. Lorsque la protection WAF est activée pour un Ingress ALB, tout le trafic vers l'instance ALB est protégé.

Activer la protection WAF pour l'Ingress ALB

EDAS

Créer une route d'application (Ingress ALB)

Enterprise Distributed Application Service (EDAS) utilise l'Ingress ALB pour le routage des applications. Basé sur Application Load Balancer (ALB) d'Alibaba Cloud, l'Ingress ALB offre une gestion avancée du trafic, est compatible avec Nginx Ingress et gère le routage métier complexe ainsi que la découverte automatique des certificats.

Créer une route d'application (Ingress ALB)

SAE

Mettre en œuvre des déploiements canaris de bout en bout basés sur les passerelles Ingress

Utilisez une passerelle Ingress ALB pour mettre en œuvre un contrôle du trafic de bout en bout pour vos applications SAE sans modifier aucun code métier.

ASM

Intégrer avec ALB à l'aide d'un Ingress.

Intégrez Alibaba Cloud Service Mesh (ASM) avec Application Load Balancer (ALB) à l'aide d'un Ingress. Cela permet aux utilisateurs de ALB de tirer parti des capacités d'ASM.

Intégrer ASM avec une instance Application Load Balancer

HPA

Intégrer avec ALB à l'aide d'un Ingress.

Intégrez Horizontal Pod Autoscaler (HPA) avec Application Load Balancer (ALB) à l'aide d'un Ingress pour permettre une mise à l'échelle automatique des applications basée sur les QPS.

Utiliser HPA pour mettre en œuvre la mise à l'échelle automatique des applications basée sur les données QPS

Knative

Accéder aux services via ALB dans les clusters ACK ou ACK Serverless où le composant Knative est installé.

Knative est un framework serverless basé sur Kubernetes. Utilisez Knative pour configurer la découverte de service ALB et mettre en œuvre des déploiements canaris basés sur les en-têtes et les cookies.

Utiliser une passerelle ALB

ACK One

Créer une passerelle ALB multi-clusters à l'aide d'un Ingress.

Distributed Cloud Container Platform for Kubernetes (ACK One) est une plateforme cloud-native d'entreprise d'Alibaba Cloud destinée à des scénarios tels que les clouds hybrides, la gestion multi-clusters, le calcul distribué et la reprise après sinistre. La passerelle multi-clusters ALB d'ACK One, qui est le mode multi-clusters de l'Ingress ALB, vous permet de mettre en œuvre la reprise après sinistre active-active au niveau des zones, la reprise après sinistre géographique, l'équilibrage de charge multi-clusters et le routage basé sur les en-têtes vers des clusters spécifiques.

Intégrations open source

Produit open source

Fonctionnalité

Description

Documentation

Kubernetes géré par vos soins sur le cloud

Utiliser ALB dans un cluster Kubernetes géré par vos soins à l'aide d'un Ingress.

Dans un cluster Kubernetes construit sur des ressources Elastic Compute Service (ECS), utilisez un Ingress pour orchestrer le routage ALB afin d'assurer la découverte automatique des services et l'équilibrage de charge intra-cluster.

Guide d'utilisation de l'Ingress ALB sur les clusters Kubernetes gérés par vos soins