Configuration de StyleBook
Merci pour vos commentaires

Ce article a été traduit automatiquement. (Clause de non responsabilité)

Rôles d’instance

StyleBooks prend en charge les configurations suivantes sur les instances NetScaler :

  • Configuration symétrique : lorsqu’un pack de configuration est appliqué sur plusieurs instances NetScaler et que les configurations déployées sur toutes les instances sont les mêmes.
  • Configuration asymétrique : lorsqu’un pack de configuration est appliqué à plusieurs instances NetScaler et que les configurations déployées sur toutes les instances sont différentes. Par exemple, dans le StyleBook par défaut de Microsoft Skype for Business, une configuration différente doit être déployée sur chaque instance NetScaler.

La fonctionnalité « rôles d’instance » de StyleBooks vous aide à créer une configuration asymétrique. Ici, chaque instance NetScaler du pack de configuration peut se voir attribuer un rôle différent. Le rôle détermine les objets de configuration du pack de configuration que l’instance NetScaler reçoit.

Points à noter :

  • L’ensemble des rôles d’instance dans un StyleBook sont définis lors de la création du StyleBook.
  • Les rôles sont attribués à une instance NetScaler spécifique lors de la création ou de la mise à jour du pack de configuration.

Section Rôles de cible

Les « rôles cibles » sont généralement placés après la section « Import-StyleBooks » et avant la section « paramètres » d’un StyleBook. Tous les rôles pris en charge par le StyleBook sont déclarés dans la section « rôles cibles ».

Dans l’exemple de StyleBook suivant, deux rôles sont définis dans la section « rôles cibles » : A et B.

target-roles: - name: A name: B min-targets: 2 max-targets: 5

Vous pouvez voir que le rôle B définit également deux sous-propriétés facultatives, min-targets et max-targets.

min-targets spécifiez le nombre minimum obligatoire d’instances NetScaler à attribuer à ce rôle lors de la création d’un pack de configuration à partir de ce StyleBook. max-targetsspécifiez le nombre maximum d’instances NetScaler auxquelles ce rôle peut être attribué lors de la création d’un pack de configuration à partir de ce StyleBook.

Si ces sous-propriétés ne sont pas spécifiées, le nombre d’instances NetScaler pouvant être configurées pour ce rôle n’est pas limité. Pour min-targets = 0, la configuration associée au rôle est facultative. Pour min-targets = 1, la configuration est obligatoire et au moins une instance NetScaler doit être configurée pour le rôle.

Rôle « par défaut »

Outre les rôles définis de manière explicite, tous les StyleBooks ont un rôle implicite. Ce rôle implicite est appelé rôle par défaut et est utilisé comme n’importe quel autre rôle dans un StyleBook. Lors de la création d’un pack de configuration, si aucun rôle spécifique n’est attribué à une instance NetScaler, elle est implicitement affectée au rôle « par défaut ». L’instance reçoit ensuite tous les objets de configuration générés par les composants qui ont le rôle « par défaut ».

Composants avec des rôles

Une fois que les rôles qu’un StyleBook peut prendre en charge (y compris le rôle « par défaut ») sont définis, les rôles peuvent être utilisés dans la section des composants d’un StyleBook. Si vous souhaitez qu’un composant soit déployé uniquement sur les instances NetScaler qui jouent un certain rôle, vous pouvez spécifier l’attribut roles dans le cadre du composant, comme illustré dans l’exemple de composant suivant :

- name: C1 type: ns::lbvserver roles: - A properties: name: lb1 servicetype: HTTP ipv46: 1.1.1.1 port: 80

Dans cet exemple, le composant génère un lbvserver est déployé sur des instances jouant le rôle A. L’attribut roles d’un composant est a list, et plusieurs rôles peuvent être attribués au composant. Ces rôles auraient été déclarés dans la target-roles section du StyleBook.

Remarque

Si un composant d’un StyleBook ne spécifie pas d’attribut de rôle, les objets de configuration générés par le composant sont créés sur toutes les instances de NetScaler, quels que soient les rôles. Vous pouvez utiliser cette fonctionnalité efficacement pour créer des objets de configuration qui peuvent être appliqués à toutes les instances d’un pack de configuration.

Prenons l’exemple d’un StyleBook avec deux rôles et quatre composants.

  • Le composant C1 a les rôles A et B
  • Le composant C2 a le rôle B
  • Aucun rôle n’est défini pour le composant C3
  • Le composant C4 a le rôle « par défaut »

La section des composants de ce StyleBook est la suivante :

components: - name: C1 type: ns::lbvserver roles: - A - B properties: name: lb1 servicetype: HTTP ipv46: 1.1.1.1 port: 80 - name: C2 type: ns::lbvserver roles: - B properties: name: lb2 servicetype: HTTP ipv46: 12.12.12.12 port: 80 - name: C3 type: ns::lbvserver properties: name: lb3 servicetype: HTTP ipv46: 13.13.13.13 port: 80 - name: C4 type: ns::lbvserver roles: - default properties: name: lb4 servicetype: HTTP ipv46: 14.14.14.14 port: 80

