Seguro que muchos conocéis el cron de Linux que permite la ejecución de tareas de forma periódica. Existen varias alternativas disponibles. En este artículo, os vamos a hablar de una de ellas. Para ser más precisos, hablaremos de Rundeck. Una herramienta Open Source que funciona como un servidor con interfaz gráfica que permitirá la gestión de «jobs» o tareas que se podrán ejecutar de forma manual o de programada.
Aunque se trata de una herramienta que está orientada a entornos cloud, se puede instalar en cualquier sistema Linux. La principal finalidad es abstraer al usuario de ciertas tareas. Esto permite automatizar al máximo la ejecución de scripts y aumentar la producción. Si nos encontramos en entornos donde el número de servidores es elevado, puede resultar complicado estar al día en lo que se refiere a ejecución y estado de los sistemas.
El aspecto más importante de esta herramienta es que posee una interfaz web que resulta sumamente intuitiva. Desde ella se pueden configurar diferentes permisos en función del usuario. Y lo más importante, permite la creación, edición y borrado de tareas que se pueden lanzar de forma manual, cuando el usuario lo estime oportuno o bien realizar una programación.
¿Control de errores? Desde luego que sí. Rundeck será el encargado de llevar a cabo la tarea de logging, recogiendo la salida generada por las ejecuciones de los jobs.
Si no eres amigo del cron de Linux, esta es sin lugar a dudas una opción que tienes que tener en cuenta.
Más funciones de Rundeck
Ya hemos mencionado la interfaz web accesible de forma remota. Pero además de esto, también ofrece la posibilidad de controlar las ejecuciones vía SSH. Permite gestionar tareas de forma paralela, tantas como el usuario estime oportuno y con la posibilidad de configurar los nodos que se dediquen a ella.
En el aspecto de seguridad, además de las cuentas de usuarios propias e independiente de cualquier sistema, se puede integrar con un directorio activo, un aspecto importante si se pretende utilizar en empresas. Teniendo en cuenta que el software se utiliza en cloud, es compatible con herramientas de inventariado de equipos.
Aspectos a tener en cuenta
Hay que destacar sobre todo la política de control de accesos con la que cuenta esta herramienta. En función del rol asignado al usuario (bien sea propio o de LDAP) dispondrá de más o menos privilegios. Por ejemplo, podrá crear tareas, editar las de otros usuarios, llevar a cabo su eliminación o modificar la programación. Esto adquiere especial importancia cuando son conjuntos de servidores complejos que gestionados por varios usuarios.
Para organizar todos los jobs que se crean, Rundeck utiliza proyectos. Es decir, un job solo puede pertenecer a un solo proyecto. Sin embargo, un proyecto puede estar formado por varias tareas que pueden ejecutarse o no de forma simultánea.
Una ejecución podrá ser satisfactoria o fallida. En función de la programación de los scripts que forman parte de la tarea, el usuario dispondrá de una mayor o menos información que será almacenada gracias a la función de logging. Además, se almacenan de forma detallada todo el histórico de ejecuciones con las correspondiente salida, fecha de ejecución y duración de la ejecución.
Versiones disponibles para su instalación
Se trata de una herramienta que está disponible para varias distribuciones Linux. Sin ir más lejos, funciona sin problemas en Debian, Ubuntu y todos los derivados de este. Desde la página web del software podremos descargar el paquete .deb para posteriormente seguir los siguientes pasos en una terminal:
apt-get install openjdk-8-jdk
dpkg -i rundeck_2.11.1-1-GA_all.deb
También se puede instalar en versiones de RHEL, siguiendo los siguientes pasos:
yum install java-1.8.0
rpm -Uvh http://repo.rundeck.org/latest.rpm
yum install rundeck
service rundeckd start
También es posible visitar esta página para ver todas las opciones disponibles para realizar la instalación de la herramienta.
Una vez finalizado el proceso, bastará con abrir un navegador web y teclear http://localhost:4440. De esta forma accederemos al menú de configuración web de Rundeck.