Load-Balancing mit Citrix

Auf dieser Seite wird erläutert, wie Sie den Citrix Load-Balancer für einen GKE On-Prem-Cluster konfigurieren.

GKE On-Prem-Cluster können mit einem von zwei Load-Balancing-Modi ausgeführt werden: integriert oder manuell. Zur Verwendung des Citrix-Load-Balancers nutzen Sie den manuellen Load-Balancing-Modus.

Allgemeine Schritte für das manuelle Load-Balancing

Bevor Sie Ihren Citrix-Load-Balancer konfigurieren, führen Sie die folgenden Schritte aus. Diese gelten für alle manuellen Load-Balancing-Konfigurationen:

Citrix ADC-Instanz erstellen

Führen Sie die folgenden Schritte aus, um einen Citrix Application Delivery Controller (ADC) zu erstellen:

Netzwerkadapter hinzufügen

Ihre Citrix ADC-VM hat einen Netzwerkadapter, der der Verwaltungs-IP-Adresse für die VM zugeordnet ist. Sie müssen nun Ihrer Citrix ADC-VM einen oder zwei zusätzliche Netzwerkadapter hinzufügen.

Eine Möglichkeit hierzu ist das Erstellen einer einarmigen Konfiguration. Bei dieser Art der Konfiguration erhält Ihre Citrix ADC-VM zusätzlich zum Verwaltungsnetzwerkadapter einen weiteren Netzwerkadapter. Der zusätzliche Netzwerkadapter ist mit einem Subnetz verbunden, das Ihre Clusterknoten enthält. Sie können IP-Adressen in diesem Subnetz aus dem Internet erreichen.

Eine weitere Möglichkeit ist das Erstellen einer zweiarmigen Konfiguration. Bei dieser Art der Konfiguration erhält Ihre Citrix ADC-VM zusätzlich zum Verwaltungsnetzwerkadapter zwei weitere Netzwerkadapter. Einer der zusätzlichen Netzwerkadapter ist mit einem privaten Subnetz verbunden, das Ihre Clusterknoten enthält. Der andere Netzwerkadapter ist mit einem Subnetz verbunden, über das externe Anfragen den Citrix-Load-Balancer erreichen können. Dies kann ein Subnetz sein, das direkt über das Internet erreichbar ist, oder ein Subnetz, das durch eine Jumpbox vor dem Internet geschützt ist.

Das folgende Diagramm zeigt das Beispiel einer zweiarmigen Konfiguration:

Diagramm der zweiarmigen Konfiguration
Zweiarmige Konfiguration (zum Vergrößern klicken)

Verwenden Sie die vSphere-Benutzeroberfläche, um Ihrer Citrix ADC-VM einen oder zwei Netzwerkadapter hinzuzufügen.

  1. Suchen Sie im linken Bereich nach Ihrer Citrix ADC-VM.

  2. Klicken Sie mit der rechten Maustaste auf Ihre Citrix ADC-VM und wählen Sie Edit Settings aus.

Bearbeiten der Citrix ADC-VM
Eigenschaften des Citrix ADC bearbeiten (zum Vergrößern klicken)
  1. Klicken Sie bei New device auf Select und wählen Sie Network aus. Klicken Sie auf Add.

  2. Maximieren Sie im linken Bereich die Option New Network. Wählen Sie für VM Network das Subnetz aus, in dem Sie den neuen Netzwerkadapter verbinden möchten.

  3. Nehmen Sie die gewünschten Einstellungen vor und klicken Sie auf OK.

Server konfigurieren

Denken Sie daran, dass Sie bereits eine Liste von IP-Adressen haben, die Sie für Ihre Clusterknoten verwenden wollen. In diesem Abschnitt ordnen Sie jeder dieser IP-Adressen einen Namen zu.

Geben Sie in einem Browser die Verwaltungs-IP-Adresse Ihrer Citrix-VM ein. Daraufhin wird eine Weboberfläche für Ihren Citrix-Load-Balancer geöffnet. In der Citrix-Benutzeroberfläche wird ein Clusterknoten als Server bezeichnet.

Rufen Sie den Tab Configuration auf.

Wechseln Sie im linken Bereich zu Traffic Management > Load-Balancing > Server.

Hinzufügen eines Servers in der Citrix-Benutzeroberfläche
Server in der Citrix-Benutzeroberfläche hinzufügen (zum Vergrößern klicken)

Führen Sie für jeden Administratorclusterknoten und jeden Nutzerclusterknoten, den Sie erstellen möchten, die folgenden Schritte aus:

  1. Klicken Sie im Hauptbereich auf Add.

  2. Geben Sie einen Namen und eine IP-Adresse für den Knoten ein.

  3. Klicken Sie auf Erstellen.

Dienstgruppen konfigurieren

Eine Dienstgruppe (service group) in der Citrix-Benutzeroberfläche ist eine Reihe von Servern mit einem Protokoll und einer Portnummer. Beispiel:

({admin_node_1, admin_node_2, admin_node_3}, TCP, 30001)

In diesem Abschnitt erstellen Sie eine Dienstgruppe für jedes der folgenden Elemente:

  • Administratorcluster-Steuerungsebene
  • HTTP-Ingress-Controller des Administratorclusters
  • HTTPS-Ingress-Controller des Administratorclusters
  • Add-on-Manager des Administratorclusters
  • Nutzercluster-Steuerungsebene
  • Nutzercluster-HTTP-Controller für eingehenden Traffic
  • Nutzercluster-HTTPS-Controller für eingehenden Traffic

