|
Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar. |
Einrichten des Amazon ELB Network Load Balancer
Diese Anleitung beschreibt, wie man einen Netzwerk-Load-Balancer (NLB) im EC2-Dienst von Amazon einrichtet, der den Datenverkehr zu mehreren Instanzen auf EC2 leitet.
Diese Beispiele zeigen, wie der Lastausgleich konfiguriert wird, um den Datenverkehr an drei Rancher-Serverknoten zu leiten. Wenn Rancher auf einem K3s Kubernetes-Cluster installiert ist, sind nur zwei Knoten erforderlich.
Dieses Tutorial behandelt eine mögliche Methode zur Einrichtung Ihres Load-Balancers, nicht die einzige Methode. Andere Arten von Load-Balancern, wie ein Classic Load Balancer oder Application Load Balancer, könnten ebenfalls den Datenverkehr zu den Rancher-Serverknoten leiten.
Rancher unterstützt nur die Verwendung des Amazon NLB, wenn der Datenverkehr im tcp Modus für Port 443 und nicht im tls Modus terminiert wird. Das liegt daran, dass der NLB die richtigen Header in Anfragen nicht einfügt, wenn sie am NLB terminiert werden. Das bedeutet, dass Sie, wenn Sie von Amazon Certificate Manager (ACM) verwaltete Zertifikate verwenden möchten, einen ALB verwenden sollten.
Anforderungen
Diese Anweisungen setzen voraus, dass Sie bereits Linux-Instanzen in EC2 erstellt haben. Der Load-Balancer leitet den Datenverkehr zu diesen Knoten.
1. Zielgruppen erstellen
Beginnen Sie mit der Erstellung von zwei Zielgruppen für das TCP-Protokoll, eine mit TCP-Port 443 und eine für TCP-Port 80 (die eine Umleitung zu TCP-Port 443 bereitstellt). Sie fügen Ihre Linux-Knoten zu diesen Gruppen hinzu.
Ihr erster NLB-Konfigurationsschritt besteht darin, zwei Zielgruppen zu erstellen. Technisch gesehen ist nur Port 443 erforderlich, um auf Rancher zuzugreifen, aber es ist praktisch einen Listener für Port 80 hinzuzufügen, da der Datenverkehr zu Port 80 automatisch auf Port 443 umgeleitet wird.
Der Traefik Ingress sollte den Datenverkehr von Port 80 auf Port 443 umleiten.
-
Melden Sie sich bei der Amazon AWS-Konsole an, um zu beginnen. Stellen Sie sicher, dass Sie die Region auswählen, in der Ihre EC2-Instanzen (Linux-Knoten) erstellt werden.
-
Wählen Sie Services und wählen Sie EC2, finden Sie den Abschnitt Load Balancing und öffnen Sie Zielgruppen.
-
Klicken Sie auf Create target group, um die erste Zielgruppe für TCP-Port 443 zu erstellen.
|
Für Details zu den Gesundheitsprüfungen des Traefik Ingress verweisen Sie auf diesen Abschnitt. |
Zielgruppe (TCP-Port 443)
Konfigurieren Sie die erste Zielgruppe gemäß der Tabelle unten.
| Option | Einstellung |
|---|---|
Name der Zielgruppe |
|
Zieltyp |
|
Protokoll |
|
Port |
|
VPC |
Wählen Sie Ihre VPC |
Einstellungen für die Zustandsprüfung:
| Option | Einstellung |
|---|---|
Protokoll |
TCP |
Port |
|
Gesunder Schwellenwert |
|
Ungesunder Schwellenwert |
|
Wartezeit |
|
Intervall |
|
Klicken Sie auf Create target group, um die zweite Zielgruppe für TCP-Port 80 zu erstellen.
Zielgruppe (TCP-Port 80)
Konfigurieren Sie die zweite Zielgruppe gemäß der Tabelle unten.
| Option | Einstellung |
|---|---|
Name der Zielgruppe |
|
Zieltyp |
|
Protokoll |
|
Port |
|
VPC |
Wählen Sie Ihre VPC |
Einstellungen für die Zustandsprüfung:
| Option | Einstellung |
|---|---|
Protokoll |
TCP |
Port |
|
Gesunder Schwellenwert |
|
Ungesunder Schwellenwert |
|
Wartezeit |
|
Intervall |
|
2. Ziele registrieren
Fügen Sie als Nächstes Ihre Linux-Knoten zu beiden Zielgruppen hinzu.
Wählen Sie die Zielgruppe mit dem Namen rancher-tcp-443, klicken Sie auf die Registerkarte Ziele und wählen Sie Bearbeiten.
Wählen Sie die Instanzen (Linux-Knoten) aus, die Sie hinzufügen möchten, und klicken Sie auf Zu registrierten hinzufügen.
Wenn die Instanzen hinzugefügt sind, klicken Sie auf Speichern unten rechts auf dem Bildschirm.
Wiederholen Sie diese Schritte und ersetzen Sie rancher-tcp-443 durch rancher-tcp-80. Die gleichen Instanzen müssen als Ziele zu dieser Zielgruppe hinzugefügt werden.
3. Erstellen Sie Ihr NLB
Verwenden Sie den Amazon-Assistenten, um einen Netzwerk-Lastausgleich zu erstellen. Im Rahmen dieses Prozesses fügen Sie die Zielgruppen hinzu, die Sie in 1 erstellt haben. Zielgruppen erstellen.
-
Navigieren Sie von Ihrem Webbrowser zur Amazon EC2-Konsole.
-
Wählen Sie im Navigationsbereich Lastausgleich > Load Balancer.
-
Klicken Sie auf Load Balancer erstellen.
-
Wählen Sie Netzwerk-Lastausgleich und klicken Sie auf Erstellen. Vervollständigen Sie dann jedes Formular.
Schritt 1: Konfigurieren Sie den Lastausgleich
Füllen Sie die folgenden Felder im Formular aus:
-
Name:
rancher -
Schema:
internaloderinternet-facing. Das Schema, das Sie für Ihren NLB wählen, hängt von der Konfiguration Ihrer Instanzen und VPC ab. Wenn Ihre Instanzen keine öffentlichen IPs haben oder Sie Rancher nur intern aufrufen, sollten Sie Ihr NLB-Schema aufinternalanstelle voninternet-facingsetzen. -
Listener: Das Load Balancer-Protokoll sollte
TCPsein und der entsprechende Load Balancer-Port sollte auf443gesetzt werden. -
Verfügbarkeitszonen: Wählen Sie Ihr VPC und Verfügbarkeitszonen aus.
2. Schritt: Routing konfigurieren
-
Wählen Sie aus dem Zielgruppe-Dropdown Bestehende Zielgruppe aus.
-
Wählen Sie aus dem Namen-Dropdown
rancher-tcp-443aus. -
Öffnen Sie Erweiterte Einstellungen zur Gesundheitsüberprüfung und konfigurieren Sie Intervall auf
10 seconds.
4. Listener zum NLB für TCP-Port 80 hinzufügen
-
Wählen Sie Ihr neu erstelltes NLB aus und wählen Sie die Registerkarte Listener aus.
-
Klicken Sie auf Listener hinzufügen.
-
Verwenden Sie
TCP:80als Protokoll : Port -
Klicken Sie auf Aktion hinzufügen und wählen Sie Weiterleiten zu.. aus.
-
Wählen Sie aus dem Weiterleiten zu-Dropdown
rancher-tcp-80aus. -
Klicken Sie oben rechts auf dem Bildschirm auf Speichern.
Gesundheitsprüfpfade für Traefik Ingresses
K3s Kubernetes-Cluster verwenden Traefik als den Standard-Ingress.
Der Gesundheitsprüfpfad ist /ping. Standardmäßig wird /ping immer abgeglichen (unabhängig vom Host), und eine Antwort von Traefik selbst wird immer bereitgestellt.
Um eine genaue Gesundheitsprüfung zu simulieren, ist es eine bewährte Praxis, den Host-Header (Rancher-Hostname) in Kombination mit /ping oder /healthz zu verwenden, wo immer dies möglich ist, um eine Antwort von den Rancher-Pods und nicht vom Ingress zu erhalten.