Einrichten eines Load Balancers für ein privates Netzwerk mit Routing-Modus

VNF-Einheiten (VNF = Virtual Network Function) sind virtualisierte Netzservices (wie Router und Firewalls), die auf virtuellen Maschinen ausgeführt werden. Mit IBM Cloud VPC können Sie VNF-Geräte bereitstellen, um eine bessere und erschwinglichere Skalierbarkeit als durch den Erwerb von physischen Netzgeräten zu erzielen.

Der Datenverkehr für Server in IBM Cloud VPC muss an VNF-Geräte in einwandfreiem Zustand geliefert werden. Andernfalls kommt es zu einer Störung des Datenverkehrs. Sie können Netzlastausgleichsfunktionen mit Routing-Modus verwenden, um Statusprüfungen durchzuführen und sicherzustellen, dass Workloads nur über einwandfreie VNF-Einheiten übertragen werden. Aus diesem Grund unterstützen Netzlastausgleichsfunktionen mit Routing-Modus nur VNF-Einheiten als Back-End-Ziele.

Ausführliche Beispiele für verschiedene Möglichkeiten, Ihre NLB mit Routing-Modus zu implementieren, finden Sie unter HA-VNF-Bereitstellungen.

Vorbereitende Schritte

Um einen Netzwerk-Load-Balancer mit aktiviertem Routing-Modus zu konfigurieren, stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind:

  • Wenn Sie noch keine VPC haben, erstellen Sie eine VPC in der Region, in der Sie Ihren NLB einrichten möchten.

  • Erstellen Sie ein Teilnetz in der bevorzugten Zone in der VPC-Instanz.

  • Zur Unterstützung des Routing-Modus müssen Sie zuerst eine Service-to-Service-Authentifizierungsrichtlinie für Ihre NLB erstellen. Führen Sie dazu die folgenden Schritte aus:

    1. Melden Sie sich über Ihren Browser bei IBM Access Management an.
    2. Klicken Sie auf Berechtigungen und dann auf Erstellen.
    3. Wählen Sie für den Quellenservice die Option für die VPC-Infrastrukturservices aus. Um auf den Umfang zuzugreifen, wählen Sie Ressourcen basierend auf ausgewählten Attributen > Ressourcentyp > Load Balancer für VPC.
    4. Wählen Sie als Zielservice VPC-Infrastrukturservices aus. Um auf den Umfang zuzugreifen, wählen Sie Ressourcen basierend auf ausgewählten Attributen > Ressourcentyp > Virtual Private Cloud.
    5. Wählen Sie das Kontrollkästchen Editor aus, um Editorzugriff für Sie zu erteilen, und klicken Sie anschließend auf Autorisieren.

Die folgende Liste enthält einige wichtige Hinweise zur Netzlastausgleichsfunktion mit aktiviertem Routing-Modus:

  • Der NLB-Routenmodus hat zwei IP-Adressen (Active/Standby).
  • Der NLB-Routenmodus ist transparent. Wenn ein Failover auftritt, aktualisiert der Routenmodus alle Routing-Regeln, die unter derselben VPC erstellt wurden, mit der next_hop der Standby-Appliance-IP. Daher können beide IPs während der Lebensdauer Ihrer NLB mit Routenmodus verwendet werden.
  • Bei einer Transit-VPC-Konfiguration können Sie die NLB in vpc-hub bereitstellen und die Egress-Route in vpc-spoke konfigurieren. Dadurch werden Daten zurück zur NLB mit dem Routenmodus in vpc-hub erzwungen. Stellen Sie sicher, dass Sie auch die entsprechenden Eingangsregeln der vpc-spoke-Ausgangsregeln zu vpc-hub hinzufügen, damit die Ausgangsregeln nicht geändert werden müssen. Nachdem der Datenverkehr vpc-hub erreicht hat, überschreibt die Eingangs-Routing-Regel next_hop und sendet ihn an die primäre Appliance.

Netzlastausgleichsfunktion mit Routing-Modus über die Benutzerschnittstelle erstellen

