Aidez à améliorer cette page
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Le AWS Load Balancer Controller gère les AWS Elastic Load Balancers pour un cluster Kubernetes. Vous pouvez utiliser le contrôleur pour exposer les applications de votre cluster à Internet. Le contrôleur fournit des équilibreurs de AWS charge qui pointent vers les ressources de service ou d'entrée du cluster. En d'autres termes, le contrôleur crée une adresse IP ou un nom DNS unique qui pointe vers plusieurs pods de votre cluster.

Le contrôleur surveille les ressources Kubernetes Ingress ou Service. En réponse, il crée les ressources AWS Elastic Load Balancing appropriées. Vous pouvez configurer le comportement spécifique des équilibreurs de charge en appliquant des annotations aux ressources Kubernetes. Par exemple, vous pouvez associer des groupes AWS de sécurité aux équilibreurs de charge à l'aide d'annotations.
Le contrôleur fournit les ressources suivantes :
- Kubernetes
Ingress
-
Le LBC crée un AWS Application Load Balancer (ALB) lorsque vous créez un Kubernetes.
Ingress
Passez en revue les annotations que vous pouvez appliquer à une ressource Ingress. - Service Kubernetes du type
LoadBalancer
-
Le LBC crée un AWS Network Load Balancer (NLB) lorsque vous créez un service Kubernetes de ce type.
LoadBalancer
Passez en revue les annotations que vous pouvez appliquer à une ressource de service.Dans le passé, l'équilibreur de charge réseau Kubernetes était utilisé pour les cibles d'instance, mais le LBC était utilisé pour les cibles IP. Avec la version AWS Load Balancer Controller
2.3.0
ou une version ultérieure, vous pouvez créer en NLBs utilisant l'un ou l'autre type de cible. Pour plus d'informations sur les types de cibles NLB, consultez Type de cible dans le guide de l'utilisateur de Network Load Balancer.
Le contrôleur est un projet open source
Avant de déployer le contrôleur, nous vous recommandons de consulter les conditions préalables et les considérations des sections Router l'application et le trafic HTTP avec les équilibreurs de charge d'application et. Acheminez le trafic TCP et UDP avec des équilibreurs de charge réseau Dans ces rubriques, vous allez déployer un exemple d'application qui inclut un équilibreur de AWS charge.
Installez le contrôleur
Vous pouvez utiliser l'une des procédures suivantes pour installer le AWS Load Balancer Controller :
-
Si vous utilisez Amazon EKS pour la première fois, nous vous recommandons d'utiliser Helm pour l'installation, car cela simplifie l'installation du AWS Load Balancer Controller. Pour de plus amples informations, veuillez consulter Installez le contrôleur AWS Load Balancer avec Helm.
-
Pour les configurations avancées, telles que les clusters avec un accès réseau restreint aux registres de conteneurs publics, utilisez les manifestes Kubernetes. Pour de plus amples informations, veuillez consulter Installer le AWS Load Balancer Controller avec des manifestes.
Migrer à partir de versions de contrôleurs obsolètes
-
Si vous avez installé des versions obsolètes du AWS Load Balancer Controller, consultez. Migrer des applications depuis le contrôleur d'entrée ALB obsolète
-
Les versions obsolètes ne peuvent pas être mises à niveau. Ils doivent être supprimés et une version actuelle du AWS Load Balancer Controller doit être installée.
-
Les versions déconseillées incluent :
-
AWS Contrôleur d'entrée ALB pour Kubernetes (« Ingress Controller »), prédécesseur du Load Balancer Controller. AWS
-
N'importe quelle
0.1.
version du AWS Load Balancer Controllerx
-
Fournisseur de cloud traditionnel
Kubernetes inclut un ancien fournisseur de cloud pour. AWS L'ancien fournisseur de cloud est capable de fournir des équilibreurs de AWS charge, comme le AWS Load Balancer Controller. L'ancien fournisseur de cloud crée des équilibreurs de charge classiques. Si vous n'installez pas le AWS Load Balancer Controller, Kubernetes utilisera par défaut l'ancien fournisseur de cloud. Vous devez installer le AWS Load Balancer Controller et éviter d'utiliser l'ancien fournisseur de cloud.
Important
Dans les versions 2.5 et ultérieures, le AWS Load Balancer Controller devient le contrôleur par défaut pour les ressources de service Kubernetes avec le Network Load Balancer (NLB) type: LoadBalancer
et crée un AWS Network Load Balancer (NLB) pour chaque service. Pour ce faire, il génère un webhook de mutation pour les services, qui définit le champ spec.loadBalancerClass
sur service.k8s.aws/nlb
pour les nouveaux services d'équilibreur type: LoadBalancer
. Vous pouvez désactiver cette fonctionnalité et revenir à l'utilisation de l'ancien fournisseur de cloudenableServiceMutatorWebhook
des charts de Helm sur false
. Le cluster ne fournira pas de nouveaux équilibreurs de charge classiques pour vos services à moins que vous ne désactiviez cette fonctionnalité. Les équilibreurs de charge Classic Load Balancer existants continueront de fonctionner.