Automatisering en scripting
Voer scripts uit, bouw workflows en automatiseer terugkerende taken op al je endpoints.
Overzicht
Met de module Automation & scripting voer je scripts uit op één, meerdere of alle endpoints, op aanvraag of volgens een planning. Of je nu tijdelijke bestanden wilt opruimen, een registerinstelling wilt afdwingen, een service wilt herstarten of eigen diagnostische gegevens wilt verzamelen: automatisering doet het, zonder dat je op elke machine op afstand moet inloggen.
Xcellerate RMM ondersteunt scripts in PowerShell, Bash, Batch (CMD) en Python. Je kunt scripts bewaren in een gedeelde bibliotheek, ze aan elkaar koppelen tot workflows met meerdere stappen en per endpoint gedetailleerde uitvoeringslogs bekijken.
Kernbegrippen
- Script: een herbruikbaar blok code in de bibliotheek, met een naam, beschrijving, taal en optionele invoerparameters.
- Script task: één uitvoering van een script op een of meer endpoints. Taken worden gelogd met de volledige stdout/stderr-uitvoer en exitcodes.
- Workflow: een geordende reeks scripts (en optionele goedkeuringsstappen) die na elkaar lopen. Mislukt een stap, dan kan de workflow ingesteld worden om te stoppen, over te slaan of opnieuw te proberen.
- Schedule: een cron-achtige herhalingsregel die aan een script of workflow gekoppeld is (bv. "elke maandag om 06:00" of "dagelijks om middernacht").
- Script parameter: een variabele placeholder (bv.
{{threshold}}) die je in het script definieert. Bij het uitvoeren of plannen vult de operator de waarde in, zonder het script zelf te moeten aanpassen.
Stap voor stap
Maak een script aan
Ga naar Automation → Script library → New script. Geef het een naam (bv. "Tijdelijke bestanden opruimen"), kies de taal, plak je code en sla op. Je kunt scripts categorietags geven, zodat ze makkelijker te vinden zijn.
Test op één endpoint
Open het script en klik op Run now. Kies één test-endpoint, vul eventuele parameters in en klik op Execute. Het uitvoerpaneel toont stdout en stderr in realtime.
Voer uit op een groep
Werkt het script, klik dan opnieuw op Run now, maar kies nu een groep in plaats van één endpoint. Xcellerate voert het script parallel uit (met instelbare gelijktijdigheid) en verzamelt de resultaten per toestel.
Plan het script
Klik op de detailpagina van het script op Add schedule. Kies een herhalingspatroon, selecteer de doelgroep en sla op. Het script loopt nu automatisch met het opgegeven interval.
Bekijk de uitvoeringsgeschiedenis
Ga naar Automation → History. Elke rij toont de scriptnaam, het doel, de start- en eindtijd, de status en een link naar de volledige uitvoer per endpoint.
Een workflow bouwen
Ga naar Automation → Workflows → New workflow. Sleep scripts uit de bibliotheek naar het workflowcanvas, in de volgorde waarin ze moeten lopen. Tussen de stappen kun je een approval gate toevoegen (een admin moet op Approve klikken voor de volgende stap start) of een condition (bv. alleen doorgaan als de vorige stap eindigde met code 0).
# Voorbeeld: een service herstarten en controleren of ze draait
Restart-Service -Name "Spooler" -Force
Start-Sleep -Seconds 5
$svc = Get-Service -Name "Spooler"
if ($svc.Status -ne "Running") { exit 1 }
exit 0Tips en goede praktijken
- Test scripts altijd eerst op één endpoint voor je ze op grote schaal uitvoert: een tikfout in een opruimscript kan veel schade aanrichten.
- Gebruik parameters om scripts herbruikbaar te maken (bv. een script "Registerwaarde instellen" met de parameters
{{key}}en{{value}}). - Stel voor elke scripttaak een timeout in. Een vastgelopen script kan de agent beletten andere taken te verwerken.
- Tag scripts consequent (bv. "onderhoud", "diagnose", "beveiliging"), zodat je team ze snel terugvindt.
- Gebruik workflows voor bewerkingen in meerdere stappen, zoals "service stoppen → configuratie aanpassen → service herstarten → werking controleren", in plaats van alles in één reusachtig script te stoppen.