Integration mit OpenStack Heat-Diensten

Der OpenStack Neutron LBaaS ermöglicht grundlegende Lastenausgleichsdienste wie Lastenausgleich, SSL-Offloading und Inhaltsumschaltung für Anwendungen. LBaaS wird über eine REST-API verwaltet, und die API ermöglicht es Mandanten, REST-Aufrufe zum Erstellen, Aktualisieren und Löschen von LBaaS-Objekten durchzuführen. Da LBaaS Lastenausgleichsdienste bereitstellt, erlaubt es die Verwendung der fortschrittlicheren NetScaler-Funktionen während des Orchestrierungsprozesses nicht. Das NetScaler Heat-Plug-in überwindet diese Einschränkung.

Heat-Orchestrierungsdienst

Der OpenStack Heat-Orchestrierungsdienst ermöglicht die Bereitstellung komplexer Cloud-Anwendungen auf der Grundlage von Vorlagen. Die Heat-Orchestrierungsvorlage (HOT) beschreibt die Infrastruktur für eine Cloud-Anwendung in Textdateien, die von Menschen lesbar und schreibbar sind und von Versionskontrolltools verwaltet werden können. YAML, eine strukturierte Sprache, wird zum Schreiben dieser Vorlagen verwendet. Die HOT-Vorlage ermöglicht die Erstellung der meisten OpenStack-Ressourcentypen und spezifiziert die Beziehungen zwischen den darin definierten Ressourcen. Das NetScaler Heat-Plug-in ermöglicht die Konfiguration erweiterter Application Delivery Controller (ADC)-Funktionalitäten auf jeder NetScaler-Instanz.

NetScaler StyleBooks

NetScaler Application Delivery Management (ADM) StyleBooks können verwendet werden, um NetScaler-Funktionalitäten zu erstellen und zu konfigurieren. Genau wie Heat-Vorlagen sind die StyleBooks ebenfalls in YAML geschrieben. Für jede Funktionalität kann ein separates StyleBook erstellt werden, und ein einzelnes StyleBook kann verwendet werden, um Konfigurationen auf mehreren NetScaler-Instanzen bereitzustellen.

Während der NetScaler-Integration mit OpenStack veröffentlicht NetScaler ADM alle NetScaler ADM StyleBooks als Ressource im Heat-Dienst. Dies umfasst sowohl die StyleBooks, die mit NetScaler ADM ausgeliefert werden, als auch die StyleBooks, die vom Benutzer zu einem späteren Zeitpunkt erstellt werden. Die Heat-Vorlage ermöglicht die Konfiguration der erweiterten Funktionen von NetScalern mithilfe dieser StyleBooks-Ressourcen.

Workflow zur Konfiguration von NetScaler-Instanzen mit Heat

Das folgende Flussdiagramm veranschaulicht den Workflow für die Bereitstellung des Heat-Stacks:

Workflow zur Konfiguration von ADC-Instanzen mit Heat

Führen Sie die folgenden Aufgaben als Cloud-Administrator aus:

