Les balises sont des métadonnées puissantes que vous pouvez associer à des ressources et inclure dans des modèles. Vous pouvez utiliser des balises dans divers scénarios de gestion, y compris l'emplacement de la charge de travail et l'étiqueter sur les ressources.

Introduction rapide aux balises

Cette section est une introduction simple aux balises qui s'appliquent aux étapes fournies. Pour plus d'informations sur les balises, consultez Utilisation des balises pour gérer les ressources et les déploiements de Automation Assembler.

  • Balises de capacité et de contrainte

    Vous pouvez utiliser des balises pour contrôler les déploiements en fonction des capacités des ressources. Par exemple, en tant qu'administrateur de cloud, vous souhaitez que les modèles de cloud développés de manière itérative se déploient vers un pool de ressources spécifique du développement et que les modèles dignes de production se déploient sur un autre pool de ressources.

    • Les balises de capacité sont ajoutées aux ressources, en définissant leurs capacités.
    • Les balises de contrainte sont utilisées dans les modèles de cloud, en définissant les ressources que vous souhaitez que les ressources déployées consomment.
  • Balises d'étiquettes

    Pour gérer les ressources, vous pouvez ajouter des balises en tant qu'étiquettes ou descriptions d'objets. Les possibilités de gestion incluent de meilleurs résultats de recherche de ressources, une différenciation entre objets similaires, l'annotation d'objets avec des informations personnalisées, la fourniture d'informations à des systèmes tiers, la création de critères d'appartenance pour regroupement de sécurité et la garantie de cohérence entre domaines SDDC liés.

Avant de commencer

Utilisation de balises pour gérer le positionnement de la charge de travail

Cet exemple simple utilise des balises d'environnement de développement et de production pour démontrer comment utiliser des balises de capacité et de contrainte. Tout d'abord, vous ajoutez des balises de capacité sur des ressources de calcul de pool de ressources vCenter Server, puis vous incluez les balises dans le modèle de cloud. L'exemple de modèle de cloud montre comment utiliser des entrées pour laisser l'utilisateur responsable du déploiement choisir de déployer dans un pool de ressources de développement ou de production.

