Utiliser une instance NetScaler comme source de données
Vous pouvez utiliser les instances NetScaler gérées comme sources de données. Le managed-adc
est un type de source de données intégré qui peut être facilement utilisé comme source de données dans la console NetScaler. Chaque instance NetScaler gérée dans la console NetScaler est une source de données par défaut. Vous pouvez commencer à utiliser ces sources de données dans vos StyleBooks si vous avez besoin de données provenant d’un NetScaler existant géré par NetScaler Console lors de la création de packs de configuration.
Dans la définition StyleBook, spécifiez le paramètre de type intégré datum
. Vous pouvez utiliser les types de sources de données dans votre StyleBook. Les utilisateurs de StyleBook peuvent sélectionner une source de données qui peut être utilisée pour récupérer des données à partir de cette source.
Utilisation de la source de données intégrée sans collecte
paramètres :
- nom : selected-adc
étiquette : sélectionner un NetScaler existant
type : datum
requis : true
source de données :
type : managed-adc
<!--NeedCopy-->
Dans l’exemple, le paramètre datum
est utilisé pour sélectionner n’importe quelle instance NetScaler gérée par NetScaler Console. La source de données intégrée managed-adc
vous permet de récupérer des données à partir de n’importe quelle instance NetScaler gérée par NetScaler Console.
Dans votre StyleBook, vous pouvez accéder à n’importe quelle configuration de l’instance NetScaler sélectionnée. Et vous pouvez utiliser cette configuration lors de la création ou de la mise à jour de configurations sur le même NetScaler ou sur une instance NetScaler différente ; cela dépend de l’instance NetScaler cible sélectionnée.
Accéder à la collection à partir d’une source de données:
Dans l’instance NetScaler sélectionnée, pour accéder à une collection, utilisez l’expression suivante :
$parameters.selected-adc.collections.<collection-name>
<!--NeedCopy-->
Exemple:
$parameters.selected-adc.collections.lbvserver
<!--NeedCopy-->
Cette expression renvoie la liste des entités lbvserver
sur l’instance NetScaler sélectionnée. Par exemple, vous pouvez parcourir cette liste pour sélectionner un lbvserver
spécifique qui répond à une certaine condition.
Exemple de StyleBook sans collection
nom : add-vservers-from-managed-adc-instances
espace de noms : com.citrix.adc.stylebooks
version : "1.0"
version-du-schéma : "1.0"
import-stylebooks :
-
espace de noms : netscaler.nitro.config
préfixe : ns
version : "10.5"
paramètres :
-
nom : selected-adc
libellé : sélectionner une instance NetScaler
type : datum
requis : true
source de données :
type : "managed-adc"
composants :
-
nom : sslvserver-comp
type : ns::sslvserver
répétition : $parameters.selected-adc.collections.lbvserver
élément de répétition : lbvs
condition de répétition : $lbvs.attributes.servicetype == "SSL"
propriétés :
nom : $lbvs.attributes.name
ssl2 : DÉSACTIVÉ
ssl3 : DÉSACTIVÉ
tls1 : DÉSACTIVÉ
tls11 : ACTIVÉ
tls12 : ACTIVÉ
<!--NeedCopy-->
L’interface graphique du pack de configuration affiche les instances NetScaler gérées par NetScaler Console et les utilisateurs de StyleBook peuvent sélectionner n’importe quel NetScaler lors de la création ou de la mise à jour du pack de configuration.
Ce StyleBook utilise le NetScaler sélectionné et itère sur toutes les entités lbvserver
. Il sélectionne les serveurs virtuels SSL et définit les versions de protocole SSL autorisées sur chaque serveur virtuel.
L’expression suivante vous permet de parcourir la liste des entités lbvserver
dans l’instance NetScaler.
répéter : $parameters.selected-adc.collections.lbvserver
<!--NeedCopy-->
-
collections
: Fait référence à tous les types d’entités sur l’instance NetScaler. Par exemplecsvserver
,lbmonitor
,servicegroup
, etc. -
lbvserver
: fait référence à la liste des entités de serveur virtuel d’équilibrage de charge dans l’instance NetScaler.
Utilisation de la source de données intégrée avec la collection
paramètres :
- nom : selected-lbvserver
étiquette : sélectionner un lbvserver existant
type : datum
requis : true
source de données :
type : managed-adc
collection : lbvserver
<!--NeedCopy-->
Dans cet exemple, le paramètre datum
est utilisé pour permettre à un utilisateur de sélectionner à la fois l’instance NetScaler et un lbvserver
spécifique à partir du type de source de données managed-adc
.
Lorsque vous définissez un type de collection dans la section paramètres
, les utilisateurs de StyleBook peuvent sélectionner l’instance NetScaler et une entité spécifique à partir d’une collection sur cette instance.
Accéder à un attribut de l’élément sélectionné:
Lorsque l’utilisateur StyleBook sélectionne un serveur virtuel, l’expression suivante dans votre StyleBook peut accéder à n’importe quel attribut de l’élément sélectionné.
$parameters.attributs sélectionnés-lbvserver.<attribute-name>
<!--NeedCopy-->
Dans cet exemple, la donnée sélectionnée
est lbvserver
. Ainsi, vous pouvez accéder à n’importe quel attribut de l’entité NetScaler lbvserver
tel que name
, servicetype
, ipv46
, et ainsi de suite.
Exemple:
$parameters.selected-lbvserver.attributes.ipv46
<!--NeedCopy-->
Cette expression récupère l’IP du serveur virtuel d’équilibrage de charge sélectionné. Pour plus d’informations sur les entités NetScaler (collections) et leurs attributs, consultez Référence de l’API NetScaler NITRO.
Sélectionnez plusieurs éléments d’une collection :
La section des paramètres suivante permet aux utilisateurs de StyleBook de sélectionner plusieurs éléments d’une collection.
paramètres :
- nom : serveurs lbv sélectionnés
étiquette : sélectionner les serveurs lbv existants
type : datum[]
requis : vrai
source de données :
type : managed-adc
collection : lbvserver
<!--NeedCopy-->
Dans cet exemple, le paramètre datum est utilisé pour définir le tableau de sources de données. L’utilisateur peut sélectionner un ou plusieurs lbvservers à partir d’une seule instance NetScaler ou sur plusieurs instances NetScaler.
L’extrait de code ci-dessous décrit la manière d’accéder aux éléments sélectionnés et à leurs attributs.
composants :
- nom : sslvserver-comp
type : ns::sslvserver
répétition :
liste-de-répétitions : $parameters.selected-lbvservers
élément-de-répétition : vserverObj
propriétés :
nom : $vserverObj.attributes.name
ssl2 : DÉSACTIVÉ
ssl3 : DÉSACTIVÉ
tls1 : DÉSACTIVÉ
tls11 : ACTIVÉ
tls12 : ACTIVÉ
<!--NeedCopy-->
Accéder à une collection par la référence de l’élément sélectionné:
En plus de permettre à un utilisateur StyleBook de sélectionner une entité spécifique sur une instance NetScaler gérée, vous pouvez également accéder à n’importe quelle entité de la même collection ou de collections différentes sur l’instance NetScaler sélectionnée. Pour accéder à une autre collection sur cette instance NetScaler, utilisez l’expression suivante dans la section composants
:
$parameters.selected-lbvserver.datasource.collections.<collection-name>
<!--NeedCopy-->
Exemple:
$parameters.selected-lbvserver.datasource.collections.csvserver
<!--NeedCopy-->
Cette expression renvoie la liste des serveurs virtuels de commutation de contenu de l’instance NetScaler sélectionnée.
Et, l’expression suivante renvoie une liste de toutes les liaisons entre lbvservers
et servicegroups
:
$parameters.selected-lbvserver.datasource.collections.lbvserver_servicegroup_binding
<!--NeedCopy-->
Exemple de StyleBook avec une collection
Voici un exemple de StyleBook pour montrer comment utiliser l’instance NetScaler gérée comme source de données :
nom : bind-lb-to-servicegroup-using-ADC-as-datasource
espace de noms : com.citrix.adc.stylebooks
version : « 1.1 »
nom d'affichage : « HTTP/SSL LoadBalancing StyleBook avec liaison de service »
description : « Ce stylebook définit une configuration d'application à charge équilibrée typique où nous permettons à l'utilisateur de sélectionner un lbvserver existant sur le NetScaler à l'aide du paramètre de type datum. Ensuite, un groupe de services pour le lb sélectionné est créé s'il n'existe pas sur le NetScaler. Enfin, le lbvserver sélectionné est lié au service "
schema-version: "1.0"
import-stylebooks:
-
namespace: netscaler.nitro.config
prefix: ns
version: "10.5"
parameters:
-
name: selected-vserver
label: "Sélectionnez un VServer existant"
description: "Vservers d'application d'équilibrage de charge à lier au service sur l'ADC"
type: datum
required: true
data-source:
type : managed-adc
collection : lbvserver
composants :
-
nom : servicegroup-discovery-comp
type : objet
répétition : $parameters.selected-vserver.datasource.collections.servicegroup
répétition-élément : svcgrp
répétition-condition : $svcgrp.attributes.servicegroupname == $parameters.selected-vserver.attributes.name + "-svcgrp"
propriétés :
servicegroupname : $svcgrp.attributes.servicegroupname
-
nom : servicegroup-creation-if-not-exists-comp
type : ns::servicegroup
condition : n'existe pas ($components.servicegroup-discovery-comp)
propriétés :
nom du groupe de services : $parameters.selected-vserver.attributes.name + "-svcgrp"
type de service : $parameters.selected-vserver.attributes.servicetype
composants :
-
nom : lbvserver-servicegroup-binding
type : ns::lbvserver_servicegroup_binding
propriétés :
nom : $parameters.selected-vserver.attributes.name
nom du groupe de services : $parent.properties.servicegroupname
<!--NeedCopy-->
Dans ce StyleBook, la section components
vérifie le nom du groupe de services qui correspond au nom du serveur virtuel d’équilibrage de charge sélectionné concaténé avec svcgrp
.
Si le nom du serveur virtuel d’équilibrage de charge sélectionné est lbv1
, ce StyleBook recherche le groupe de services portant le nom lbv1-svcgrp
. S’il n’est pas trouvé, il crée un groupe de services lbv1-svcgrp
et se lie au serveur virtuel lbv1
.
L’expression suivante récupère la liste des groupes de services dans l’instance NetScaler.
répéter : $parameters.selected-vserver.datasource.collections.servicegroup
<!--NeedCopy-->
Dans cette expression :
-
source de données
: fait référence à l’instance NetScaler sélectionnée gérée par NetScaler Console. -
collections
: Fait référence à toutes les entités de l’instance NetScaler. -
servicegroup
: fait référence aux groupes de services dans l’instance NetScaler.
Filtrage des données de la collection :
La section des paramètres suivante explique comment spécifier des filtres sur une collection de sources de données intégrée dans la définition StyleBook. Il permet aux utilisateurs de StyleBook de sélectionner un élément spécifique dans une collection filtrée.
paramètres :
- nom : lbvserver sélectionné
étiquette : sélectionner un lbvserver existant
type : datum
requis : vrai
source de données :
type : managed-adc
collection : lbvserver
filtres de collection :
protocole : SSL
<!--NeedCopy-->
Dans cet exemple, le paramètre datum est utilisé pour permettre à un utilisateur de sélectionner à la fois l’instance NetScaler et un lbvserver spécifique ayant le protocole SSL à partir du type de source de données managed-adc.
Une fois que l’utilisateur StyleBook a sélectionné un serveur virtuel, tout attribut de l’élément sélectionné est accessible de la même manière que celle expliquée dans la section précédente.