Automatisation et scripts
Exécutez des scripts, créez des workflows et automatisez les tâches répétitives sur vos terminaux.
Vue d'ensemble
Le module Automation & scripting vous permet d'exécuter des scripts sur un, plusieurs ou tous les terminaux, à la demande ou selon une planification. Qu'il s'agisse de nettoyer des fichiers temporaires, d'imposer un paramètre du registre, de redémarrer un service ou de collecter des données de diagnostic personnalisées, l'automatisation s'en charge sans que vous deviez vous connecter à distance à chaque machine.
Xcellerate RMM prend en charge les scripts PowerShell, Bash, Batch (CMD) et Python. Vous pouvez stocker les scripts dans une bibliothèque partagée, les enchaîner dans des workflows en plusieurs étapes et consulter des journaux d'exécution détaillés par terminal.
Concepts clés
- Script : un bloc de code réutilisable, stocké dans la bibliothèque avec un nom, une description, un langage et des paramètres d'entrée facultatifs.
- Tâche de script : une exécution unique d'un script sur un ou plusieurs terminaux. Les tâches sont journalisées avec la sortie stdout/stderr complète et les codes de sortie.
- Workflow : une suite ordonnée de scripts (et de points d'approbation facultatifs) exécutés l'un après l'autre. Si une étape échoue, le workflow peut être configuré pour s'arrêter, ignorer l'étape ou réessayer.
- Planification : une règle de récurrence de type cron liée à un script ou à un workflow (par exemple « chaque lundi à 06:00 » ou « tous les jours à minuit »).
- Paramètre de script : une variable de substitution (par exemple
{{threshold}}) que vous définissez dans le script. Lors de l'exécution ou de la planification, l'opérateur saisit la valeur, sans devoir modifier le script lui-même.
Pas à pas
Créer un script
Allez dans Automation → Script library → New script. Donnez-lui un nom (par exemple « Vider les fichiers temporaires »), choisissez le langage, collez votre code et enregistrez. Vous pouvez étiqueter les scripts par catégorie pour les retrouver plus facilement.
Tester sur un seul terminal
Ouvrez le script et cliquez sur Run now. Sélectionnez un terminal de test, remplissez les éventuels paramètres et cliquez sur Execute. Le panneau de sortie affiche stdout et stderr en temps réel.
Exécuter sur un groupe
Une fois le script au point, cliquez à nouveau sur Run now, mais sélectionnez un groupe plutôt qu'un seul terminal. Xcellerate exécute le script en parallèle (simultanéité configurable) et collecte les résultats par appareil.
Planifier le script
Sur la page de détail du script, cliquez sur Add schedule. Choisissez un modèle de récurrence, sélectionnez le groupe cible et enregistrez. Le script s'exécute désormais automatiquement à l'intervalle indiqué.
Consulter l'historique d'exécution
Allez dans Automation → History. Chaque ligne indique le nom du script, la cible, l'heure de début et de fin, le statut et un lien vers la sortie complète par terminal.
Créer un workflow
Allez dans Automation → Workflows → New workflow. Faites glisser des scripts de la bibliothèque vers le canevas du workflow, dans l'ordre d'exécution souhaité. Entre les étapes, vous pouvez ajouter un point d'approbation (un administrateur doit cliquer sur Approve avant que l'étape suivante ne démarre) ou une condition (par exemple ne continuer que si l'étape précédente s'est terminée avec le code 0).
# Exemple : redémarrer un service et vérifier qu'il tourne
Restart-Service -Name "Spooler" -Force
Start-Sleep -Seconds 5
$svc = Get-Service -Name "Spooler"
if ($svc.Status -ne "Running") { exit 1 }
exit 0Conseils et bonnes pratiques
- Testez toujours les scripts sur un seul terminal avant de les exécuter à grande échelle : une faute de frappe dans un script de nettoyage peut causer des dégâts à grande échelle.
- Utilisez des paramètres pour rendre les scripts réutilisables (par exemple un script « Définir une valeur du registre » avec les paramètres
{{key}}et{{value}}). - Définissez un délai d'expiration pour chaque tâche de script. Un script bloqué peut empêcher l'agent de traiter d'autres tâches.
- Étiquetez les scripts de façon cohérente (par exemple « maintenance », « diagnostic », « sécurité ») pour que votre équipe les retrouve rapidement.
- Utilisez des workflows pour les opérations en plusieurs étapes, comme « arrêter le service → modifier la configuration → redémarrer le service → vérifier l'état », plutôt que de tout regrouper dans un seul script géant.