Um Network Load Balancer for VPC im Routing-Modus über die IBM Cloud-Konsole zu erstellen und zu konfigurieren, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie in Ihrem Browser die IBM Cloud-Konsole und melden Sie sich bei Ihrem Konto an.

  2. Wählen Sie das Navigationsmenü „ Menüsymbol“ und klicken Sie dann auf das Symbol „Infrastruktur -VPC“ > „Netzwerk“ > „Lastenausgleich“.

  3. Klicken Sie auf Neue Lastausgleichsfunktion + oben rechts auf der Seite.

  4. Füllen Sie das Bestellformular aus:

    • Geben Sie einen eindeutigen Namen für Ihre Lastausgleichsfunktion ein und wählen Sie eine VPC aus.
    • Wählen Sie eine Ressourcengruppe aus. Verwenden Sie die Standardgruppe oder wählen Sie eine Gruppe aus der Liste aus (falls für Ihr Konto definiert). Sie können die Ressourcengruppe nicht mehr ändern, nachdem Sie den Load Balancer erstellt haben.
    • Wählen Sie die Kachel Network Load Balancer (NLB) und das Teilnetz aus, in dem die Lastausgleichsfunktion bereitgestellt werden soll.
    • Wählen Sie den Typ Privat aus.
    • Fügen Sie optional Tags hinzu.
  5. Überprüfen Sie die Checklistenanweisungen im Fenster für den Routing-Modus und klicken Sie anschließend auf die Schaltfläche, um sie zu aktivieren.

    Sie können die Konfiguration einer NLB im Routing-Modus nach Abschluss der Bereitstellung nicht ändern.

  6. Klicken Sie auf Neuer Pool und geben Sie die folgenden Informationen an, um einen Back-End-Pool zu erstellen.

    • Geben Sie einen Namen für den Pool ein, zum Beispiel my-pool.

    • Geben Sie ein Protokoll für die Instanzen in diesem Pool ein. Das Protokoll für den Pool muss mit dem Protokoll für den zugehörigen Listener übereinstimmen. Wenn es sich bei dem Listener beispielsweise um TCP handelt, muss das Protokoll des Pools 'TCP' sein.

    • Wählen Sie die Methode aus, d. h. den Algorithmus für den Lastausgleich. Die folgenden Optionen werden angezeigt:

      • Umlauf: Anforderungen werden im Umlaufverfahren nacheinander an die einzelnen Instanzen weitergeleitet. Auf diese Weise erhalten alle Instanzen ungefähr gleich viele Clientverbindungen.
      • Gewichteter Umlauf: Anforderungen werden gemäß der zugeordneten Gewichtung an die einzelnen Instanzen weitergeleitet. Wenn Sie beispielsweise die Instanzen A, B und C haben und deren Gewichte auf 60, 60 und 30 festgelegt sind, erhalten die Instanzen A und B die gleiche Anzahl an Verbindungen, während die Instanz C nur halb so viele Verbindungen erhält.
      • Wenigste Verbindungen: Anforderungen werden an die Instanz weitergeleitet, die momentan über die geringste Anzahl von Verbindungen verfügt.
      • Gewichtete Weiterleitung – Weiterleitung von Anfragen mithilfe eines IP-Hash-Algorithmus, um Pakete basierend auf zugewiesenen Gewichten auf Ziele zu verteilen. Jedes Paket wird anhand seiner Header weitergeleitet, wobei sowohl symmetrischer als auch asymmetrischer Datenverkehr unterstützt wird.
    • Wählen Sie Session Stickiness und dann None aus.

    • Für die Statusprüfungen werden folgenden Optionen angezeigt.

      • Health-Check-Pfad – Der Health-Check-Pfad ist nur anwendbar, wenn Sie HTTP als Health-Check-Protokoll auswählen. Der Pfad für Statusprüfung gibt die URL an, die von der Lastausgleichsfunktion verwendet wird, um die HTTP-Anforderungen für die Statusprüfung an die Instanzen im Pool zu senden. Standardmäßig werden Statusprüfungen an den Rootpfad (/) gesendet.
      • Statusprotokoll: Gibt an, welches Protokoll von der Lastausgleichsfunktion verwendet wird, um Nachrichten für Statusprüfungen an die Instanzen im Pool zu senden.
      • Health-Port – Der Port, über den der Load Balancer Health-Check-Anfragen sendet. Standardmäßig werden Statusprüfungen über denselben Port gesendet, der auch für den Datenverkehr an die Instanz verwendet wird.
      • Intervall: Gibt das Intervall in Sekunden zwischen zwei aufeinanderfolgenden Statusprüfungsversuchen an. Standardmäßig werden Statusprüfungsanforderungen alle 5 Sekunden gesendet.
      • Timeout (Sek.) – Die maximale Zeit, die das System auf eine Antwort auf eine Zustandsprüfungsanfrage wartet. Standardmäßig wartet die Lastausgleichsfunktion 2 Sekunden auf eine Antwort.
      • Max. Wiederholungsversuche – Die maximale Anzahl an Zustandsprüfungsversuchen, die der Lastverteiler durchführt, bevor eine Instanz als fehlerhaft eingestuft wird. Standardmäßig wird für eine Instanz nach zwei fehlgeschlagenen Statusprüfungen ein nicht einwandfreier Zustand attestiert.

      Obwohl ein Load Balancer keine Verbindungen mehr an fehlerhafte Instanzen weiterleitet, überwacht er weiterhin den Zustand dieser Instanzen und nimmt deren Nutzung wieder auf, sobald sie wieder als fehlerfrei erkannt werden (d. h., wenn sie zwei aufeinanderfolgende Zustandsprüfungen erfolgreich bestehen).

      Wenn Instanzen im Pool einen fehlerhaften Status aufweisen und Sie davon ausgehen, dass Ihre Anwendung ordnungsgemäß läuft, überprüfen Sie die Werte für das Zustandsprotokoll und den Zustandspfad noch einmal. Außerdem sollten Sie alle Sicherheitsgruppen überprüfen, die den Instanzen zugeordnet sind, um sicherzustellen, dass die Regeln den Datenverkehr zwischen der Lastausgleichsfunktion und den Instanzen zulassen.

  7. Klicken Sie auf Neuer Listener und geben Sie den Back-End-Pool an, an den dieser Listener den Datenverkehr weiterleitet.

    Das Protokoll für den Empfang eingehender Anforderungen sowie der Empfangsport, an dem Anforderungen empfangen werden, sind bereits für Sie ausgewählt.

  8. Eine Bestellübersicht zeigt die geschätzten Kosten an. Überprüfen Sie die Bedingungen der Cloud-Services. Klicken Sie anschließend auf Erstellen, um Ihre Bestellung abzuschließen.

