Automatización y scripts

Ejecuta scripts, crea flujos de trabajo y automatiza tareas repetitivas en tus puntos finales.

Descripción general

El módulo de Automatización y scripts te permite ejecutar scripts en uno, varios o todos los puntos finales, bajo demanda o de forma programada. Ya sea que necesites limpiar archivos temporales, aplicar una configuración de registro, reiniciar un servicio o recopilar datos de diagnóstico personalizados, la automatización lo hace sin que tengas que conectarte remotamente a cada máquina.

Xcellerate RMM admite scripts en PowerShell, Bash, Batch (CMD) y Python. Puedes almacenar scripts en una biblioteca compartida, encadenarlos en flujos de trabajo de varios pasos y ver los registros de ejecución detallados por punto final.

La biblioteca de scripts con búsqueda, etiquetas de categoría y botones de ejecución rápida

Conceptos clave

  • Script — un bloque de código reutilizable almacenado en la biblioteca con un nombre, descripción, lenguaje y parámetros de entrada opcionales.
  • Tarea de script — una ejecución individual de un script contra uno o más puntos finales. Las tareas se registran con la salida completa de stdout/stderr y códigos de salida.
  • Flujo de trabajo — una secuencia ordenada de scripts (y puertas de aprobación opcionales) que se ejecutan uno tras otro. Si un paso falla, el flujo de trabajo puede configurarse para detenerse, omitir o reintentar.
  • Programación — una regla de recurrencia tipo cron adjunta a un script o flujo de trabajo (p. ej. "cada lunes a las 06:00" o "diariamente a medianoche").
  • Parámetro de script — un marcador de posición variable (p. ej. {{threshold}}) que defines en el script. Al ejecutar o programar, el operador completa el valor sin necesidad de editar el script.

Guía paso a paso

1

Crea un script

Ve a Automation → Script library → New script. Dale un nombre (p. ej. "Limpiar archivos temporales"), elige el lenguaje, pega tu código y guarda. Puedes etiquetar scripts con categorías para facilitar la búsqueda.

2

Prueba en un solo punto final

Abre el script y haz clic en Run now. Selecciona un punto final de prueba, completa los parámetros y haz clic en Execute. El panel de salida transmite stdout y stderr en tiempo real.

3

Ejecuta en un grupo

Una vez que el script funcione, haz clic en Run now nuevamente pero selecciona un grupo en lugar de un solo punto final. Xcellerate ejecuta el script en paralelo (concurrencia configurable) y recopila resultados por dispositivo.

4

Programa el script

En la página de detalles del script, haz clic en Add schedule. Elige un patrón de recurrencia, selecciona el grupo objetivo y guarda. El script ahora se ejecuta automáticamente en el intervalo especificado.

5

Revisa el historial de ejecución

Ve a Automation → History. Cada fila muestra el nombre del script, el objetivo, la hora de inicio/fin, el estado y un enlace para ver la salida completa por punto final.

Historial de ejecución con salida por punto final y códigos de salida

Construir un flujo de trabajo

Navega a Automation → Workflows → New workflow. Arrastra scripts de la biblioteca al lienzo del flujo de trabajo en el orden en que deseas que se ejecuten. Entre pasos puedes agregar una puerta de aprobación (un administrador debe hacer clic en Aprobar antes de que comience el siguiente paso) o una condición (p. ej. solo continuar si el paso anterior salió con código 0).

# Ejemplo: reiniciar un servicio y verificar que está corriendo
Restart-Service -Name "Spooler" -Force
Start-Sleep -Seconds 5
$svc = Get-Service -Name "Spooler"
if ($svc.Status -ne "Running") { exit 1 }
exit 0

Consejos y mejores prácticas

  • Siempre prueba los scripts en un solo punto final antes de ejecutarlos a escala — un error tipográfico en un script de limpieza puede causar daños generalizados.
  • Usa parámetros para hacer los scripts reutilizables (p. ej. un script "Establecer valor de registro" con parámetros {{key}} y {{value}}).
  • Establece un tiempo límite en cada tarea de script. Un script bloqueado puede impedir que el agente procese otras tareas.
  • Etiqueta scripts de forma consistente (p. ej. "mantenimiento", "diagnóstico", "seguridad") para que tu equipo los encuentre rápidamente.
  • Usa flujos de trabajo para operaciones de varios pasos como "detener servicio → parchear configuración → reiniciar servicio → verificar salud" en lugar de empaquetar todo en un solo script gigante.
Los scripts se ejecutan con privilegios de nivel SYSTEM en el punto final. Revisa todos los scripts cuidadosamente antes de ejecutarlos en entornos de producción.