Aucun rôle n’est défini pour le composant C3, ce qui signifie que le composant est déployé sur toutes les instances, quel que soit leur rôle. D’autre part, le composant C4 a le rôle « default », ce qui signifie qu’il est appliqué à toute instance qui ne lui a pas de rôle explicite.

Maintenant, considérez que vous souhaitez créer un pack de configuration à l’aide de ce StyleBook et le déployer sur cinq instances NetScaler. Vous pouvez attribuer les rôles aux instances de la manière suivante :

  • Le rôle A est attribué aux instances T1, T2, T3 et T4
  • Le rôle B est attribué aux instances T2, T3 et T4
  • Aucun rôle n’est attribué à l’instance T5

L’image suivante récapitule les attributions de rôles et montre la configuration obtenue que reçoit chaque instance NetScaler :

Synthèse des affectations de rôles

Le composant C3 est déployé sur toutes les instances, quel que soit leur rôle, car ce composant ne possède aucun roles attribut.

Utilisez la fonction « Dry Run » pour visualiser et vérifier :

  • L’attribution des rôles
  • Les objets de configuration créés sur chaque instance NetScaler

Créez votre StyleBook

Le contenu complet des « rôles cibles de démonstration » du StyleBook est le suivant :

--- name: demo-target-roles namespace: com.example.stylebooks version: "1.2" schema-version: "1.0" import-stylebooks: - namespace: netscaler.nitro.config prefix: ns version: "10.5" parameters: - name: appname type: string required: true key: true target-roles: - name: A - name: B min-targets: 2 max-targets: 5 components: - name: C1 type: ns::lbvserver roles: - A - B properties: name: lb1 servicetype: HTTP ipv46: 1.1.1.1 port: 80 - name: C2 type: ns::lbvserver roles: - B properties: name: lb2 servicetype: HTTP ipv46: 12.12.12.12 port: 80 - name: C3 type: ns::lbvserver properties: name: lb3 servicetype: HTTP ipv46: 13.13.13.13 port: 80 - name: C4 type: ns::lbvserver roles: - default properties: name: lb4 servicetype: HTTP ipv46: 14.14.14.14 port: 80

L’image suivante montre les objets créés pour un exemple de pack de configuration :

Objets créés dans une instance NetScaler pour un pack de configuration

Utilisation des API

Lorsque vous utilisez l’API REST, vous pouvez spécifier des rôles pour chaque instance NetScaler lors de la création ou de la mise à jour du pack de configuration comme suit. Dans le bloc « cibles », spécifiez l’UUID de l’instance NetScaler spécifique sur laquelle vous souhaitez déployer les composants individuels.

"targets": [ { "id": "<ADC-UUID>", "roles": ["A"] }, ]

Un exemple complet d’API REST est fourni à titre de référence.

POST/<IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/1.2/demo-target-roles/configpacks

{ "configpack": { "parameters": { "appname": "app1" }, "targets": [ { "id": "f53c35c3-a6bc-4619-b4b4-ad7ab6a94ddb", "roles": ["A"] }, { "id": "c08caa1c-1011-48aa-b8c7-9aed1cd38ed0", "roles": ["A", "B"] }, { "id": "88ac90cb-a5cb-445b-8617-f83d0ef6174e", "roles": ["A", "B"] }, { "id": "bf7b0f74-7a83-4856-86f4-dcc951d3141e", "roles": ["A", "B"] }, { "id": "fa5d97ab-ca29-4adf-b451-06e7a234e3da", "roles": ["default"] } ] } }
La version officielle de ce document est en anglais. Certains contenus de la documentation Cloud Software Group ont été traduits de façon automatique à des fins pratiques uniquement. Cloud Software Group n'exerce aucun contrôle sur le contenu traduit de façon automatique, qui peut contenir des erreurs, des imprécisions ou un langage inapproprié. Aucune garantie, explicite ou implicite, n'est fournie quant à l'exactitude, la fiabilité, la pertinence ou la justesse de toute traduction effectuée depuis l'anglais d'origine vers une autre langue, ou quant à la conformité de votre produit ou service Cloud Software Group à tout contenu traduit de façon automatique, et toute garantie fournie en vertu du contrat de licence de l'utilisateur final ou des conditions d'utilisation des services applicables, ou de tout autre accord avec Cloud Software Group, quant à la conformité du produit ou service à toute documentation ne s'applique pas dans la mesure où cette documentation a été traduite de façon automatique. Cloud Software Group ne pourra être tenu responsable de tout dommage ou problème dû à l'utilisation de contenu traduit de façon automatique.
Rôles d’instance