Netzlastausgleichsfunktion mit Routing-Modus über die Befehlszeilenschnittstelle erstellen

Um einen Netzwerk-Load-Balancer über die CLI zu erstellen, führen Sie die folgenden Schritte aus:

  1. Konfigurieren Sie die Umgebung der Befehlszeilenschnittstelle.

  2. Melden Sie sich an Ihrem Konto an. Nach der Eingabe des Kennworts werden Sie vom System aufgefordert, anzugeben, welches Konto und welche Region verwendet werden soll:

    ibmcloud login --sso
    
  3. Erstellen Sie eine Lastausgleichsfunktion:

    ibmcloud is load-balancer-create nlb-test public --subnet 0896-b1f24514-89dc-4afd-b0e2-5489a43cf45c --family network --route-mode true
    

    Beispielausgabe:

    Creating load balancer vnf under account CNS Development Account - netsvs as user ibm@us.ibm.com...
    ID                          r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512
    Name                        vnf
    CRN                         crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::load-balancer:r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512
    Family                      Network
    Routing Mode Enabled        true
    Host name                   c7cadd8e-us-east.lb.appdomain.cloud
    Subnets                     ID                                          Name
                                0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024   nlb-subnet
    Public IPs
    Private IPs
    Provision status            create_pending
    Operating status            offline
    Is public                   false
    Listeners
    Pools                       ID   Name
    Resource group              ID                                 Name
                                42c4f51adc3147b4b4049ad9826c30a1   Default
    Created                     2021-09-14T17:54:24.584-05:00
    Security groups supported   false
    
  4. Warten Sie, bis sich die NLB in einem aktiven Status befindet, und führen Sie dann den Befehl {: #nlb-get-private-ips-cli} aus.

    ibmcloud is load-balancer r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512 
    

    Beispielausgabe:

    Getting load balancer r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512 under account CNS Development Account - netsvs as user ibm@us.ibm.com...
    ID                          r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512
    Name                        vnf
    CRN                         crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::load-balancer:r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512
    Family                      Network
    Routing Mode Enabled        true
    Host name                   c7cadd8e-us-east.lb.appdomain.cloud
    Subnets                     ID                                          Name
                                0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024   nlb-subnet
    Public IPs
    Private IPs                 10.241.64.16, 10.241.64.17
    Provision status            active
    Operating status            online
    Is public                   false
    Listeners
    Pools                       ID   Name
    Resource group              ID                                 Name
                                42c4f51adc3147b4b4049ad9826c30a1   Default
    Created                     2021-09-14T17:54:24.584-05:00
    Security groups supported   false
    

    Notieren Sie sich die erste unter 'Private IP-Adressen' aufgelistete IP-Adresse. Dies benötigen Sie, wenn Sie benutzerdefinierte Routen definieren.

  5. Fügen Sie einen Pool hinzu.

    ibmcloud is load-balancer-pool-create example-pool r006-df4c0e10-e882-4ade-a668-b2e518325d6a round_robin tcp 20 2 5 tcp  
    

    Beispielausgabe:

    Creating pool example-pool of load balancer r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512 under account CNS Development Account - netsvs as user ibm@us.ibm.com
    ID                    r014-474dca7d-aece-48a3-a636-fe8c3e654a3b
    Name                  example-pool
    Protocol              tcp
    Algorithm             round_robin
    Instance group        ID   Name
                          -    -
    Proxy protocol        disabled
    Health monitor        Type   Port   Health monitor URL   Delay   Retries   Timeout
                          tcp    -                           20      2         5
    Session persistence   Type   Cookie name
                          -      -
    Members
    Provision status      active
    Created               2021-09-14T18:03:56.274-05:00
    
  6. Fügen Sie ein Member hinzu.

    ibmcloud is load-balancer-pool-member-create r014-c7cadd8e-9e8b-4965-bee3-5d9ff95b3512 r014-474dca7d-aece-48a3-a636-fe8c3e654a3b 200 0767_5545cfb3-febc-4f09-b9ea-0aeb66074edf
    

    Beispielausgabe:

    Creating member of pool r014-474dca7d-aece-48a3-a636-fe8c3e654a3b under account CNS Development Account - netsvs as user ibm@us.ibm.com...
    ID                 r014-1fdb900f-81a4-4204-839a-fcdee6c28e8a
    Port               200
    Target             0767_5545cfb3-febc-4f09-b9ea-0aeb66074edf
    Weight             50
    Health             unknown
    Created            2021-09-14T19:27:11.077-05:00
    Provision status   create_pending
    

Erstellen eines Netzwerk-Load-Balancers mit Routing-Modus über die API

Gehen Sie wie folgt vor, um eine Netzlastausgleichsfunktion mit Routing-Modus mit der API zu erstellen:

  1. Richten Sie die API-Umgebung ein.

  2. Erstellen Sie Ihre API-Anforderungsnutzdaten mithilfe der folgenden Vorlage. Ändern Sie den Namen und das Teilnetz, indem Sie Ihre eigenen Werte anwenden.

    {
       "name": "nlb-vnf",
       "is_public": false,
       "profile": {
          "name": "network-fixed"
          },
       "route_mode": true,
       "subnets": [
          {
       "id": "0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024"
          }
        ]
    }
    

    Speichern Sie diese Nutzdaten in einer JSON-Datei. In den folgenden Beispielen trägt die Datei den Namen create.json.

  3. Setzen Sie die Anforderung zum Erstellen Ihrer NLB mit dem folgenden Befehl ab.   Die folgenden Eigenschaften müssen zunächst in der Nutzlast festgelegt werden:

    • route_mode ist true
    • is_public ist false
    • Der Profilname lautet network_fixed
    curl -s -H "Authorization: Bearer $IAM_TOKEN" -X POST -d @create.json "https://us-east.iaas.cloud.ibm.com/v1/load_balancers?version=2021-07-30&generation=2" | jq
    

    In diesem Beispiel wird jq als Parser ein Drittanbieter-Tool verwendet, das unter der MIT-Lizenz lizenziert ist. Es ist jq möglicherweise nicht auf allen VPC-Images vorinstalliert, die bei der Erstellung einer Instanz verfügbar sind. Möglicherweise müssen Sie das Programm vor jq der Verwendung installieren oder einen anderen Parser Ihrer Wahl verwenden.

    Beispielausgabe:

    {
      "id": "r014-020f4f34-bb49-4699-98a7-a53384cd649d",
      "name": "nlb-vnf",
      "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d",
      "crn": "crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::load-balancer:r014-020f4f34-bb49-4699-98a7-a53384cd649d",
      "is_public": false,
      "created_at": "2021-09-14T21:45:06.377862525Z",
      "hostname": "020f4f34-us-east.lb.appdomain.cloud",
      "listeners": [],
      "operating_status": "offline",
      "pools": [],
      "private_ips": [],
      "provisioning_status": "create_pending",
      "public_ips": [],
      "subnets": [
        {
          "id": "0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024",
          "href": "https://us-east.iaas.cloud.ibm.com/v1/subnets/0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024",
          "crn": "crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::subnet:0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024",
          "name": "nlb-subnet"
        }
      ],
      "resource_group": {
        "id": "42c4f51adc3147b4b4049ad9826c30a1",
        "href": "https://resource-controller.cloud.ibm.com/v1/resource_groups/42c4f51adc3147b4b4049ad9826c30a1",
        "name": "Default"
      },
      "resource_type": "load_balancer",
      "logging": {
        "datapath": {
          "active": false
        }
      },
      "profile": {
        "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancer/profiles/network-fixed",
        "name": "network-fixed",
        "family": "Network"
      },
      "security_groups": [],
      "security_group_supported": false,
      "route_mode": true
    }
    
  4. Nachdem sich die NLB im aktiven Status befindet, führen Sie einen GET-Aufruf aus, um ihren Status abzurufen.

    curl -s -H "Authorization: Bearer $IAM_TOKEN" -X GET "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d?version=2021-07-30&generation=2" | jq
    

    Beispielausgabe:

    {
      "id": "r014-020f4f34-bb49-4699-98a7-a53384cd649d",
      "name": "nlb-vnf",
      "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d",
      "crn": "crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::load-balancer:r014-020f4f34-bb49-4699-98a7-a53384cd649d",
      "is_public": false,
      "created_at": "2021-09-14T21:45:06.377863Z",
      "hostname": "020f4f34-us-east.lb.appdomain.cloud",
      "listeners": [],
      "operating_status": "online",
      "pools": [],
      "private_ips": [
        {
           "address": "10.241.64.13"
        },
        {
           "address": "10.241.64.14"
        }
     ],
      "provisioning_status": "active",
      "public_ips": [],
      "subnets": [
         {
           "id": "0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024",
           "href": "https://us-east.iaas.cloud.ibm.com/v1/subnets/0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024",
           "crn": "crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::subnet:0767-064498f3-4df5-4fa5-b2ed-de5a3bfea024",
           "name": "nlb-subnet"
         }
      ],
      "resource_group": {
        "id": "42c4f51adc3147b4b4049ad9826c30a1",
        "href": "https://resource-controller.cloud.ibm.com/v1/resource_groups/42c4f51adc3147b4b4049ad9826c30a1",
        "name": "Default"
     },
      "resource_type": "load_balancer",
      "logging": {
         "datapath": {
         "active": false
        }
      },
      "profile": {
        "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancer/profiles/network-fixed",
        "name": "network-fixed",
        "family": "Network"
      },
      "security_groups": [],
      "security_group_supported": false,
      "route_mode": true
    }
    

    Notieren Sie sich die erste unter Private IPs aufgelistete IP-Adresse. Dies benötigen Sie, wenn Sie benutzerdefinierte Routen definieren.

  5. Fügen Sie einen Pool hinzu.

    Erstellen Sie zunächst API-Anforderungsnutzdaten mithilfe der folgenden Vorlage.

    {
      "algorithm": "round_robin",
      "protocol": "tcp",
      "health_monitor": {
        "delay": 10,
        "max_retries": 2,
        "timeout": 5,
        "type": "tcp"
     }
    }
    

    Führen Sie anschließend den folgenden Befehl aus:

    curl -s -H "Authorization: Bearer $IAM_TOKEN" -X POST -d @create.json "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/pools?version=2021-07-30&generation=2" | jq
    

    Beispielausgabe:

    {
      "id": "r014-0b8f4cde-4684-484b-bd3c-64f55a917328",
      "name": "flashbulb-marvelous-gainfully-skydiver",
      "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/pools/r014-0b8f4cde-4684-484b-bd3c-64f55a917328",
      "algorithm": "round_robin",
      "health_monitor": {
      "delay": 10,
      "max_retries": 2,
        "timeout": 5,
        "type": "tcp"
      },
      "protocol": "tcp",
      "created_at": "2021-09-14T21:56:08.202217034Z",
      "provisioning_status": "active",
      "proxy_protocol": "disabled"
    }
    
  6. Warten Sie, bis sich die NLB in einem aktiven Status befindet, und fügen Sie anschließend einen Listener hinzu.

    Der Portbereich für den Listener muss wie folgt definiert werden:

    • port_min ist 1
    • port_max ist 65535

    Erstellen Sie API-Anforderungsnutzdaten mithilfe der folgenden Vorlage:

    {
      "default_pool": {
        "id": "r014-0b8f4cde-4684-484b-bd3c-64f55a917328"
      },
      "port_min": 1,
      "port_max": 65535,
      "protocol": "tcp"
    }
    

    Führen Sie den folgenden Befehl aus:

    curl -s -H "Authorization: Bearer $IAM_TOKEN" -X POST -d @create_vnf.json "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/listeners?version=2021-07-30&generation=2" | jq
    

    Beispielausgabe:

    {
      "id": "r014-0ce87b15-9530-4624-a574-92495631f75d",
      "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/listeners/r014-0ce87b15-9530-4624-a574-92495631f75d",
      "protocol": "tcp",
      "port": 1,
      "port_min": 1,
      "port_max": 65535,
      "default_pool": {
        "id": "r014-0b8f4cde-4684-484b-bd3c-64f55a917328",
        "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/pools/r014-0b8f4cde-4684-484b-bd3c-64f55a917328",
        "name": "flashbulb-marvelous-gainfully-skydiver"
      },
      "provisioning_status": "create_pending",
      "created_at": "2021-09-14T22:01:13.523172702Z",
      "accept_proxy_protocol": false,
      "https_redirect": null
    }
    
  7. Fügen Sie das Poolmitglied hinzu.

    Erstellen Sie zunächst API-Anforderungsnutzdaten mithilfe der folgenden Vorlage:

    {
      "port": 90,
      "target": {
        "id": "0767_5545cfb3-febc-4f09-b9ea-0aeb66074edf"
      }
    }
    

    Führen Sie anschließend den folgenden Befehl aus:

    curl -s -H "Authorization: Bearer $IAM_TOKEN" -X POST -d @add_member.json "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/pools/r014-0b8f4cde-4684-484b-bd3c-64f55a917328/members?version=2021-07-30&generation=2" | jq
    

    Beispielausgabe:

    {
      "id": "r014-c625efe0-6f69-4ae7-a2ef-9bf33c811a2c",
      "href": "https://us-east.iaas.cloud.ibm.com/v1/load_balancers/r014-020f4f34-bb49-4699-98a7-a53384cd649d/pools/r014-0b8f4cde-4684-484b-bd3c-64f55a917328/members/r014-c625efe0-6f69-4ae7-a2ef-9bf33c811a2c",
      "port": 90,
      "target": {
        "id": "0767_5545cfb3-febc-4f09-b9ea-0aeb66074edf",
        "href": "https://us-east.iaas.cloud.ibm.com/v1/instances/0767_5545cfb3-febc-4f09-b9ea-0aeb66074edf",
        "crn": "crn:v1:bluemix:public:is:us-east-2:a/be636a7a6e4d4b6296bedf669ce8f757::instance:0767_5545cfb3-febc-4f09-b9ea-0aeb66074edf"
      },
      "weight": 50,
      "health": "unknown",
      "created_at": "2021-09-14T22:07:46.898295306Z",
      "provisioning_status": "create_pending"
    }
    

Nächste Schritte

Nachdem der NLB mit Routing-Modus aktiv ist, führen Sie die folgenden Schritte aus, um Ihre NLB-Konfiguration abzuschließen:

  1. Stellen Sie die folgenden Informationen zusammen:

    • Ihre Subnetz-CIDRs (Subnetze, in denen sich Ihre Workload-VSI befinden, die als Ziel-IPs verwendet werden sollen).

    • In der Antwort des Lastverteilers sind zwei private IP-Adressen aufgeführt. Notieren Sie die erste Adresse.

      Sie können diese Antwort generieren, indem Sie Schritt 4 der Prozedur für die Befehlszeilenschnittstelle oder für die API ausführen.

      Die erste IP-Adresse ist die primäre IP-Adresse und die zweite ist die sekundäre IP-Adresse für Sicherungszwecke. Beide sind aufgeführt, damit Sie im Falle eines Failovers in Zukunft sowohl die aktive als auch die passive IP kennen.

    • Die CIDR des Teilnetzes Ihrer Back-End-Workload.

  2. Konfigurieren Sie Ihre angepassten Routen wie folgt:

    • Legen Sie für den gesamten Datenverkehr, der für das Teilnetz der Back-End-Kundenworkload bestimmt ist, den nächsten Hop auf die private IP der NLB fest.
    • Legen Sie für den gesamten Datenverkehr, der für das Clientteilnetz bestimmt ist, den nächsten Hop für die private IP-Adresse der NLB fest.
  3. VNF-Instanzen (VNIs) müssen sich im selben Subnetz wie der NLB befinden und als Mitglied zu Ihrem Pool hinzugefügt werden.