Load-Balancing mit Citrix

Auf dieser Seite wird gezeigt, wie Sie den Citrix-Load-Balancer für einen GKE on VMware-Cluster konfigurieren.

GKE on VMware-Cluster können mit einem von drei Load-Balancing-Modi ausgeführt werden: integriert, gebündelt oder manuell. Für den Citrix-Load-Balancer verwenden Sie den manuellen Load-Balancing-Modus.

Citrix Netscaler-Version

Die Anleitung in diesem Thema bezieht sich auf Version 12.0 des Citrix NetScaler VPX 1000-Modells.

Wenn Sie eine andere Version oder ein anderes Modell des Citrix-Load-Balancers verwenden, kann die Benutzeroberfläche davon abweichen.

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.

Terraform zur Konfiguration von Citrix ADC verwenden

Citrix bietet ein Terraform-Skript, mit dem der Citrix ADC automatisch für Server, Dienstgruppen und virtuellen Server bei der Ersteinrichtung des Clusters konfiguriert wird.

Folgen Sie gegebenenfalls den unten beschriebenen manuellen Schritten.

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
  • Add-on-Manager des Administratorclusters
  • Nutzercluster-Steuerungsebene
  • Nutzercluster-Konnectivity-Server
  • 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.

Wiederholen Sie diese Schritte für jede Dienstgruppe, die Sie erstellen möchten. Sie sollten für jede dieser Komponenten eine Dienstgruppe erstellen: Steuerungsebene des Administratorclusters, Add-on-Manager des Administratorclusters, Steuerungsebene des Nutzerclusters, Konnectivity-Server des Nutzerclusters, HTTP-Ingress-Controller des Nutzerclusters und HTTPS-Ingress-Controller des Nutzerclusters. Jeder Nutzercluster benötigt eigene Dienstgruppen für den Nutzercluster-HTTP-Nutzercluster und den Nutzercluster-HTTPS-Ingress-Controller.

Virtuelle Server konfigurieren

Sie haben jetzt sechs 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 sechsmal aus, damit Sie für jede Ihrer sechs Dienstgruppen einen virtuellen Server haben. Die vollständige Portzuordnung finden Sie auf dieser Seite.

Konfiguration überprüfen

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

GKE on VMware-Konfigurationsdatei ändern

Bevor Sie GKE on VMware installieren, ändern Sie die Konfigurationsdateien und fügen Sie Ihre statischen IP-Adressen, VIPs und Knotenportwerte hinzu.