Pour obtenir un exemple d'utilisation des mêmes balises pour définir le placement dans un environnement multi-cloud, consultez Didacticiel : configuration et test de l'infrastructure et des déploiements multi-cloud dans Automation Assembler.

  1. Ajoutez des balises de capacité aux pools de ressources.
    1. Sélectionnez Infrastructure > Resources > Calcul.
    2. Ouvrez la zone de cloud et cliquez sur Calcul.Onglet Calcul de la zone de cloud affichant des pools de ressources sans balises.
    3. Localisez et cliquez sur le pool de ressources sur qui vous souhaitez déployer des charges de travail de développement.

      Ce didacticiel utilise les exemples de valeurs suivants. N'oubliez pas que ces valeurs ne sont que des exemples. Vos valeurs seront spécifiques à votre environnement.

      Exemple de pool de ressources Exemple de balise
      wid01-clu01 / Développement env:dev
      wid01-clu01 / Production env:prod
    4. Ajoutez la balise env.dev et cliquez sur Enregistrer.
      Boîte de dialogue que vous utilisez pour ajouter une balise. Elle inclut l'exemple de valeur env:dev.
    5. Répétez le processus pour le pool de ressources sur lequel vous souhaitez déployer des charges de travail de production et ajoutez la balise env:prod.
  2. Vérifiez que les balises de capacité ont été ajoutées aux pools de ressources de votre zone de cloud.
    1. Sélectionnez Infrastructure > Configurer > Zones de cloud.
    2. Ouvrez la zone de cloud associée au projet et cliquez Calcul.

      Dans cet exemple, la zone de cloud est Zone de cloud du compte vCenter et les balises ont été ajoutées aux deux pools de ressources, wid01-clu01 / Développement et wid01-clu01 / Production.

      Zone de cloud vCenter Server dans laquelle une zone de cloud a la balise env:dev et une autre a env:prod.
  3. Ajoutez des balises de contrainte au modèle de cloud.

    Les balises de contrainte sont utilisées pour limiter l'endroit où le modèle est déployé.

    1. Sélectionnez Conception > Modèles de cloud, puis ouvrez votre modèle.

      Pour ce didacticiel, le nom du modèle est Modèle de développement.

    2. Examinez le code YAML du modèle dans le volet Code.

      Ce code YAML constitue le point de départ de ce didacticiel.

      formatVersion: 1
      inputs: {}
      resources:
        Cloud_vSphere_Machine_1:
          type: Cloud.vSphere.Machine
          properties:
            image: centos
            flavor: medium
            networks:
              - network: '${resource.Cloud_NSX_Network_1.id}'
            attachedDisks:
              - source: '${resource.Cloud_vSphere_Disk_1.id}'
        Cloud_vSphere_Disk_1:
          type: Cloud.vSphere.Disk
          properties:
            capacityGb: 5
        Cloud_NSX_Network_1:
          type: Cloud.NSX.Network
          properties:
            networkType: existing
      
    3. Ajoutez la balise de contrainte à la ressource Cloud_vSphere_Machine_1 en utilisant ${input.placement} comme variable.
      resources:
        Cloud_vSphere_Machine_1:
          type: Cloud.vSphere.Machine
          properties:
            image: centos
            flavor: medium
            constraints: 
              - tag: '${input.placement}'
            networks:
              - network: '${resource.Cloud_NSX_Network_1.id}'
            attachedDisks:
              - source: '${resource.Cloud_vSphere_Disk_1.id}'
    4. Définissez la variable de placement dans la section Entrées.
      inputs:
        placement:
          type: string
          enum:
            - env:dev
            - env:prod
          default: env:dev
          title: Select Placement for Deployment
          description: Target Environment
    5. Vérifiez que le YAML final ressemble à l'exemple suivant.
      formatVersion: 1
      inputs:
        placement:
          type: string
          enum:
            - 'env:dev'
            - 'env:prod'
          default: 'env:dev'
          title: Select Placement for Deployment
          description: Target Environment
      resources:
        Cloud_vSphere_Machine_1:
          type: Cloud.vSphere.Machine
          properties:
            image: centos
            flavor: small
            constraints:
              - tag: '${input.placement}'
            networks:
              - network: '${resource.Cloud_NSX_Network_1.id}'
            attachedDisks:
              - source: '${resource.Cloud_vSphere_Disk_1.id}'
        Cloud_vSphere_Disk_1:
          type: Cloud.vSphere.Disk
          properties:
            capacityGb: 5
        Cloud_NSX_Network_1:
          type: Cloud.NSX.Network
          properties:
            networkType: existing
    6. Pour essayer la variable de balise par rapport aux ressources disponibles, cliquez sur Test puis sélectionnez env:dev.
      Boîte de dialogue de test avec l'entrée Sélectionner le placement pour le déploiement et la valeur env:dev.

      Répétez le test en utilisant env:prod. Lorsque les deux tests réussissent, confirmez que le modèle fonctionne en le déployant.

  4. Déployez le modèle pour tester le positionnement de la charge de travail.
    1. Dans le concepteur de modèle de cloud, cliquez sur Déployer.
    2. Entrez Développement de balises de déploiement comme Nom de déploiement, puis cliquez sur Suivant.
    3. Sélectionnez env:dev dans le menu déroulant Sélectionner placement pour le déploiement, puis cliquez sur Déployer.
  5. Vérifiez que le modèle a déployé les ressources sur le pool de ressources sélectionné.
    1. Sélectionnez Ressources > Déploiements et localisez le Développement de balises de déploiement.
    2. Ouvrez les détails de déploiement, puis cliquez sur Topologie.
    3. Cliquez sur la machine vSphere et développez les informations sur la machine dans le volet de droite.
    4. Dans la section Général, localisez Hôte de calcul et vérifiez que la valeur correspond au pool de ressources qui correspond à votre balise env:dev.

      Dans cet exemple, la valeur est wid01-clu01 / Development, ce qui illustre que la charge de travail a été déployée pour corriger le pool de ressources en fonction de la balise de contrainte sélectionnée.


      Capture d'écran de la page de topologie de déploiement avec la machine vSphere, une zone autour de l'hôte de calcul est sélectionnée dans le volet de droite.
    5. Répétez le processus de déploiement. Cette fois, sélectionnez env:prod.

Ajout de balises en tant qu'étiquettes que vous pouvez utiliser dans vCenter Server et NSX-T

Vous pouvez ajouter des balises à des déploiements que vous pouvez ensuite utiliser pour gérer des ressources.

Dans cet exemple, vous ajoutez des balises pour identifier la machine et le réseau MySQL. Vous ajoutez également une balise pour identifier le réseau Web. En raison du fonctionnement des balises sur les réseaux existants par rapport aux réseaux à la demande, vous avez deux choix.

  • Si vous utilisez le profil réseau existant que vous avez utilisé dans la section précédente, la balise NGINX:web n'est pas ajoutée aux objets existants dans NSX-T. Vous pouvez donc ignorer les étapes de vérification concernant cette balise dans NSX-T.
  • Si vous créez un profil réseau à la demande, vous pouvez mettre à jour le réseau dans le YAML pour utiliser le réseau routé/à la demande. Le réseau à la demande est utilisé dans cet exemple afin que nous puissions démontrer la balise NGINX:web sur le nouvel objet dans NSX-T.

Le YAML suivant est issu de l'exemple précédent, sauf qu'il utilise un networkType routé à la demande. Il inclut les balises de contrainte.

