Sie können LBaaS über die Befehlszeilenschnittstelle auf dem Knoten konfigurieren, der OpenStack Neutron ausführt.

Voraussetzungen

  • Erstellen Sie ein öffentliches Subnetz und einen Router in Ihrem Netzwerk. Für eine NSX Data Center for vSphere-Bereitstellung muss exclusive als Routertyp verwendet werden.

    Hinweis:

    Sie können den Lastausgleichsdienst in einem Mandantensubnetz erstellen, müssen ihm aber eine dynamische IP-Adresse zuweisen.

  • Konfigurieren Sie mindestens eine Client- und mindestens zwei Serverinstanzen.

  • Wenn Sie beendete HTTPS-Listener erstellen möchten, stellen Sie sicher, dass das Serverzertifikat und der private Schlüssel in den Vertrauensspeicher für geheime Schlüssel in den NSX Manager importiert wurden.

Prozedur

  1. Melden Sie sich beim OpenStack Management Server als viouser an.
  2. Melden Sie sich beim Controller-Knoten als viouser an.
  3. Laden Sie die Anmeldedatendatei für Ihr Benutzerkonto.
    source user-credentials.rc
  4. Erstellen Sie einen Lastausgleichsdienst.
    neutron lbaas-loadbalancer-create --name lb-name lb-subnet-id

    Nur Mitglieder des angegebenen Subnetzes können zum LBaaS-Pool hinzugefügt werden.

  5. Erstellen Sie einen Listener für den neuen Lastausgleichsdienst.
    neutron lbaas-listener-create --loadbalancer lb-name --protocol {HTTP | TCP | TERMINATED_HTTPS} --protocol-port port-num --name listener-name [--default-tls-container=nsxt-cert-uuid]

    Wenn Sie TERMINATED_HTTPS als Protokoll angeben, müssen Sie auch die ID des NSX-T Data Center-Serverzertifikats bereitstellen.

  6. Erstellen Sie einen LBaaS-Pool.
    neutron lbaas-pool-create --lb-algorithm lb-method --listener listener-name --protocol {TCP | HTTP} --name pool-name

    Der Parameter --lb-algorithm akzeptiert die folgenden Werte.

    Argument

    Beschreibung

    LEAST_CONNECTIONS

    Neue Clientanfragen werden an den Server mit den wenigsten Verbindungen gesendet.

    ROUND_ROBIN

    Dabei wird die jedem Server zugeordnete Gewichtung berücksichtigt.

    SOURCE_IP

    Alle Verbindungen, die von derselben Quell-IP-Adresse stammen, werden vom selben Pool-Mitglied verarbeitet.

  7. Fügen Sie dem von Ihnen erstellten LBaaS-Pool mindestens zwei Serverinstanzen hinzu.
    neutron lbaas-member-create --subnet lb-subnet-id --address server1-ip --protocol-port 80 pool-name
    neutron lbaas-member-create --subnet lb-subnet-id --address server2-ip --protocol-port 80 pool-name
  8. Richten Sie die Systemüberwachung ein.
    neutron lbaas-healthmonitor-create --delay delay-seconds --type {HTTP | TCP | PING} --max-retries number --timeout timeout-seconds --pool pool-name

    Parameter

    Beschreibung

    --delay

    Geben Sie die Zeit in Sekunden zwischen dem Senden von Proben an Mitglieder ein.

    --type

    Geben Sie HTTP, TCP oder PING ein.

    --max-retries

    Geben Sie die Anzahl der zulässigen Verbindungsfehler bis zum Ändern des Mitgliedsstatus in INACTIVE ein.

    --timeout

    Geben Sie die Zeit in Sekunden ein, für die während der Überwachung auf eine Verbindungsherstellung gewartet wird, bevor eine Zeitüberschreitung eintritt.

    Der Wert für die Zeitüberschreitung muss größer als der Verzögerungswert sein.

    --pool

    Geben Sie den von Ihnen erstellten LBaaS-Pool an.

  9. Wenn Sie den Lastausgleichsdienst in einem Mandantensubnetz erstellt haben, ordnen Sie dem Lastausgleichsdienst eine dynamische IP-Adresse zu.
  10. (Optional) Senden Sie Testanforderungen, um Ihre LBaaS-Konfiguration zu überprüfen.
    1. Melden Sie sich beim OpenStack Management Server als viouser an.
    2. Erstellen Sie eine index.html-Testdatei.
    3. Starten Sie im selben Verzeichnis einen Webserver.
      sudo python -m SimpleHTTPServer 80
    4. Melden Sie sich bei der Client-Instanz an.
    5. Führen Sie den Befehl wget aus, um anzuzeigen, ob die Last Ihrer Anforderungen ordnungsgemäß auf die Server im Pool verteilt wird.
      • Für einen Lastausgleich ohne TLS führen Sie folgenden Befehl aus:

        wget -O - http://mgmt-server-ip
      • Für einen Lastausgleich mit TLS führen Sie folgenden Befehl aus:

        wget -O - https://mgmt-server-ip