La définition de cibles pour vos tâches ou opérations permet d'empêcher l'opération de s'exécuter sur les nœuds qui ne devraient pas exécuter cette opération. Vous pouvez organiser vos minions à l'aide de Grains, Globs, Lists ou Compounds.

Qu'est-ce qu'une cible ?

Une cible est un groupe de minions, dans un ou plusieurs masters Salt, à qui s'applique la commande Salt d'une tâche. Les cibles peuvent contenir des minions connectés à n'importe quel master Salt de votre environnement. Un master Salt peut également être géré comme un minion et peut être une cible s'il exécute le service de minion.

Vous pouvez créer des cibles pour vos tâches dans l'espace de travail Minions. Par défaut, lorsque vous ouvrez l'espace de travail, la cible Tous les minions est active. La cible Tous les minions répertorie tous les minions auxquels vous avez accès.

Avant de commencer

Avant de créer vos cibles, vous devez penser aux groupes cibles que vous souhaitez créer. Par exemple, vous pouvez créer un groupe cible pour une zone de sécurité ou un sous-réseau unique. La manière dont vous organisez vos groupes cibles dépendra des besoins de votre organisation.

Création d'une cible

Chaque cible dans SaltStack Config nécessite un nom, un master Salt et des critères cibles. Pour définir une nouvelle cible incluant un ou plusieurs minions :

  1. Dans l'espace de travail Minions, cliquez sur Tous les minions dans le panneau latéral Cibles.
  2. Cliquez sur le bouton Créer une cible.
  3. Dans la boîte de dialogue Créer une cible dans le champ Nom, entrez un nom descriptif pour la nouvelle cible.
  4. Par défaut, le paramètre Tous les masters est activé, ce qui signifie que les minions gérés par un master Salt peuvent être inclus dans la cible. Cliquez sur ce bouton pour appliquer cette cible uniquement à un sous-ensemble de minions associés à un ou plusieurs masters Salt.

    Si vous désactivez ce paramètre, un menu s'affiche que vous pouvez utiliser pour sélectionner le ou les masters Salt auxquels appliquer la cible. Pour plus d'informations, reportez-vous à la section Paramètres de la cible.

  5. Cliquez sur le menu Grain et sélectionnez le type de cible à utiliser. Vous pouvez cibler des minions à l'aide de Grains, Globs, Lists ou Compounds. Pour plus d'informations sur ces options de ciblage, reportez-vous à la section Paramètres de la cible. Pour plus d'informations générales sur les cibles Salt, reportez-vous à la section Ciblage de minions.
  6. Différents paramètres et critères cibles sont disponibles en fonction du type de cible que vous avez sélectionné à l’étape précédente. Pour plus d'informations sur ces paramètres, reportez-vous à la section Paramètres de la cible.
    Note : Si vous sélectionnez Compound comme premier critère, vous devez suivre la syntaxe de ciblage incluse dans la Référence de ciblage Salt et vous devez inclure tous les critères secondaires dans la définition de cible de composé. SaltStack Config ne vous permet pas d'ajouter d'autres critères dans l'éditeur de cible. Pour plus d'informations sur le ciblage de composés, reportez-vous à la section Paramètres de la cible.
  7. Lorsque vous avez terminé, cliquez sur Enregistrer.

Votre nouvelle cible apparaît dans la liste des cibles dans l'espace de travail Minions.

Création d’une cible de liste simple

Pour créer une nouvelle cible à l'aide d'une liste simple :
  1. Dans l'espace de travail Minions, cliquez sur Tous les minions dans le panneau latéral Cibles.
  2. Cochez la case en regard des minions que vous souhaitez inclure dans la liste et cliquez sur Créer la cible.
    Note : Le filtrage ou le tri de vos minions peut être utile pour définir une liste.

    La liste sélectionnée est incluse en tant que critère.

  3. Entrez un nom cible et définissez des paramètres cibles supplémentaires. Reportez-vous à la section Paramètres de la cible.
  4. Lorsque vous avez terminé, cliquez sur Enregistrer.

Affectation d'un Pillar à une cible

Les piliers sont principalement utilisés pour stocker des secrets ou d'autres données hautement sensibles, telles que des informations d'identification de compte, des clés de chiffrement ou des mots de passe. Les Pillar sont également utiles pour stocker des données non secrètes que vous ne souhaitez pas placer directement dans vos fichiers d’état, telles que les données de configuration. Pour attribuer des données de Pillar à une cible de minions spécifique :
  1. Dans l'espace de travail Minions, sélectionnez une cible dans le panneau latéral Cibles.
  2. Cliquez sur Plus d'actions.
  3. Dans le menu, cliquez sur Attacher un Pillar.
  4. Dans la boîte de dialogue, sélectionnez les colonnes que vous souhaitez appliquer à la cible.

    Outre la sélection d'un Pillar, sélectionnez Actualiser le Pillar pour rendre le Pillar disponible immédiatement pour la cible sélectionnée.

  5. Cliquez sur Mettre à jour la cible.
    Les données du Pillar sélectionné sont disponibles pour tous les minions de la cible.
    Note : Vous pouvez également attribuer un Pillar à une cible dans l'espace de travail Pillars. Pour plus d'informations, reportez-vous à la section Création de fichiers d'état et de données de Pillar.

Paramètres de la cible

