Sie können die verwalteten NetScaler-Instanzen als Datenquellen verwenden. managed-adc
ist ein integrierter Datenquellentyp, der problemlos als Datenquelle in der NetScaler-Konsole verwendet werden kann. Jede verwaltete NetScaler-Instanz in der NetScaler-Konsole ist standardmäßig eine Datenquelle. Sie können diese Datenquellen in Ihren StyleBooks verwenden, wenn Sie beim Erstellen von Konfigurationspaketen Daten von einem vorhandenen NetScaler benötigen, der von der NetScaler-Konsole verwaltet wird.
Geben Sie in der StyleBook-Definition den integrierten Typparameter datum
an. Sie können die Datenquellentypen in Ihrem StyleBook verwenden. Die StyleBook-Benutzer können eine Datenquelle auswählen, die zum Abrufen von Daten aus dieser Quelle verwendet werden kann.
Parameter:
- Name: selected-adc
Bezeichnung: Wählen Sie einen vorhandenen NetScaler aus
Typ: Datum
Erforderlich: true
Datenquelle:
Typ: managed-adc
<!--NeedCopy-->
Im Beispiel wird der Parameter Datum
verwendet, um eine beliebige NetScaler-Instanz auszuwählen, die von der NetScaler-Konsole verwaltet wird. Mit der integrierten Datenquelle managed-adc
können Sie Daten von jeder NetScaler-Instanz abrufen, die von der NetScaler-Konsole verwaltet wird.
In Ihrem StyleBook können Sie auf jede Konfiguration der ausgewählten NetScaler-Instanz zugreifen. Und Sie können diese Konfiguration verwenden, während Sie Konfigurationen auf demselben NetScaler oder einer anderen NetScaler-Instanz erstellen oder aktualisieren. Dies hängt von der ausgewählten NetScaler-Zielinstanz ab.
Greifen Sie von einer Datenquelleauf die Sammlung zu:
Um in der ausgewählten NetScaler-Instanz auf eine Sammlung zuzugreifen, verwenden Sie den folgenden Ausdruck:
$parameters.selected-adc.collections.<collection-name>
<!--NeedCopy-->
Beispiel:
$parameters.selected-adc.collections.lbvserver
<!--NeedCopy-->
Dieser Ausdruck gibt die Liste der lbvserver
-Entitäten auf der ausgewählten NetScaler-Instanz zurück. Sie können beispielsweise diese Liste durchlaufen, um einen bestimmten lbvserver
auszuwählen, der eine bestimmte Bedingung erfüllt.
Name: add-vservers-from-managed-adc-instances
Namespace: com.citrix.adc.stylebooks
Version: "1.0"
Schemaversion: "1.0"
Import-Stylebooks:
-
Namespace: netscaler.nitro.config
Präfix: ns
Version: "10.5"
Parameter:
-
Name: selected-adc
Bezeichnung: Wählen Sie eine NetScaler-Instanz aus
Typ: Datum
erforderlich: true
Datenquelle:
Typ: „managed-adc“
Komponenten:
-
Name: sslvserver-comp
Typ: ns::sslvserver
Wiederholung: $parameters.selected-adc.collections.lbvserver
Wiederholungselement: lbvs
Wiederholungsbedingung: $lbvs.attributes.servicetype == „SSL“
Eigenschaften:
Name: $lbvs.attributes.name
ssl2: DEAKTIVIERT
ssl3: DEAKTIVIERT
tls1: DEAKTIVIERT
tls11: AKTIVIERT
tls12: AKTIVIERT
<!--NeedCopy-->
Die GUI des Konfigurationspakets zeigt die von der NetScaler-Konsole verwalteten NetScaler-Instanzen an, und StyleBook-Benutzer können beim Erstellen oder Aktualisieren des Konfigurationspakets einen beliebigen NetScaler auswählen.
Dieses StyleBook verwendet den ausgewählten NetScaler und iteriert über alle lbvserver
-Entitäten. Es wählt die virtuellen SSL-Server aus und legt die zulässigen SSL-Protokollversionen auf jedem virtuellen Server fest.
Mit dem folgenden Ausdruck können Sie die Liste der lbvserver
-Entitäten in der NetScaler-Instanz durchlaufen.
wiederholen: $parameters.selected-adc.collections.lbvserver
<!--NeedCopy-->
Sammlungen
: Bezieht sich auf alle Entitätstypen auf der NetScaler-Instanz. Zum Beispiel csvserver
, lbmonitor
, servicegroup
usw.
lbvserver
: Bezieht sich auf die Liste der virtuellen Lastausgleichsservereinheiten in der NetScaler-Instanz.
Parameter:
- Name: ausgewählter lbvserver
Bezeichnung: Wählen Sie einen vorhandenen lbvserver aus
Typ: Datum
Erforderlich: wahr
Datenquelle:
Typ: verwaltetes ADC
Sammlung: lbvserver
<!--NeedCopy-->
In diesem Beispiel wird der Parameter datum
verwendet, um einem Benutzer die Auswahl sowohl der NetScaler-Instanz als auch eines bestimmten lbvserver
aus dem Datenquellentyp managed-adc
zu ermöglichen.
Wenn Sie im Abschnitt „ -Parameter
“ einen Sammlungstyp definieren, können die StyleBook-Benutzer die NetScaler-Instanz und eine bestimmte Entität aus einer Sammlung auf dieser Instanz auswählen.
Zugriff auf ein Attribut des ausgewählten Elements:
Wenn der StyleBook-Benutzer einen virtuellen Server auswählt, kann der folgende Ausdruck in Ihrem StyleBook auf jedes Attribut des ausgewählten Elements zugreifen.
$parameters.selected-lbvserver.attributes.<attribute-name>
<!--NeedCopy-->
In diesem Beispiel ist das ausgewählte -Datum
lbvserver
. Sie können also auf jedes Attribut der NetScaler-Entität lbvserver
zugreifen, z. B. Name
, Servicetyp
, IPv46
usw.
Beispiel:
$parameters.selected-lbvserver.attributes.ipv46
<!--NeedCopy-->
Dieser Ausdruck ruft die IP des ausgewählten virtuellen Lastausgleichsservers ab. Weitere Informationen zu den NetScaler-Entitäten (Sammlungen) und ihren Attributen finden Sie unter NetScaler NITRO API-Referenz.
Wählen Sie mehrere Elemente aus einer Sammlung aus:
Der folgende Parameterabschnitt ermöglicht es StyleBook-Benutzern, mehrere Elemente einer Sammlung auszuwählen.
Parameter:
- Name: ausgewählte lbvserver
Bezeichnung: Vorhandene lbvserver auswählen
Typ: Datum[]
Erforderlich: wahr
Datenquelle:
Typ: verwaltetes ADC
Sammlung: lbvserver
<!--NeedCopy-->
In diesem Beispiel wird der Datumsparameter verwendet, um das Datenquellenarray zu definieren. Der Benutzer kann einen oder mehrere lbvserver aus einer einzelnen NetScaler-Instanz oder über mehrere NetScaler-Instanzen hinweg auswählen.
Der folgende Codeausschnitt zeigt, wie auf ausgewählte Elemente und deren Attribute zugegriffen wird.
Komponenten:
- Name: sslvserver-comp
Typ: ns::sslvserver
Wiederholung:
Wiederholungsliste: $parameters.selected-lbvservers
Wiederholungselement: vserverObj
Eigenschaften:
Name: $vserverObj.attributes.name
ssl2: DEAKTIVIERT
ssl3: DEAKTIVIERT
tls1: DEAKTIVIERT
tls11: AKTIVIERT
tls12: ERMÖGLICHT
<!--NeedCopy-->
Greifen Sie auf eine Sammlung über die Referenzdes ausgewählten Elements zu:
Sie können einem StyleBook-Benutzer nicht nur die Auswahl einer bestimmten Entität auf einer verwalteten NetScaler-Instanz ermöglichen, sondern auch auf jede Entität aus derselben oder anderen Sammlungen auf der ausgewählten NetScaler-Instanz zugreifen. Um auf eine andere Sammlung in dieser NetScaler-Instanz zuzugreifen, verwenden Sie den folgenden Ausdruck im Abschnitt „ Komponenten
“:
$parameters.selected-lbvserver.datasource.collections.<collection-name>
<!--NeedCopy-->
Beispiel:
$parameters.selected-lbvserver.datasource.collections.csvserver
<!--NeedCopy-->
Dieser Ausdruck gibt die Liste der virtuellen Content-Switching-Server der ausgewählten NetScaler-Instanz zurück.
Und der folgende Ausdruck gibt eine Liste aller Bindungen zwischen lbvservers
und servicegroups
zurück:
$parameters.selected-lbvserver.datasource.collections.lbvserver_servicegroup_binding
<!--NeedCopy-->
Das folgende StyleBook-Beispiel veranschaulicht die Verwendung der verwalteten NetScaler-Instanz als Datenquelle:
Name: bind-lb-to-servicegroup-using-ADC-as-datasource
Namespace: com.citrix.adc.stylebooks
Version: „1.1“
Anzeigename: „HTTP/SSL LoadBalancing StyleBook mit Service-Bindung“
Beschreibung: „Dieses Stylebook definiert eine typische Load-Balanced-Anwendungskonfiguration, bei der wir dem Benutzer ermöglichen, mithilfe des Datumstypparameters einen vorhandenen lbvserver auf dem NetScaler auszuwählen. Anschließend wird eine Servicegruppe für das ausgewählte lb erstellt, sofern diese auf dem NetScaler nicht vorhanden ist. Schließlich wird der ausgewählte lbvserver an den Dienst gebunden "
schema-version: "1.0"
import-stylebooks:
-
namespace: netscaler.nitro.config
prefix: ns
version: "10.5"
parameters:
-
name: selected-vserver
label: "Select an Existing VServer"
description: "Load Balancing Application Vservers to be bound to service on the ADC"
type: datum
required: true
Datenquelle:
Typ: managed-adc
Sammlung: lbvserver
Komponenten:
-
Name: servicegroup-discovery-comp
Typ: Objekt
Wiederholung: $parameters.selected-vserver.datasource.collections.servicegroup
Wiederholungselement: svcgrp
Wiederholungsbedingung: $svcgrp.attributes.servicegroupname == $parameters.selected-vserver.attributes.name + "-svcgrp"
Eigenschaften:
Servicegruppenname: $svcgrp.attributes.servicegroupname
-
Name: servicegroup-creation-if-not-exists-comp
Typ: ns::servicegroup
Bedingung: existiert nicht ($components.servicegroup-discovery-comp)
Eigenschaften:
Servicegruppenname: $parameters.selected-vserver.attributes.name + "-svcgrp"
Servicetyp: $parameters.selected-vserver.attributes.servicetype
Komponenten:
-
Name: lbvserver-servicegroup-binding
Typ: ns::lbvserver_servicegroup_binding
Eigenschaften:
Name: $parameters.selected-vserver.attributes.name
Servicegruppenname: $parent.properties.servicegroupname
<!--NeedCopy-->
In diesem StyleBook sucht der Abschnitt components
nach dem Servicegruppennamen, der mit dem ausgewählten Namen des virtuellen Lastenausgleichsservers übereinstimmt, der mit svcgrp
verkettet ist.
Wenn der Name des ausgewählten virtuellen Lastausgleichsservers lbv1
lautet, sucht dieses StyleBook nach der Servicegruppe mit dem Namen lbv1-svcgrp
. Wenn es nicht gefunden wird, erstellt es eine Servicegruppe lbv1-svcgrp
und bindet sich an den virtuellen Server lbv1
.
Der folgende Ausdruck ruft die Liste der Dienstgruppen in der NetScaler-Instanz ab.
wiederholen: $parameters.selected-vserver.datasource.collections.servicegroup
<!--NeedCopy-->
In diesem Ausdruck:
Datenquelle
: Bezieht sich auf die ausgewählte NetScaler-Instanz, die von der NetScaler-Konsole verwaltet wird.
Sammlungen
: Bezieht sich auf alle Entitäten in der NetScaler-Instanz.
Servicegruppe
: Bezieht sich auf die Servicegruppen in der NetScaler-Instanz.
Filtern von Sammlungsdaten:
Im folgenden Parameterabschnitt wird erläutert, wie Filter für eine integrierte Datenquellensammlung in der StyleBook-Definition angegeben werden. Es ermöglicht StyleBook-Benutzern, ein bestimmtes Element aus einer gefilterten Sammlung auszuwählen.
Parameter:
- Name: ausgewählter lbvserver
Bezeichnung: Wählen Sie einen vorhandenen lbvserver aus
Typ: Datum
Erforderlich: wahr
Datenquelle:
Typ: verwaltetes ADC
Sammlung: lbvserver
Sammlungsfilter:
Protokoll: SSL
<!--NeedCopy-->
In diesem Beispiel wird der Datumsparameter verwendet, um einem Benutzer die Auswahl sowohl der NetScaler-Instanz als auch eines bestimmten lbvservers mit SSL-Protokoll aus dem Datenquellentyp „Managed-ADC“ zu ermöglichen.
Nachdem der StyleBook-Benutzer einen virtuellen Server ausgewählt hat, kann auf jedes Attribut des ausgewählten Elements auf die gleiche Weise zugegriffen werden, wie im vorherigen Abschnitt erläutert.