Lorsque les applications déployées dans des clusters Kubernetes doivent accepter du trafic provenant d'Internet ou d'un réseau privé, vous devez joindre un équilibreur de charge. Enterprise Distributed Application Service (EDAS) vous permet d'associer des instances Classic Load Balancer (CLB) accessibles depuis Internet ou internes à vos applications et gère la configuration des écouteurs ainsi que les ressources CLB pour vous.
Effectuez toutes les modifications relatives aux écouteurs et aux certificats dans la console EDAS. Les modifications apportées via la console Server Load Balancer (SLB) peuvent entraîner des échecs de configuration et rendre l'application inaccessible.
Le comportement de l'association CLB varie selon le type de cluster :
| Type de cluster | Comportement CLB |
|---|---|
| Cluster Kubernetes autogéré | Chaque application nécessite une nouvelle instance CLB dédiée |
| Cluster Container Service for Kubernetes (ACK) | Chaque application peut utiliser une nouvelle instance CLB dédiée ou partager une instance CLB existante avec d'autres applications |
Prérequis
Avant de commencer, assurez-vous d'avoir :
Une application déployée dans un cluster ACK ou un cluster Kubernetes autogéré dans EDAS
Les autorisations nécessaires pour gérer les ressources SLB dans la console EDAS
Associer une instance CLB accessible depuis Internet
Connectez-vous à la console EDAS. Dans le volet de navigation de gauche, choisissez Application Management > Applications. Dans la barre de navigation supérieure, sélectionnez une région. Dans la partie supérieure de la page, sélectionnez un namespace de microservices. Sélectionnez Kubernetes Cluster dans la liste déroulante Cluster Type, puis cliquez sur le nom de l'application cible.
-
Sur la page Application Overview, dans la section Access configuration, cliquez sur l'icône + située à côté de SLB (Public Network).
RemarqueSi une instance CLB est déjà associée, son adresse IP et son numéro de port s'affichent. Cliquez sur l'icône de modification pour ajuster la configuration, ou sur l'icône de suppression pour dissocier l'instance CLB.
-
Dans la boîte de dialogue Load balancing (public network), configurez les paramètres suivants et cliquez sur OK. Listener configuration Ajoutez un ou plusieurs écouteurs par type de protocole. Cliquez sur Add Listener pour en ajouter d'autres.
RemarqueLorsque vous sélectionnez Create SLB , un récapitulatif tarifaire apparaît sous External Traffic Policy , indiquant les résultats de la vérification des ressources, les spécifications disponibles, la quantité, la méthode de facturation et la période de validité pour les instances par abonnement. Cliquez sur View Price pour obtenir le détail des tarifs.
Paramètre Description Select SLB Sélectionnez Create SLB pour acheter une nouvelle instance CLB, ou choisissez une instance CLB existante dans la liste déroulante. Scheduling Algorithm Algorithme d'équilibrage de charge. Valeurs possibles : RR (Round Robin) et WRR (Weighted Round Robin). External Traffic Policy Contrôle la manière dont le trafic est acheminé vers les pods. Valeurs possibles : Local et Cluster. Pour plus de détails, consultez Politique de trafic externe : Local vs. Cluster. Existing listening information of the SLB instance S'affiche uniquement lorsque vous sélectionnez une instance CLB existante. Indique le protocole réseau existant, le numéro de port et le numéro de port du conteneur. Protocole Paramètres TCP ou HTTP SLB Port (Application) : Port frontal (1–65535) utilisé pour accéder à l'application. Container Port (Target Port) : Port sur lequel l'application écoute, par exemple 8080pour les applications web.UDP SLB Port (Application) : Port frontal (1–65535) utilisé pour accéder à l'application. Container Port (Target Port) : Port sur lequel l'application écoute. HTTPS HTTPS Port (Application) : Port frontal (1–65535) utilisé pour accéder à l'application. SSL Certificate : Sélectionnez un certificat téléchargé dans la liste déroulante. Container Port (Target Port) : Port sur lequel l'application écoute, par exemple 8080pour les applications web. -
(Facultatif) Si le trafic dépasse la capacité d'une seule instance CLB, répétez les étapes 2 à 3 pour associer des instances supplémentaires et répartir la charge.
RemarqueLa capacité CLB est mesurée par les maximum connections , les new connections per second et les queries per second (QPS) .
Associer une instance CLB interne
La procédure d'association d'une instance CLB interne est identique à celle d'une instance accessible depuis Internet, avec les différences suivantes :
À l'étape 2, cliquez sur l'icône + située à côté de SLB (Private Network) au lieu de SLB (Public Network) .
Le titre de la boîte de dialogue est SLB (Private Network) .
Les instances CLB internes prennent en charge les écouteurs TCP, HTTP et HTTPS. Le protocole UDP n'est pas disponible.
Pour la procédure complète, consultez Associer une instance CLB accessible depuis Internet et appliquez les différences mentionnées ci-dessus.
Politique de trafic externe : Local vs. Cluster
La politique de trafic externe contrôle la manière dont l'instance CLB achemine le trafic vers les pods du cluster.
| Politique | Comportement | Préservation de l'adresse IP source | Algorithme recommandé |
|---|---|---|---|
| Local | Achemine le trafic uniquement vers les pods situés sur les nœuds où s'exécutent les pods du service. Seuls ces nœuds sont ajoutés en tant que serveurs backend. | Préserve les adresses IP source de la couche 4 | WRR – Le Container Controller Manager (CCM) ajuste le poids du nœud en fonction du nombre de pods pour une meilleure répartition de la charge. |
| Cluster | Achemine le trafic vers les pods situés sur n'importe quel nœud du cluster. Tous les nœuds sont ajoutés en tant que serveurs backend. Les requêtes peuvent atteindre un pod même si aucun pod ne s'exécute sur le nœud consulté. | Ne préserve pas les adresses IP source de la couche 4 | -- |
Vérifier l'association
Une fois l'association terminée, vérifiez que le trafic atteint bien l'application :
Sur la page Application Overview , consultez la section Access configuration . L'adresse IP et le numéro de port du CLB apparaissent à côté de SLB (Public Network) ou de SLB (Private Network) .
Ouvrez un navigateur et accédez à
<CLB-IP>:<CLB-port>(par exemple,115.xx.xx.xx:80). La page d'accueil de l'application devrait se charger.
Si l'association échoue :
L'adresse IP et le port n'apparaissent pas dans la section Access configuration .
Accédez à la page Change Records pour afficher les détails des modifications et résoudre les problèmes en vous basant sur les erreurs enregistrées.
Limites
Le non-respect de ces limites peut entraîner des échecs de configuration et rendre l'application inaccessible.
N'utilisez pas la console ACK, kubectl ou des outils tiers pour supprimer ou modifier les ressources de service créées par EDAS (libellé :
edas-domain:edas-admin).N'utilisez pas la console SLB pour supprimer ou modifier les instances CLB achetées par EDAS.
N'utilisez pas la console SLB pour supprimer ou modifier les écouteurs sur les instances CLB utilisées par EDAS.
N'utilisez pas kubectl ou la console ACK pour modifier les politiques de trafic externe des services.