La automatización de scripts permite a los profesionales de TI utilizar software de automatización para aprovechar los scripts en un marco gestionado para optimizar diversas tareas mundanas. Dado que la automatización es la clave para dirigir un departamento de TI rápido y con capacidad de respuesta, los scripts son esenciales para cualquier arsenal de administración de redes.
La amplia disponibilidad de scripts prediseñados facilita aún más esta tarea al utilizar un sofisticado desarrollo de automatización para eliminar la necesidad de escribir y gestionar el código, reduciendo significativamente los costes y los plazos de desarrollo.
De qué va a tratar este artículo:
- ¿Qué son los scripts de automatización y cómo ahorran tiempo?
- La naturaleza de la automatización informática y los scripts
- Diferencias entre los lenguajes de scripting
- Herramientas y scripts RMM
- Comunidades de scripts y bibliotecas de scripts
Ahorro de tiempo con scripts de automatización
Los archivos por lotes y las secuencias de comandos se han utilizado durante mucho tiempo para automatizar procesos orientados a tareas en todo tipo de entornos informáticos. Por ejemplo, las secuencias de comandos se elaboran para automatizar tareas rutinarias como la copia de seguridad/limpieza de registros de eventos, las tareas cotidianas de red, la supervisión del rendimiento del sistema y la elaboración de informes, y los cambios en el registro. La automatización de scripts también puede ayudar a gestionar las cuentas de usuario, las cuentas de las estaciones de trabajo, las aplicaciones y los servicios. Los equipos de TI suelen emplear a programadores altamente cualificados para escribir y mantener estas secuencias de comandos, que automatizan tareas que de otro modo se realizarían manualmente. Aun así, muchos profesionales de TI internos y administradores de sistemas en solitario se encargan de la automatización de scripts.
La transición de la ejecución manual a la automatización mediante scripts supuso un verdadero cambio de paradigma en la gestión de redes. Los niveles C y los ejecutivos de TI que buscaban reducir la redundancia en la ejecución, estandarizar las tareas cotidianas, recortar los costes, utilizar mejor los recursos humanos y racionalizar los procesos vieron en la automatización la herramienta más poderosa disponible.
Incluso ahora, la automatización de scripts sigue evolucionando. Dado que los scripts carecen de parámetros programáticos intuitivos que se adapten a las condiciones cambiantes, los desarrollos en la automatización de procesos robóticos, la optimización y la programación están añadiendo nuevas capas a la revolución de la automatización informática. Si bien esto puede hacer que algún día el proceso de escribir scripts quede obsoleto, actualmente es una habilidad valiosa y poderosa que cualquier profesional de TI debe cultivar.
La naturaleza de los scripts
Es esencial conocer los propósitos y las limitaciones de los scripts. El scripting es, ante todo, un enfoque basado en las deficiencias para abordar los problemas y automatizar las tareas. Sin embargo, al carecer de intuición o percepción real, los scripts no pueden ser una herramienta de solución de problemas, mantenimiento o desarrollo sistemáticos. En otras palabras, estamos muy lejos de que los guiones sustituyan los conocimientos y la capacidad de respuesta de un profesional de la informática vivo y coleando.
Las tecnologías de secuencias de comandos -por ejemplo, VBScript, Batch, PowerShell, Python, PHP, Perl y Javascript- funcionan como herramientas útiles para automatizar las tareas de red y permitir el desarrollo y el lanzamiento de aplicaciones. Los scripts pueden automatizar trabajos simples que ejecutan comandos comunes del sistema operativo. Los usuarios avanzados también pueden abordar procesos más complejos, como la generación y el envío automático de informes, la agrupación de cambios de privilegios de cuentas, la realización de copias de seguridad externas o la actualización de información en una base de datos.
Los administradores de TI suelen utilizar las secuencias de comandos como primer paso para optimizar y alinear sus recursos para maximizar el tiempo de sus ingenieros y minimizar las horas de trabajo desperdiciadas. Aunque algunos guiones son estratégicos, a menudo se escriben sobre la marcha para abordar los “problemas del día” de forma táctica. Esto forma parte de la naturaleza de “control de daños” del trabajo de TI que a menudo surge.
Nota sobre los diferentes lenguajes de scripting
Con una variedad tan amplia de lenguajes de scripting disponibles, los usuarios a menudo se preguntan cuál es el mejor para aprender e implementar. En realidad, algunos lenguajes son más adecuados para tareas específicas que otros, por lo que su caso de uso influirá en gran medida en su elección.
En general, los scripts como Python y PHP se utilizan para el desarrollo de software, la creación de sitios web y la gestión de datos, y a menudo requieren un nivel avanzado de conocimientos para su uso.
La mayoría de los administradores de TI recurrirán a lenguajes de script como PowerShell y Batch, que son relativamente fáciles de usar en un entorno de red. Se pueden encontrar scripts en estos lenguajes en línea o creados para tareas como deshabilitar actualizaciones, cerrar puertos, limpiar cachés o ejecutar informes, todas ellas funciones habituales para los equipos de TI y los MSP, pero que también consumen mucho tiempo cuando deben realizarse a escala.
Scripts de automatización en una herramienta RMM
Uno de los lugares más comunes -y útiles- para que un administrador de red utilice scripts de automatización es dentro de su herramienta RMM. Por eso es crucial elegir una solución de supervisión y gestión remota que le permita crear y ejecutar scripts fácilmente desde su plataforma centralizada.
Busque una solución de RMM que admita una amplia variedad de lenguajes de scripting, en particular los críticos para los administradores de red como se mencionó anteriormente (PowerShell y Batch), que le permitan importar scripts a su entorno y codificarlos desde cero.
La capacidad de importar scripts es tremenda para los MSP y los grandes equipos de TI. Muy pocos profesionales de TI deberían sentarse y programar sus propias automatizaciones desde el principio, ya que hay muchos scripts prefabricados disponibles, siempre y cuando se puedan importar.
La mayoría de las herramientas de RMM de gama alta tendrán una biblioteca de scripts incorporada con un completo arsenal de scripts de automatización listos para que los usuarios los importen e implementen. Además, existen comunidades enteras en torno a la idea de crear y compartir guiones entre compañeros. Por ejemplo, los usuarios de NinjaOne tienen a su disposición cientos de scripts prediseñados, todos construidos por la comunidad (que no incluye los scripts de la biblioteca de NinjaOne).
Ejemplos de scripts de RMM
Nuestro amigo Kelvin Tegelaar, bloguero de tecnología en CyberDrain.com y asiduo al MSP Live Chat, es un importante colaborador de estos scripts de la comunidad. Kelvin ya ha compartido docenas de magníficos scripts de PowerShell tanto en las bibliotecas de scripts como en las páginas de su blog.
Algunos ejemplos de scripts PowerShell que se pueden encontrar en CyberDrain incluyen:
- Monitorización de la salud de la batería – Un valioso script para reportar información sobre las baterías de los dispositivos, incluyendo la cantidad de energía que deben tener y el nivel en que está cargada.
- Detección de archivos Log4J – Ejecutando este script en la mayoría de los sistemas RMM, puede ver rápidamente una visión general de los lugares en los que podría tener log4j activo, lo que es útil cuando se buscan archivos que podrían estar afectados por el problema Log4J en CVE-2021-44228.
- Desactivar el consentimiento de la aplicación en todos los in quilinos – Este script evita el módulo MSOL depreciado para permitir la desactivación del consentimiento de la aplicación para todos sus inquilinos.
- Activación de MFA con Web-Sign In para dispositivos Windows – La implementación escalable de esta función de Windows requiere que el usuario esté en línea y utilice MFA para iniciar sesión en su dispositivo Windows.
Estos son sólo algunos ejemplos de las muchas cosas que se pueden hacer con los scripts de automatización. Por ejemplo, hay muchos más en el sitio de Kelvin, así que asegúrese de revisar CyberDrain.com para más scripts de PowerShell para usar en NinjaOne u otras herramientas.
La automatización es la columna vertebral de los entornos informáticos modernos
Los administradores de TI se ven constantemente presionados para hacer más con menos recursos, menos tiempo y presupuestos reducidos; en muchos sentidos, ésta es la naturaleza de la profesión. Los profesionales de la informática siempre buscan formas de optimizar su flujo de trabajo y aprovechar al máximo los recursos disponibles. La automatización de los pasos para la implantación de servidores y aplicaciones es una de esas herramientas, capaz de eliminar muchas tareas repetitivas de sus listas de tareas pendientes de forma fiable.
Desplegar y gestionar entornos de TI sin automatizar es un error en el entorno de TI moderno. Los scripts de automatización han pasado de ser una comodidad a una necesidad.
Afortunadamente, la creación de scripts para la automatización no es muy complicada. El uso de una herramienta RMM para crear y ejecutar scripts puede agilizar significativamente su flujo de trabajo y simplificar las operaciones de la red de TI.
Automatización de TI con NinjaOne
- La mayor cantidad de scripts fuera de la caja de cualquier proveedor de RMM
- Una comunidad fuerte y creciente con cientos de guiones compartidos
- Soporte y capacidad de importar scripts personalizados en múltiples lenguajes (Powershell, Batch, Javascript, ShellScript y VBScript)