L'une des principales raisons pour lesquelles souhaiterez éventuellement utiliser SaltStack Config est l'amélioration de la gestion de la configuration de votre système. Vous pouvez utiliser des tâches dans SaltStack Config pour simplifier et automatiser les tâches et procédures courantes que vous ou votre équipe effectuez régulièrement. L’utilisation de tâches pour la gestion de la configuration réduit le temps que votre équipe passe manuellement à installer, configurer, surveiller et gérer les nodes dans votre système. Il garantit également que votre système est toujours dans l'état cohérent souhaité.

La création et l'exécution de tâches est un processus en plusieurs étapes qui nécessite l'utilisation de différents outils et espaces de travail dans SaltStack Config. Le diagramme suivant fournit une vue d'ensemble du workflow global de la tâche :


Diagramme expliquant le workflow des tâches sous forme d'organigramme

Chaque étape est décrite dans les sections suivantes :

Créer des cibles

Avant de pouvoir commencer à lancer des tâches, vous devez créer et définir des cibles. Une cible est le groupe de minions, dans un ou plusieurs contrôleurs Salt, auquel s'applique la commande Salt d'une tâche. Un contrôleur Salt peut également être géré comme un minion et peut être une cible s'il exécute le service de minion. En d'autres termes, une cible détermine le ou les nœuds sur lesquels la tâche s'exécutera. Vous pouvez créer des cibles à l’aide d’une liste simple de minions ou vous pouvez créer des cibles plus complexes en fonction des propriétés de base de vos minions, telles que leur système d’exploitation ou leur type de serveur.

Vous allez créer des cibles à l'aide de l'espace de travail Minions. Pour plus d'informations, consultez Minions.

Créer des tâches

Pour exécuter une tâche, vous devez d'abord la créer. Les tâches servent à exécuter des tâches à distance, à appliquer des états et à démarrer des activités Salt. En d'autres termes, la tâche détermine quelles tâches, quels processus ou quels fichiers d'état doivent être appliqués à un ou plusieurs nœuds ciblés.

Même si vous pouvez simplement exécuter des commandes sur vos minions à chaque fois que vous avez besoin d'exécuter une tâche spécifique, il est préférable de créer une tâche pour enregistrer les processus ou les états exacts qui doivent être appliqués à vos minions. Les tâches vous assurent d'appliquer les procédures de manière cohérente et les enregistrent en vue d'une réutilisation ultérieure.

Lorsque vous créez une tâche, vous pouvez laisser la cible non définie afin qu'elle puisse être appliquée lorsque la tâche est exécuté ultérieurement.

Vous allez créer des tâches à l'aide de l'espace de travail Tâches. Pour plus d'informations, consultez Tâches.

Définir les rôles

Pour maintenir la sécurité de votre système, votre équipe doit uniquement avoir accès aux nœuds et aux tâches spécifiques auxquels ils ont accès. Cette approche est généralement appelée contrôle d'accès basé sur les rôles (RBAC). Le RBAC signifie que l'accès doit être limité aux ressources sur la base du rôle de la personne de votre équipe. Les membres de l'équipe ne doivent obtenir accès qu'aux ressources dont ils ont besoin pour remplir leurs responsabilités professionnelles.

Vous pouvez définir des rôles et des autorisations en natif dans SaltStack Config ou vous pouvez mapper l'accès à des cibles et des tâches au système RBAC de votre organisation, tels que des systèmes basés sur LDAP comme Active Directory ou des systèmes basés sur SAML comme Google.

Pour plus d'informations, voir :

Exécution de tâches

Avant que vous puissiez exécuter des tâches, vous devez les définir :

  • Cible
  • Fonction (commande qui doit être exécutée ou état à appliquer)
  • Autorisations (qui peut exécuter la tâche par rapport à la cible)

Une fois que vous avez défini ces paramètres, vous pouvez exécuter des tâches régulièrement ou les exécuter uniquement si nécessaire. Généralement, les tâches qui s'exécutent uniquement en cas de nécessité sont appelées tâches ad hoc.

Créer une planification

Vous pouvez planifier des tâches à exécuter à une heure spécifique (telle qu’une fenêtre de maintenance programmée) ou à des intervalles réguliers.

Vous allez créer des planifications à l'aide de l'espace de travail Planifications. Pour plus d'informations, reportez-vous à la section Planifications.

Exécuter des tâches ad hoc

Vous pouvez exécuter des tâches ad hoc à l'aide de l'espace de travail Minions ou de l'espace de travail Tâches.

Pour plus d'informations, voir :

Examiner l'état et la sortie de la tâche

Lorsque la tâche est en cours d'exécution ou après son achèvement, vous pouvez examiner son état et sa sortie détaillée à l'aide de l'espace de travail Activité. Pour plus d'informations, consultez Activité.