Le ciblage dans SaltStack Config est semblable au ciblage dans Open Source Salt, mais SaltStack Config dispose d'une interface simplifiée pour la définition des cibles, qui vous permet également d'enregistrer les définitions de cibles réutilisables. Pour plus d'informations sur le ciblage dans Salt, reportez-vous à la section Référence sur le ciblage Salt.

Chaque cible dans SaltStack Config inclut un nom, un master Salt et des critères cibles, décrits en détails ci-dessous.

Paramètre Description
Nom

Entrez un nom de cible. Les noms de cibles ne doivent pas nécessairement être uniques. Cela peut entraîner l'affichage de différents éléments sous le même nom dans l'interface utilisateur de SaltStack Config.

Tous les masters Salt

Par défaut, la cible inclut tous les masters Salt. Cependant, vous pouvez choisir de cibler des minions qui appartiennent uniquement à un master Salt spécifique.

Par exemple, si votre environnement comporte plusieurs nœuds responsables de l'exécution d'une application particulière et que vous avez partitionné votre infrastructure Salt afin que ces machines soient toutes connectées à un seul master Salt, vous pouvez créer une cible qui inclut l'intégralité des sous-ensembles de minions en sélectionnant uniquement le master Salt.

Pour activer la cible par le master Salt, cliquez sur ce bouton radio pour désactiver ce paramètre. Un nouveau groupe de paramètres s'affiche.

Sous le champ Master, sélectionnez un master Salt dont vous souhaitez cibler les minions. Tous les critères cibles supplémentaires sont appliqués uniquement au sous-ensemble de minions associés au master Salt sélectionné.

Critères cibles

Les cibles sont dynamiques et de nouveaux minions sont automatiquement ajoutés à toute définition de cible correspondante. Si vous ne souhaitez pas inclure de nouveaux minions qui pourraient correspondre à la cible dynamique dans le futur, enregistrez votre cible sous la forme d'une liste.

Vous pouvez utiliser des critères cibles pour spécifier un groupe de minions en vous référant aux descriptions de champs suivantes.

Type de cible Description
Grain

Faire correspondre une valeur de grain spécifique, par exemple osfullname est Debian. Une fois que vous avez sélectionné un grain, la liste de valeurs se préremplit pour que vous puissiez cliquer sur le champ afin d'afficher les options disponibles ou de commencer à entrer une valeur.

Lors de la création de cibles de composés à l'aide de grains, RaaS ne retourne aucun minion si le nom du grain inclut un espace. Pour cette raison, tout espace est automatiquement converti en ?.

Glob Correspondance de caractère générique à l'aide de l'ID du minion. Par exemple, vous pouvez entrer webserver* pour sélectionner plusieurs minions, nommés webserver01, webserver02 et webserver03.
List

Spécifiez une liste de sérions à inclure dans la cible. Par exemple, dc3-north-db1,dc3-north-db2.

La spécification d'une liste est utile si vous ne souhaitez pas accorder dynamiquement l'accès aux cibles. Cela empêche l'ajout automatique à une cible de nouveaux minions correspondant aux critères dynamiques de la cible.

Compound

Combinez plusieurs interfaces cibles, séparées par des conjonctions et, ou non.

Si vous sélectionnez Compound comme premier critère, vous devez suivre la syntaxe de ciblage incluse dans la Référence de ciblage Salt et vous devez inclure tous les critères secondaires dans la définition de cible de composé. SaltStack Config ne vous permet pas d'ajouter d'autres critères dans l'éditeur de cible. Pour plus d'informations sur le ciblage de composés, reportez-vous à la section Paramètres de la cible.

Meilleures pratiques pour la création de cibles

Créer des règles cibles simples

Bien qu'il n'y ait pas de limite au nombre de cibles que vous pouvez créer dans SaltStack Config, essayez de créer les règles de ciblage les plus simples qui englobent toutes les machines sur lesquelles vous devez effectuer une action.

Identifier les cas d'utilisation requis

Avant de créer des cibles pour vos tâches, commencez par créer une liste de cas d'utilisation pour vous aider à déterminer les types de cible à utiliser. Par exemple, pour l'application de correctifs, vous pouvez utiliser des grains pour cibler un système d'exploitation spécifique. Le tableau suivant contient des exemples de groupes cibles, de cas d'utilisation courants et de types de cible recommandés.
Groupe cible Cas d'utilisation Type de cible
Système d'exploitation
  • Application de correctifs
  • Détection ou diagnostics
  • Conformité aux normes
Grain
Cluster d'applications
  • Installation de l'application
  • Conformité dirigée
  • Application de correctifs sélective
  • Gestion de la configuration et détection ou correction de dérives
Glob ou List
Centre de données, sous-réseau, zone de disponibilité ou autre segment de réseau
  • Conformité
  • Configuration réseau ou régionale
Glob ou grain personnalisé
Méthode personnalisée
  • Modules approuvés ou interdits
  • Gestion des utilisateurs basée sur la présence ou l'absence d'applications installées
  • Comptes d'utilisateurs
Grain personnalisé

Étapes suivantes

Après avoir créé les cibles dont vous avez besoin, vous pouvez créer des tâches qui exécuteront des tâches et des processus sur les minions ciblés. Pour plus d'informations, reportez-vous à la section Création de tâches.