Ce didacticiel utilise les exemples de valeurs suivants. N'oubliez pas que ces valeurs ne sont que des exemples. Vos valeurs seront spécifiques à votre environnement.

formatVersion: 1
inputs:
  placement:
    type: string
    enum:
      - 'env:dev'
      - 'env:prod'
    default: 'env:dev'
    title: Select Placement for Deployment
    description: Target Environment
resources:
  Cloud_vSphere_Machine_1:
    type: Cloud.vSphere.Machine
    properties:
      image: centos
      flavor: small
      constraints:
        - tag: '${input.placement}'
      networks:
        - network: '${resource.Cloud_NSX_Network_1.id}'
      attachedDisks:
        - source: '${resource.Cloud_vSphere_Disk_1.id}'
  Cloud_vSphere_Disk_1:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 5
  Cloud_NSX_Network_1:
    type: Cloud.NSX.Network
    properties:
      networkType: routed
      constraints:
        - tag: 'net:od'
      
  1. Sélectionnez Conception > Modèles de cloud, puis ouvrez votre modèle.
  2. Dans Cloud_vSphere_Machine_ properties, ajoutez la balise suivante.
            tags: 
            - key: db
              value: mysql
        
  3. Ajoutez des balises de cartes réseau de machine virtuelle.
            tags: 
            - key: db
              value: mysql
  4. Ajoutez des balises commutateur logique NSX/segment.
            tags: 
            - key: NGINX
              value: web
  5. Vérifiez que le YAML ressemble à l'exemple suivant.
    formatVersion: 1
    inputs:
      placement:
        type: string
        enum:
          - 'env:dev'
          - 'env:prod'
        default: 'env:dev'
        title: Select Placement for Deployment
        description: Target Environment
    resources:
      Cloud_vSphere_Machine_1:
        type: Cloud.vSphere.Machine
        properties:
          image: centos
          flavor: small
          constraints:
            - tag: '${input.placement}'
          tags: 
            - key: db
              value: mysql
          networks:
            - network: '${resource.Cloud_NSX_Network_1.id}'
              tags: 
                - key: db
                  value: mysql
          attachedDisks:
            - source: '${resource.Cloud_vSphere_Disk_1.id}'
      Cloud_vSphere_Disk_1:
        type: Cloud.vSphere.Disk
        properties:
          capacityGb: 5
      Cloud_NSX_Network_1:
        type: Cloud.NSX.Network
        properties:
          networkType: routed
          constraints:
            - tag: 'net:od'
          tags: 
            - key: NGINX
              value: web
  6. Déployez le modèle.

    Cet exemple utilise le nom Development template w tags.

  7. Pour vérifier les balises dans le déploiement, ouvrez ce dernier et cliquez sur l'onglet Topologie.
    1. Cliquez sur la machine dans la topologie.
    2. Développez la section Général pour la machine et localisez l'étiquette Balises.

      La valeur de la balise est db:mysql.

    3. Dans la section Réseau localisez la colonne Balises réseau.

      La valeur de la balise est db:mysql.


      Onglet Topologie de déploiement avec la machine sélectionnée et les balises mises en évidence dans le volet de droite.
    4. Cliquez sur le réseau dans la topologie et développez la section Général pour localiser l'étiquette de balise.

      La valeur de la balise est NGINX:web.


      Onglet Topologie de déploiement avec le réseau sélectionné et la balise mise en évidence dans le volet de droite.
  8. Pour vérifier les balises dans vCenter Server, connectez-vous à l'instance vCenter Server sur laquelle cette charge de travail a été déployée.
    1. Localisez la machine virtuelle et localisez le volet Balises.
      Machine virtuelle dans vCenter Server avec le volet Balises mis en évidence.
  9. Pour vérifier les balises dans NSX-T, connectez-vous à l'instance de NSX-T sur laquelle ce réseau est configuré.

    Les balises réseau et les balises de machine sont ajoutées à NSX-T.

    1. Cliquez sur Stratégie dans le coin supérieur droit.
    2. Pour localiser la balise db:mysql associée à la carte réseau, recherchez mysql.
    3. Cliquez sur Ports logiques et localisez la machine vSphere déployée.
    4. Cliquez sur le nombre dans la colonne Balises.

      L'étendue et la balise sont db et mysql respectivement.


      Port logique de la machine virtuelle avec les balises mises en évidence.
    5. Pour localiser la balise NGINX:web associée au segment, recherchez le réseau.

      Dans cet exemple, le nom du réseau est Cloud_NSX_Network_1-mcm1292-163799928607.

    6. Localisez la ligne Segments et cliquez sur le nombre dans la colonne des balises.

      L'étendue et la balise sont NGINX et web respectivement.


      Segment de réseau avec les balises mises en évidence.