Les tâches servent à exécuter des tâches à distance, à appliquer des états et à démarrer des activités Salt. L'espace de travail Tâches vous permet de créer, de configurer et d'enregistrer des paramètres de tâches à réutiliser. Les tâches sont généralement destinées aux opérations système qui doivent être automatisées et exécutées plusieurs fois pour économiser du temps de configuration.
Par exemple, vous pouvez avoir une tâche qui crée et déploie une machine virtuelle et installe un ensemble de base d’applications. Vous pouvez exécuter cette tâche chaque fois qu’une nouvelle machine virtuelle doit être déployée pour vous assurer que le même ensemble d’applications et de configurations est appliqué à chaque déploiement.
Consultez le workflow des tâches de SaltStack Config pour obtenir un aperçu de l'utilisation de l'espace de travail Tâches avec les autres espaces de travail de SaltStack Config pour créer et utiliser des tâches pour la gestion de la configuration.
Vous pouvez exécuter des tâches depuis l'espace de travail Tâches, l'espace de travail Minions ou depuis d'autres écrans de l'interface utilisateur de SaltStack Config, en fonction de la nature de la tâche. Vous pouvez également exécuter des tâches selon une planification régulière ou vous pouvez les exécuter uniquement en cas de nécessité. Généralement, les tâches qui s'exécutent uniquement en cas de nécessité sont appelées tâches ad hoc.
Pour plus d'informations sur l'exécution de tâches, consultez :
- Exécution d'une tâche pour obtenir des informations sur l'exécution de tâches dans l'espace de travail Tâches
- Minions pour obtenir des informations sur l'exécution de tâches dans l'espace de travail Minions
- Planifications pour obtenir des informations sur l'exécution de tâches selon une planification
Exigences des tâches
Chaque tâche de l'espace de travail Tâches a des paramètres prédéfinis. Vous pouvez modifier les paramètres des tâches existantes ou créer une tâche avec ses propres paramètres.
Pour qu'une tâche s'exécute, elle doit inclure :
- Une fonction (le travail à accomplir)
- Une cible, un ou plusieurs masters Salt
- Autorisations basées sur les rôles
Vous pouvez définir une cible dans les paramètres d'une tâche ou laisser la cible non définie pour sélectionner une cible à chaque exécution de la tâche. La définition de la cible d'une tâche empêche également cette tâche de s'exécuter sur des nœuds sur lesquels elle ne doit pas être exécutée. Pour plus d'informations, consultez Minions.
L'espace de travail Tâches vous permet de définir un accès basé sur des rôles à chaque tâche. En plus de définir l'accès de rôles sur la tâche, vous devez également attribuer aux rôles l'autorisation d'exécuter les tâches correspondantes dans l'éditeur de rôles. Pour plus d'informations, reportez-vous à la section Rôles et autorisations.
Vous pouvez créer des tâches et modifier des tâches existantes dans l'espace de travail Tâches. Une fois les paramètres de tâche définis, vous pouvez exécuter des tâches ad hoc ou créer des planifications pour exécuter des tâches à l'avenir. Pour plus d'informations, reportez-vous à la section Planifications.
SaltStack Config inclut un contrôle Exécuter une commande qui vous permet d'exécuter une seule commande sans définir de tâche réutilisable. Cela est utile pour exécuter des commandes rapidement ou pour exécuter des tâches ponctuelles qui ne font pas partie de votre workflow quotidien, par exemple lors d'un dépannage ou lors de la configuration initiale. Pour plus d'informations, reportez-vous à la section Exécution d'une commande.
Vous pouvez également définir les rôles qui peuvent afficher, modifier, exécuter et supprimer différentes tâches.
Accès à l'espace de travail Tâches
Pour utiliser l'espace de travail Tâches, cliquez sur Configuration > Tâches dans le menu latéral.
Création d’une tâche
Pour créer une tâche :
- Dans l'espace de travail Tâches, cliquez sur Créer une tâche.
- Entrez les détails de la nouvelle tâche. Les détails à entrer dépendent du type de tâche que vous souhaitez créer. Consultez Paramètres de la tâche pour plus d'informations.
- Cliquez sur Enregistrer. La tâche est maintenant disponible pour exécution.
Exécution d'une tâche
Pour exécuter une tâche ad hoc :
- Dans l'espace de travail Tâches, cliquez sur le menu en regard de la tâche que vous souhaitez exécuter.
- Cliquez sur Exécuter maintenant.
- Dans la fenêtre contextuelle, sélectionnez une cible d'exécution de la tâche.
Note : Si la tâche est configurée pour inclure une cible ou un master Salt, elle s'affiche pour confirmation.
- Sélectionnez des options supplémentaires si nécessaire.
- Définissez les préférences de notification.
- Sélectionnez Exécuter en tant que test (exécution de test) pour exécuter la tâche comme un test si nécessaire.
- Cliquez sur Exécuter maintenant.
Note : Vous pouvez également exécuter des tâches à partir de l’espace de travail Minions. Reportez-vous à la section Minions.
Recherche d'une tâche
Pour afficher la liste des tâches disponibles qui ont été créées jusqu'à maintenant, accédez à l'espace de travail Tâches.
Par défaut, seules 20 tâches sont affichées sur une page à la fois. Pour afficher plus de tâches, cliquez sur le menu Éléments par page en bas du tableau des tâches et sélectionnez le nombre de tâches que vous souhaitez afficher.
Pour trouver une tâche spécifique :
- Dans l'espace de travail Tâches, cliquez sur le bouton de filtre pour la colonne que vous souhaitez rechercher.
- Commencez à saisir les critères de recherche pour voir le filtre de lignes instantanément. Par exemple, vous pouvez rechercher une tâche par le module Salt impliqué dans une tâche en filtrant la colonne Fonction.
Note : Vous pouvez également cliquer sur n'importe quel nom de colonne pour trier les lignes par ordre décroissant. Cliquez de nouveau pour inverser l'ordre. Pour plus d'informations sur le filtrage, reportez-vous à la section Filtrage et tri des colonnes du tableau.
Filtrage et tri des colonnes du tableau
Vous pouvez filtrer chaque colonne en sélectionnant son icône de filtre et en sélectionnant ou en entrant vos critères de filtre. Pour effacer un filtre, cliquez sur le bouton Effacer les filtres au-dessus du tableau des tâches.
Vous pouvez également trier une colonne en sélectionnant son nom. Pour personnaliser les colonnes qui s'affichent dans le tableau, cliquez sur le bouton Afficher les colonnes dans le coin inférieur gauche du tableau.
Affichage des retours de tâche
Pour afficher les retours de tâche :
- Dans le menu latéral, cliquez sur Activité, puis sur Terminé pour voir la liste des tâches terminées.
- Sélectionnez un ID de tâche dans JID pour afficher les détails du retour de tâche. Pour plus d'informations, reportez-vous à la section Retours de tâches.
Modification d’une tâche
Pour mettre à jour ou modifier une tâche :
- Dans l'espace de travail Tâches, sélectionnez une tâche.
- Modifiez les détails de la tâche si nécessaire et cliquez sur Enregistrer lorsque vous avez terminé.
Définition des autorisations de tâche
En tant qu’administrateur, vous pouvez limiter les utilisateurs qui peuvent exécuter des tâches spécifiques. Pour définir ces autorisations :
- Dans l'espace de travail Tâches, sélectionnez une tâche pour ouvrir ses détails.
- Sur la page Détails de la tâche, cliquez sur Accès par rôle.
- Dans la boîte de dialogue, sélectionnez le niveau d'accès à activer pour différents rôles et cliquez sur Enregistrer.
- Sur la page Détails de la tâche, cliquez sur Enregistrer.
Note : En plus de définir l'accès de rôles sur la tâche, vous devez également attribuer aux rôles l'autorisation d'exécuter les tâches correspondantes dans l'éditeur de rôles. Pour plus d'informations, reportez-vous à la section Rôles et autorisations.
Paramètres de la tâche
Définissez les paramètres de tâche en fonction des options suivantes.
- Nom : entrez un nom pour la tâche. Ce nom s'affiche dans les espaces de travail Tâches, Minions et Activité, ainsi que dans l'éditeur de rôles.
- Description : entrez une description pour la tâche (facultatif). Cette description s'affiche dans la liste des tâches dans l'espace de travail Tâches.
- Commande : spécifiez la commande à exécuter en choisissant :
-
salt
: définissez une tâche à exécuter sur un groupe cible de minions. -
salt-run
: définissez une tâche à exécuter sur un master Salt ou un groupe de masters Salt.
Note : SaltStack Config inclut un contrôle Exécuter une commande qui vous permet d'exécuter une seule commande sans définir de tâche réutilisable. Cela est utile pour exécuter des commandes rapidement ou pour exécuter des tâches ponctuelles qui ne font pas partie de votre workflow quotidien, par exemple lors d'un dépannage ou lors de la configuration initiale. Pour plus d'informations, reportez-vous à la section Exécution d'une commande. -
- Cibles : une cible est le groupe de minions, dans un ou plusieurs masters Salt, auquel s'applique la commande Salt d'une tâche. Un master Salt peut également être géré comme un minion et peut être une cible s'il exécute le service de minion. Lorsque
salt
est sélectionné dans Commandes, vous pouvez éventuellement spécifier le groupe cible de minions sur lequel exécuter la tâche. Si le champ est laissé vide, vous serez invité à sélectionner une cible à chaque exécution de la tâche. - Tous les masters : le master Salt est un nœud central utilisé pour émettre des commandes aux minions. Lorsque
salt-run
est sélectionné dans Commandes, vous pouvez spécifier sur quel master Salt vous devez exécuter la tâche. Par défaut, Tous les masters est sélectionné. Si vous désactivez cette option, le menu Master s'affiche.Les tâches
salt-run
sont également appelées exécuteurs Salt. Les exécuteurs Salt sont des modules utilisés pour exécuter des fonctions pratiques sur le master Salt. Pour plus d'informations sur l'utilisation desalt-run
, reportez-vous à la section Paramètres de la tâche. - Masters Salt : lorsque
salt-run
est sélectionné dans Commandes et que Tous les masters est désactivé, le menu Master s'affiche. Cliquez sur ce menu et sélectionnez le master Salt spécifique sur lequel vous souhaitez exécuter la tâche. Vous pouvez sélectionner plusieurs masters Salt si nécessaire. - Fonction : saisissez une fonction pour définir comment se déroule l'exécution de la tâche. Vous pouvez définir un travail d’exécution à distance unique, un travail de fichier d’état ou une tâche Salt Runner. Pour obtenir la liste des fonctions Salt, reportez-vous à la section Référence du module Salt.
- Tâche d'exécution à distance : pour définir une seule tâche d'exécution à distance, incluez une fonction et tous les arguments nécessaires dans les paramètres de la tâche.
- Tâches de fichier d'état : une tâche de fichier d'état applique des états à une cible et peut être basée sur au moins une commande. Une fonction d’état est une fonction contenue dans un module d’état qui peut gérer l’application d’un état particulier à un système . Les fonctions d’état appellent fréquemment un ou plusieurs modules d’exécution pour effectuer une tâche donnée. Un état élevé applique tous les états définis dans le fichier supérieur. Vous pouvez afficher et ajouter des fichiers d’état dans le serveur de fichiers. Reportez-vous à la section Serveur de fichiers.
Pour appliquer un fichier d'état à une tâche, utilisez la fonction
state.apply
. Pour effectuer un highstate, utilisez la fonctionstate.apply
oustate.highstate
dans les paramètres de la tâche.Lorsque vous ajoutez un appel d’état à une tâche, des champs supplémentaires s’affichent dans lequel vous pouvez sélectionner les fichiers d’état que vous souhaitez appliquer. Vous pouvez également transmettre des remplacements de Pillar facultatifs au format JSON.
Note : Les données de Pillar fournies sur la page de tâche sont envoyées avec la tâche et d'autres minions authentifiés peuvent être en mesure de les voir. Pour une meilleure protection des données, attribuez plutôt les données sensibles dans un Pillar standard. Consultez Pillars.Pour plus d'informations sur les états Salt, consultez la Documentation Salt : utilisation des états Salt.
- Exécuteurs Salt : une tâche
salt-run
s'applique à un master Salt ou à un groupe de masters Salt. Les tâchessalt-run
sont également appelées exécuteurs Salt. Les exécuteurs Salt sont des modules utilisés pour exécuter des fonctions pratiques sur le master Salt. Vous pouvez utiliser les exécuteurs Salt pour exécuter une orchestration, alimenter des minions à distance, appeler des Webhooks, etc. Ils sont utiles pour exécuter des tâches de manière centralisée ou à partir d'un point de départ central. Par exemple, vous pouvez appliquer un highstate à tous les minions associés à un master Salt donné.Pour configurer une tâche d'orchestration, utilisez la fonction
state.orchestrate
. Lorsque vous ajoutez un appel d’orchestration à une tâche, des champs supplémentaires s’affichent dans lequel vous pouvez afficher les fichiers d’orchestration que vous souhaitez appliquer. Vous pouvez également transmettre des remplacements de Pillar facultatifs au format JSON.Note : Les données de Pillar fournies sur la page de tâche sont envoyées avec la tâche et d'autres minions authentifiés peuvent être en mesure de les voir. Pour une meilleure protection des données, attribuez plutôt les données sensibles dans un Pillar standard. Consultez Pillars.Pour plus d'informations sur les exécuteurs Salt, reportez-vous à la section Référence sur les exécuteurs Salt.
- Environnements : sélectionnez l'environnement dans lequel se trouve le fichier d'état ou d'orchestration. Il s'agit d'un sous-répertoire du répertoire racine dans le serveur de fichiers. Reportez-vous à la section Serveur de fichiers.
- Test (exécution de test) : exécutez une tâche de test et générez un retour de tâche simulé. Si vous sélectionnez Test, la tâche ne s'exécutera pas et aucune modification ne sera apportée. Si cette option n'est pas sélectionnée, vous pouvez choisir d'exécuter la tâche en tant que test ultérieurement lorsque vous exécutez la tâche. Le test (exécution de test) est disponible uniquement pour certaines fonctions. Pour plus d'informations, contactez votre administrateur.