Load Balancer verwalten

Die Google Distributed Cloud (GDC) Air-gapped-Appliance bietet Load Balancer, mit denen Anwendungen Dienste füreinander verfügbar machen können. Load-Balancer weisen eine stabile virtuelle IP-Adresse (VIP) zu, die den Traffic auf eine Reihe von Backend-Arbeitslasten verteilt. Load-Balancer in GDC führen Load-Balancing auf Ebene 4 (L4) durch. Das bedeutet, dass sie eine Reihe von konfigurierten TCP- oder UDP-Frontend-Ports den entsprechenden Backend-Ports zuordnen. Load Balancer werden auf Projektebene konfiguriert.

Load-Balancer werden für die folgenden Arbeitslasttypen konfiguriert:

  • Arbeitslasten, die auf VMs ausgeführt werden.
  • Containerisierte Arbeitslasten im Kubernetes-Cluster.

Es gibt drei Möglichkeiten, Load Balancer in GDC zu konfigurieren:

  • Verwenden Sie die Networking Kubernetes Resource Model (KRM) API. Mit dieser API können Sie Load Balancer erstellen.
  • Verwenden Sie die gcloud CLI. Mit dieser API können Sie Load Balancer erstellen.
  • Verwenden Sie den Kubernetes-Dienst direkt über den Kubernetes-Cluster. Mit dieser Methode werden nur zonale Load-Balancer erstellt.

Komponenten des Lastenausgleichsmoduls

Wenn Sie die KRM API oder die gcloud CLI verwenden, um den Load-Balancer zu konfigurieren, verwenden Sie einen L4-Passthrough-Load-Balancer:

  • L4 bedeutet, dass das Protokoll entweder TCP oder UDP ist.
  • „Passthrough“ bedeutet, dass es keinen Proxy zwischen Arbeitslast und Client gibt.

Der Load-Balancer besteht aus den folgenden konfigurierbaren Komponenten:

  • Weiterleitungsregeln: Geben an, welcher Traffic weitergeleitet wird und an welchen Backend-Dienst. Für Weiterleitungsregeln gelten die folgenden Spezifikationen:

    • Besteht aus drei Tupeln: CIDR, Port und Protokoll für den Clientzugriff.
    • Unterstützt TCP- und UDP-Protokolle.
    • Bietet interne und externe Weiterleitungsregeln. Clients können innerhalb der Virtual Private Cloud (VPC) auf interne Weiterleitungsregeln zugreifen. Clients können von außerhalb der GDC-Plattform oder von Arbeitslasten mit dem definierten Wert EgressNAT auf externe Weiterleitungsregeln zugreifen.
    • Weiterleitungsregeln stellen eine Verbindung zu einem Backend-Dienst her. Sie können mehrere Weiterleitungsregeln auf denselben Back-End-Dienst verweisen lassen.
  • Backend-Dienste: Sie sind der Load-Balancing-Hub, der Weiterleitungsregeln, Systemdiagnosen und Backends miteinander verknüpft. Ein Back-End-Dienst verweist auf ein Back-End-Objekt, das die Arbeitslasten identifiziert, an die der Load-Balancer den Traffic weiterleitet. Es gibt Einschränkungen, auf welche Back-Ends ein einzelner Back-End-Dienst verweisen kann:

    • Eine zonale Backend-Ressource pro Zone.
    • Eine Cluster-Backend-Ressource pro Cluster. Dies kann nicht mit den Projekt-Backends kombiniert werden.
  • Back-Ends: Ein zonales Objekt, das die Endpunkte angibt, die als Back-Ends für die erstellten Back-End-Dienste dienen. Back-End-Ressourcen müssen auf eine Zone beschränkt sein. Endpunkte mithilfe von Labels auswählen Wählen Sie ein Projekt oder einen Cluster für den Selektor aus:

    • Ein Projekt-Backend ist ein Backend, für das das Feld ClusterName nicht angegeben ist. In diesem Fall gelten die angegebenen Labels für alle Arbeitslasten im angegebenen Projekt, in der angegebenen VPC einer Zone. Die Labels werden auf VM- und Pod-Arbeitslasten in mehreren Clustern angewendet. Wenn ein Backend-Dienst ein Projekt-Backend verwendet, können Sie in diesem Backend-Dienst nicht auf ein anderes Backend für diese Zone verweisen.

    • Ein Cluster-Back-End ist ein Back-End, für das das Feld ClusterName angegeben ist. In diesem Fall gelten die angegebenen Labels für alle Arbeitslasten im benannten Cluster im angegebenen Projekt. Sie können in einem einzelnen Back-End-Dienst maximal ein Back-End pro Zone und Cluster angeben.

  • Systemdiagnosen: Geben Sie die Prüfungen an, mit denen ermittelt wird, ob ein bestimmter Arbeitslastendpunkt im Back-End fehlerfrei ist. Der fehlerhafte Endpunkt wird aus dem Load-Balancer entfernt, bis er wieder fehlerfrei ist. Systemdiagnosen gelten nur für VM-Arbeitslasten. Pod-Arbeitslasten können den integrierten Kubernetes-Probe-Mechanismus verwenden, um festzustellen, ob ein bestimmter Endpunkt fehlerfrei ist.

Wenn Sie den Kubernetes-Dienst direkt verwenden, nutzen Sie das Service-Objekt anstelle der zuvor aufgeführten Komponenten. Sie können nur Arbeitslasten in dem Cluster als Ziel festlegen, in dem das Service-Objekt erstellt wird.

Externes und internes Load-Balancing

GDC-Anwendungen haben Zugriff auf die folgenden Netzwerkdiensttypen:

  • Interner Load Balancer (ILB): Damit können Sie einen Dienst für andere Cluster in der Organisation verfügbar machen.
  • Externer Load Balancer (ELB): Weist eine virtuelle IP-Adresse aus einem Bereich zu, der von externen Arbeitslasten aus weitergeleitet werden kann, und stellt Dienste außerhalb der GDC-Organisation bereit, z. B. andere Organisationen innerhalb oder außerhalb der GDC-Instanz.

Virtuelle IP-Adressen des Dienstes

Bei ILBs werden VIP-Adressen zugewiesen, die nur intern für die Organisation sind. Diese VIP-Adressen sind von außerhalb der Organisation nicht erreichbar. Sie können sie daher nur verwenden, um Dienste für andere Anwendungen innerhalb einer Organisation verfügbar zu machen. Diese IP-Adressen können sich zwischen Organisationen in derselben Instanz überschneiden.

ELBs weisen hingegen VIP-Adressen zu, die von außerhalb der Organisation extern erreichbar sind. Aus diesem Grund müssen ELB-VIP-Adressen für alle Organisationen eindeutig sein. In der Regel stehen der Organisation weniger ELB-VIP-Adressen zur Verfügung.

Nächste Schritte