StyleBook-Konfiguration

StyleBooks zum Durchführen von Nicht-CRUD-Operationen erstellen

StyleBooks verwalten NetScaler Konfigurationen, indem die erforderlichen Konfigurationsobjekte auf den NetScaler-Instanzen berechnet werden. Diese Objekte werden jedes Mal hinzugefügt, aktualisiert oder aus der Instanz entfernt, wenn Sie ein ConfigPack erstellen oder aktualisieren. Das ist, wenn Sie den gewünschten Zustand angeben.

Einige NetScaler-Konfigurationsobjekte unterstützen jedoch einige andere Vorgänge als Erstellen, Aktualisieren oder Löschen (CRUD-Vorgänge). Beispielsweise kann ein Load Balancer-Objekt (lbvserver) oder ein NetScaler-Funktionsobjekt (nsfeature) die Operation “Aktivieren” oder “Deaktivieren” unterstützen. In ähnlicher Weise certkeys unterstützt NetScaler die Operation “Link” und “Unlink”, um ein Zertifikat mit einem anderen Zertifikat zu verknüpfen oder aufzuheben. Diese Vorgänge für NetScaler Objekte werden als Nicht-CRUD-Vorgänge bezeichnet.

In diesem Abschnitt wird beschrieben, wie nicht-CRUD-Vorgänge für Konfigurationsobjekte ausgeführt werden, die sie mithilfe von StyleBooks unterstützen.

Hinweis

Die Bindung zwischen Konfigurationsobjekten (z. B. binden Sie a certkey an a lbvserver) ist keine Nicht-CRUD-Operation, da NITRO-Bindungen als eigenständige Konfigurationsobjekte dargestellt werden. Diese Objekte werden wie jedes andere NetScaler Konfigurationsobjekt erstellt und gelöscht.

Unterstützung der Nicht-CRUD-Operationen

Ein Konstrukt namens meta-properties wird in der Komponente auf derselben Ebene wie das Konstrukt properties hinzugefügt. Das in diesem Konstrukt unterstützte Attribut wird aufgerufen action. Dieses Attribut kann Werte wie enable, disable, link, unlink, import, export, create, archive und apply annehmen.

components:
 -
  name: my-lbvserver-comp
  type: ns::lbvserver
  meta-properties
   action: enable
  properties:
    name: $parameters.name
    servicetype: HTTP
    ipv46: $parameters.ip
    port: 80
    lbmethod: $parameters.lb-alg
<!--NeedCopy-->

In diesem Beispiel ist die my-lbvserver-comp Komponente vom Typ ns::lbvserver. Das “ns” ist das Präfix, das sich auf den Namespace netscaler.nitro.config und die Version ** 10.5 bezieht, die Sie im Abschnitt import-stylebooks angegeben haben. Die lbvserver ist eine NITRO-Ressource in diesem Namensraum. Als implizite Aktion erstellt das StyleBook lbvserver und führt den Vorgang “enable” aus.

Die in den Meta-Eigenschaften angegebene action wird für das Konfigurationsobjekt nur während der Erstellung des configPack ausgeführt. Updates für das configPack führen keine Nicht-CRUD-Aktionen aus.

Sie können Ausdrücke für eine Meta-Eigenschaft angeben. Diese Ausdrücke wenden dynamisch die gültigen Metaeigenschaftenaktionen für NetScaler-Objekte an.

Beispiel:

parameters:
-
    name: meta-action-lbvserver
    type: string
    default: disable
    allowed-values:
      - enable
      - disable

components:
  -
    name: c1
    type: ns::lbvserver
    meta-properties:
      action: $parameters.meta-action-lbvserver
    properties:
      name: $parameters.lbvserver
      ipv46: $parameters.ip
      port: 80
      servicetype: HTTP
<!--NeedCopy-->

In diesem Beispiel kann ein StyleBook-Benutzer beim Erstellen eines Konfigurationspakets eine gültige Meta-Eigenschaftenaktion angeben.

StyleBooks zum Durchführen von Nicht-CRUD-Operationen erstellen