So konfigurieren Sie Heat-Dienste in OpenStack:

  1. Laden Sie NetScaler-Bundles für OpenStack herunter.

    Installieren Sie die NetScaler-Bundles in OpenStack. Navigieren Sie in NetScaler ADM zu Downloads, laden Sie die NetScaler-Treiber-Bundles herunter, entpacken Sie die Bundles und kopieren Sie den Inhalt des Heat-Ordners im Bundle in das Heat-Engine-Ressourcenverzeichnis in OpenStack. Der Verzeichnispfad lautet wie folgt:             /opt/stack/heat/heat/engine/resources/netscaler_resources

  2. Erstellen Sie einen Abschnitt “netscaler_plugin” in der Datei heat.conf und aktualisieren Sie die folgenden Parameter in diesem Abschnitt:

    [netscaler_plugin]

    1. Wenn die Kommunikation HTTP ist, werden die Parameter wie folgt aktualisiert:

      NMAS_BASE_URI=<http://10.146.103.45:80>

      NMAS_USERNAME=

      NMAS_PASSWORD=

    2. Wenn die Kommunikation HTTPS ist, werden die Parameter wie folgt aktualisiert:

      NMAS_BASE_URI=https://common_name_used_in_certificate

      NMAS_USERNAME=<openstack_driver_username

      NMAS_PASSWORD=<openstack_driver_password>

      SSL_CERT_VERIFY=<True_or_False>

      CERT_FILE_PATH=<path_of_the_certificate_file>

      Wenn der Benutzer ssl_cert_verify auf „False“ setzt, sendet NetScaler ADM verify=False in den Anforderungsaufrufen, wodurch die SSL-Zertifikatsvalidierung deaktiviert wird. Wenn ssl_cert_verify auf „True“ gesetzt ist und der Eintrag cert_file_path vorhanden ist, sendet NetScaler ADM diesen Pfad im verify-Parameter der Anforderung, andernfalls sendet NetScaler ADM verify=True.

      Hinweis

      Für die Bereitstellung von NetScaler ADM im “Hochverfügbarkeits”-Modus aktualisieren Sie die folgenden Parameter in der Datei heat.conf:

      NMAS_BASE_URI=<IP-Adresse des virtuellen Front-End-Servers>

  3. Starten Sie den Heat-Dienst in OpenStack neu.

    Wenn Sie die NetScaler Heat-Dienste in OpenStack neu starten, werden alle definierten NetScaler ADM StyleBooks als Ressourcen in Heat importiert. Außerdem werden die NetScaler-Netzwerkressource und die Zertifikatsressource als NetScaler Heat-Ressourcen in OpenStack importiert.

  4. Registrieren Sie NetScaler® ADM bei OpenStack.

    1. Navigieren Sie in NetScaler ADM zu Orchestration > Cloud Orchestration > OpenStack und klicken Sie auf Configure OpenStack Settings.

    2. Auf der Seite Configure OpenStack Settings können Sie die Parameter zur Konfiguration von OpenStack festlegen. Sie haben hier zwei Optionen: Default und Customized.

    3. Wählen Sie Default, wenn die OpenStack-Dienste auf Standardports ausgeführt werden. Geben Sie die folgenden Parameter ein:

      1. OpenStack Controller IP Address

      2. Admin-Benutzername

      3. Passwort

      4. OpenStack Admin Tenant

      5. NetScaler-Treiber- und Heat-Passwort

      Hinweis

      Dies ist dasselbe Passwort (NMAS_PASSWORD), das Sie in der Datei heat.conf eingegeben haben.

  5. Erstellen Sie Dienstpakete und definieren Sie die SLAs mit Ihrem Mandanten.

    Für jeden Benutzer wird während der OpenStack-Registrierung ein Mandant in NetScaler ADM erstellt, und die Mandanteninformationen werden sowohl vom LBaaS-Treiber als auch vom Heat-Plug-in verwendet. Das Heat-Plug-in verwendet diese Informationen, um NetScaler ADM zu kontaktieren und StyleBooks als Heat-Ressourcen in OpenStack zu importieren.

    Hinweis

    Weitere Informationen zum Erstellen von Dienstpaketen und anderen Vorkonfigurationsaufgaben in NetScaler ADM und OpenStack finden Sie unter Integration von NetScaler ADM in die OpenStack-Plattform.

  6. Beachten Sie, dass alle relevanten StyleBooks in NetScaler ADM als Ressourcen in OpenStack Heat importiert werden. Beachten Sie außerdem, dass die NetScaler-Netzwerkressource und die NetScaler-Zertifikatsressource als Ressourcen in OpenStack Heat importiert werden.

    Hinweis

    Derzeit können Sie nur die StyleBooks verwenden, die mit NetScaler ADM ausgeliefert werden.

    Ihr Mandant kann nun die Heat-Vorlage in OpenStack erstellen, die Werte der erforderlichen Heat-Parameter eingeben und den Heat-Stack bereitstellen. Wenn der Heat-Stack bereitgestellt wird, wird die Konfiguration an NetScaler ADM übertragen und die erforderlichen NetScaler-Instanzen werden konfiguriert.

So bereiten Sie die Heat-Vorlage vor und starten den Heat-Stack:

  1. In OpenStack kann der Mandant eine Heat-Orchestrierungsvorlage (HOT) mithilfe der Heat-Ressourcen erstellen.

  2. In OpenStack Horizon kann der Mandantenadministrator zu Project > Orchestration > Stacks navigieren, um die Heat-Vorlage zu erstellen und den Heat-Stack zu starten. Es gibt zwei Möglichkeiten, HOT zu erstellen:

    • Datei – Wählen Sie die aktualisierte Vorlage aus dem lokalen Verzeichnis aus.
    • Direkte Eingabe – Kopieren Sie den YAML-Inhalt aus der Vorlage und fügen Sie ihn in das Fenster ein.

    Hinweis

    Nach erfolgreicher Bereitstellung des Stacks kann der Mandant den Stack mithilfe der Option “Change Stack Template” aktualisieren. Die Subnetzinformationen und die virtuelle IP-Adresse (VIP), die ursprünglich bei der Erstellung des Stacks angegeben wurden, können jedoch nicht geändert werden.

    Nachdem der Mandant den Stack bereitgestellt hat, navigieren Sie in NetScaler ADM zu Orchestration > Cloud Orchestration > OpenStack > Requests, um die Aufgabenlisten zu beobachten. Navigieren Sie außerdem in NetScaler ADM zu Applications > Configuration, um zu sehen, dass die NetScaler-Instanzen erfolgreich in Form von StyleBooks-Konfigurationspaketen konfiguriert wurden.

Ein Beispiel für ein NetScaler ADM StyleBook:

Die folgende Abbildung zeigt ein Beispiel, wie ein NetScaler ADM StyleBook aufgebaut ist, und erläutert kurz die Komponenten. Weitere Informationen zu NetScaler ADM StyleBooks und deren Verwendung finden Sie unter StyleBooks.

Beispiel StyleBooks

Ein Beispiel für eine Heat-Vorlage:

Die folgende Abbildung zeigt die Struktur einer in YAML definierten Heat-Vorlage und verweist auf die StyleBooks-Ressourcen und NetScaler-Netzwerkressourcen, die als Heat-Ressourcen importiert werden.

Beispiel Heat-Vorlage

Weitere Informationen zu Heat-Diensten und zur Erstellung von Vorlagen finden Sie in der OpenStack Heat-Dokumentation.

Integration mit OpenStack Heat-Diensten