StyleBook-Konfiguration

NetScaler-Zielinstanzen als Datenquellen verwenden

Sie können auch den Ziel-NetScaler Ihrer Konfiguration selbst als Datenquelleneingabe für Ihre Konfiguration verwenden. In diesem Szenario möchten Sie möglicherweise auf die vorhandene Konfiguration auf dem Ziel-NetScaler verweisen, um neue Konfigurationen auf diesem NetScaler zu erstellen.

Um Zielinstanzen als Datenquellen zu verwenden, müssen Sie den datumintegrierten Typparameter nicht verwenden, da keine NetScaler-Instanzen vom StyleBook-Benutzer ausgewählt werden müssen. Sie können direkt Ausdrücke in den componentsAbschnitt Ihres StyleBook schreiben, die Daten von der NetScaler-Zielinstanz abrufen.

Verwenden Sie den folgenden Ausdruck, um Folgendes von den NetScaler-Zielinstanzen abzurufen:

  • Sammlungen:

     $current-target-as-datasource.collections.<collection-name>
     <!--NeedCopy-->
    

    Beispiel:

     $current-target-as-datasource.collections.lbvserver
     <!--NeedCopy-->
    
  • Eigenschaften:

     $current-target-as-datasource.collections.attributes.<attribute>
     <!--NeedCopy-->
    

Beispiel StyleBook zur Verwendung der NetScaler-Zielinstanz als Datenquelle

Das Folgende ist ein Beispiel für ein StyleBook, um zu demonstrieren, wie die NetScaler-Zielinstanz als Datenquelle verwendet wird:

---
name: lb-add-service-with-target-adc
namespace: com.citrix.adc.stylebooks
version: "1.1"
display-name: "HTTP/SSL LoadBalancing StyleBook with Service Binding"
description: "This stylebook defines a typical Load Balanced Application configuration."
schema-version: "1.0"
import-stylebooks:
  -
    namespace: netscaler.nitro.config
    prefix: ns
    version: "10.5"

components:
  -
    name: servicegroup-comp
    type: ns::servicegroup
    properties:
      servicegroupname: "lb-demo-svcgrp"
      servicetype: "HTTP"

    components:
      -
        name: lbvserver-svg-binding
        type: ns::lbvserver_servicegroup_binding
        repeat: $current-target-as-datasource.collections.lbvserver
        repeat-item: lbvsrvr
        repeat-condition: $lbvsrvr.attributes.name == "lb-demo-lb"
        properties:
          name: $lbvsrvr.attributes.name
          servicegroupname: $parent.properties.servicegroupname
<!--NeedCopy-->

In diesem Beispiel sucht das Konfigurationspaket nach den virtuellen Lastausgleichsservern in den NetScaler-Zielinstanzen. Und wenn die angegebene IP-Adresse des virtuellen Lastausgleichsservers übereinstimmt, werden der Name und der Dienstgruppenname abgerufen.

NetScaler-Instanz als Datenquelle als Zielinstanz

NetScaler-Zielinstanzen als Datenquellen verwenden