Internetverkehr mit AWS Load Balancer Controller weiterleiten - Amazon EKS

Hilf mit, diese Seite zu verbessern

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Wenn Sie zu diesem Benutzerhandbuch beitragen möchten, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Internetverkehr mit AWS Load Balancer Controller weiterleiten

Der Load AWS Balancer Controller verwaltet AWS Elastic Load Balancers für einen Kubernetes-Cluster. Sie können den Controller verwenden, um Ihre Cluster-Apps dem Internet zugänglich zu machen. Der Controller stellt AWS Load Balancer bereit, die auf Clusterdienst- oder Ingress-Ressourcen verweisen. Mit anderen Worten, der Controller erstellt eine einzelne IP-Adresse oder einen einzelnen DNS-Namen, der auf mehrere Pods in Ihrem Cluster verweist.

Architekturdiagramm. Abbildung des Datenverkehrs, der von Internetnutzern zu Amazon Load Balancer kommt. Amazon Load Balancer verteilt den Datenverkehr auf die Pods im Cluster.

Der Controller sucht nach Kubernetes-Ingress- oder Service-Ressourcen. Als Reaktion darauf erstellt es die entsprechenden AWS Elastic Load Balancing Balancing-Ressourcen. Sie können das spezifische Verhalten der Load Balancer konfigurieren, indem Sie Anmerkungen auf die Kubernetes-Ressourcen anwenden. Sie können beispielsweise mithilfe von Anmerkungen AWS Sicherheitsgruppen an Load Balancer anhängen.

Der Controller stellt die folgenden Ressourcen bereit:

Kubernetes Ingress

Der LBC erstellt einen AWS Application Load Balancer (ALB), wenn Sie ein Kubernetes erstellen. Ingress Überprüfen Sie die Anmerkungen, die Sie auf eine Ingress-Ressource anwenden können.

Kubernetes-Dienst des Typs LoadBalancer

Der LBC erstellt einen AWS Network Load Balancer (NLB), wenn Sie einen Kubernetes-Dienst vom Typ erstellen. LoadBalancer Überprüfen Sie die Anmerkungen, die Sie auf eine Serviceressource anwenden können.

In der Vergangenheit wurde der Kubernetes Network Load Balancer für Instanzziele verwendet, aber der LBC wurde für IP-Ziele verwendet. Mit der Load AWS Balancer Controller-Version 2.3.0 oder höher können Sie NLBs mit beiden Zieltypen erstellen. Weitere Informationen zu NLB-Zieltypen finden Sie unter Zieltyp im Benutzerhandbuch für Network Load Balancer.

Der Controller ist ein Open-Source-Projekt, auf dem verwaltet wird. GitHub

Wir empfehlen Ihnen, sich vor der Bereitstellung des Controllers mit den Voraussetzungen und Überlegungen zur Weiterleitung von Anwendungs- und HTTP-Verkehr mit Application Load Balancers und vertraut zu machen. Weiterleiten von TCP- und UDP-Verkehr mit Network Load Balancers In diesen Themen stellen Sie eine Beispiel-App bereit, die einen AWS Load Balancer enthält.

Installieren Sie den Controller

Sie können eines der folgenden Verfahren verwenden, um den Load AWS Balancer Controller zu installieren:

Migrieren Sie von veralteten Controller-Versionen

  • Wenn Sie veraltete Versionen des Load AWS Balancer Controllers installiert haben, finden Sie weitere Informationen unter. Apps vom veralteten ALB Ingress Controller migrieren

  • Veraltete Versionen können nicht aktualisiert werden. Sie müssen entfernt und eine aktuelle Version des Load AWS Balancer Controllers installiert werden.

  • Zu den veralteten Versionen gehören:

    • AWS ALB Ingress Controller für Kubernetes („Ingress Controller“), ein Vorgänger des Load Balancer Controllers. AWS

    • Beliebige 0.1.x Version des AWS Load Balancer Controllers

Legacy-Cloud-Anbieter

Kubernetes beinhaltet einen Legacy-Cloud-Anbieter für. AWS Der ältere Cloud-Anbieter ist in der Lage, AWS Load Balancer bereitzustellen, ähnlich wie der AWS Load Balancer Controller. Der Legacy-Cloud-Anbieter erstellt Classic Load Balancers. Wenn Sie den Load AWS Balancer Controller nicht installieren, verwendet Kubernetes standardmäßig den alten Cloud-Anbieter. Sie sollten den Load AWS Balancer Controller installieren und vermeiden, den alten Cloud-Anbieter zu verwenden.

Wichtig

In den Versionen 2.5 und neuer wird der Load AWS Balancer Controller mit dem zum Standardcontroller für Kubernetes-Dienstressourcen type: LoadBalancer und erstellt für jeden Dienst einen AWS Network Load Balancer (NLB). Dies geschieht durch einen mutierenden Webhook für Services, der das Feld spec.loadBalancerClass auf service.k8s.aws/nlb für neue Services von type: LoadBalancer setzt. Sie können dieses Feature deaktivieren und wieder den alten Cloud Provider als Standard-Controller verwenden, indem Sie den Wert für den Helm-Chart enableServiceMutatorWebhook auf false setzen. Der Cluster stellt keine neuen Classic Load Balancer für Ihre Dienste bereit, es sei denn, Sie deaktivieren diese Funktion. Bestehende Classic Load Balancer werden weiterhin funktionieren.

OSZAR »
OSZAR »