In jeder Dienstgruppe ist das Protokoll TCP. Die VIP ist eine Adresse, die Sie zuvor festgelegt haben. Der Port ist ein nodePort-Wert, den Sie zuvor angegeben haben.

Beispiel: Dies sind die Namen Ihrer Nutzerclusterknoten:

  • user_node_1
  • user_node_2
  • user_node_3

Nehmen wir außerdem an, dass Sie für den Nutzercluster-HTTP-Controller für eingehenden Traffic 203.0.113.1 als VIP verwenden möchten. Außerdem haben Sie 32001 als nodePort-Wert für den Nutzercluster-HTTP-Controller für eingehenden Traffic ausgewählt. Sie erstellen dann die folgende Dienstgruppe:

({user_node_1, user_node_2, user_node_3}, TCP, 32001)

So erstellen Sie eine Dienstgruppe in der Citrix-Weboberfläche:

  1. Wechseln Sie im linken Bereich zu Traffic Management > Load Balancing > Service Groups.
Hinzufügen einer Dienstgruppe in der Citrix-Benutzeroberfläche (zum Vergrößern klicken)
Dienstgruppe in der Citrix-Benutzeroberfläche hinzufügen (zum Vergrößern klicken)
  1. Klicken Sie im Hauptbereich auf Add.

  2. Geben Sie einen Namen für die Dienstgruppe ein.

  3. Wählen Sie für Protocol die Option TCP aus.

  4. Klicken Sie auf OK.

  5. Klicken Sie unter Service Group Members auf die Leiste No Service Group Member.

  6. Wählen Sie oben auf der Seite Server Based aus.

  7. Klicken Sie unter Select Server auf das Kästchen.

  8. Wählen Sie in der Liste der Servernamen die Server aus, die in Ihrer Dienstgruppe enthalten sein sollen. Klicken Sie danach auf Select.

  9. Geben Sie für Port den nodePort-Wert für Ihre Dienstgruppe ein.

  10. Geben Sie für Hash Id eine Zahl Ihrer Wahl ein.

Führen Sie die obigen Schritte siebenmal aus, damit für jede der am Anfang dieses Abschnitts aufgeführten Komponenten eine Dienstgruppe vorhanden ist.

Virtuelle Server konfigurieren

Sie haben jetzt sieben Dienstgruppen. In diesem Abschnitt verknüpfen Sie jede Dienstgruppe mit einer VIP, einem Protokoll und einem Port.

Nehmen wir beispielsweise Folgendes an:

  • Die Dienstgruppe für den Nutzercluster-HTTP-Controller für eingehenden Traffic heißt user_http_ingress.

  • Sie möchten 203.0.113.1 als VIP für den Nutzercluster-HTTP-Controller für eingehenden Traffic verwenden. Außerdem soll der Load-Balancer TCP-Port 80 auf Anfragen an diese VIP überwachen.

  • Sie möchten 32001 als nodePort-Wert für den Nutzercluster-HTTP-Controller für eingehenden Traffic verwenden.

Sie würden dann die folgende Zuordnung erstellen:

user_http_ingress --> (203.0.113.1, TCP, 80)

In der Citrix-Benutzeroberfläche wird eine Zuordnung dieses Typs als virtual server (virtueller Server) bezeichnet.

So erstellen Sie einen virtuellen Server in der Citrix-Benutzeroberfläche:

  1. Wechseln Sie im linken Bereich zu Traffic Management > Load-Balancing > Server.
Hinzufügen eines virtuellen Servers in der Citrix-Benutzeroberfläche (zum Vergrößern klicken)
Virtuellen Server in der Citrix-Benutzeroberfläche hinzufügen (zum Vergrößern klicken)
  1. Klicken Sie im Hauptbereich auf Add.

  2. Geben Sie einen Namen für den virtuellen Server ein.

  3. Wählen Sie für Protocol die Option TCP aus.

  4. Geben Sie für IP Address die VIP für Ihren virtuellen Server ein.

  5. Geben Sie unter Port den TCP-Port für den virtuellen Server ein. Der Load-Balancer überwacht diesen TCP-Port auf Anfragen, die über den Port an die VIP gesendet werden.

  6. Klicken Sie auf der Seite Load Balancing Virtual Server unter Services and Service Groups auf No Load Balancing Virtual Server Service Group Binding.

  7. Klicken Sie unter Select Service Group Name auf das Kästchen.

  8. Wählen Sie die gewünschte Dienstgruppe für den virtuellen Server aus.

  9. Klicken Sie oben auf der Seite auf Select.

  10. Klicken Sie auf Bind.

Führen Sie die vorherigen Schritte siebenmal aus, damit für jede Ihrer sieben Dienstgruppen ein virtueller Server vorhanden ist.

Konfiguration prüfen

Pingen Sie alle VIPs an, um zu prüfen, ob Ihre VIPs in Ihrem Citrix ADC konfiguriert wurden.

GKE On-Prem-Konfigurationsdatei ändern

Bevor Sie GKE On-Prem installieren, ändern Sie Ihre GKE On-Prem-Konfigurationsdatei und Ihre statischen IP-YAML-Dateien so, dass sie Ihre statischen IP-Adressen, VIPs und Knotenportwerte enthalten.