Utilidades

Cronicle: Programador de tareas distribuido


Introducción

Cronicle es un programador de tareas distribuido diseñado para ejecutar trabajos programados o bajo demanda en múltiples servidores desde un punto central. Combina la simplicidad conceptual de cron con una interfaz web, ejecución distribuida y visibilidad completa sobre el estado de las tareas.

Su enfoque lo convierte en una alternativa moderna a crontab cuando se requiere algo más que programación local: control centralizado, estadísticas en tiempo real, logs accesibles desde la interfaz y la posibilidad de escalar la ejecución a varios nodos.

Cronicle está orientado a entornos pequeños y medianos donde se necesita fiabilidad, claridad operativa y bajo overhead, sin introducir complejidad innecesaria.


Requisitos previos

Antes de instalar Cronicle, deben cumplirse los siguientes requisitos:

  1. Sistema operativo compatible

    • Linux (Ubuntu, Debian, CentOS) o macOS
    • Arquitectura POSIX (no compatible con Windows nativo)
  2. Node.js (LTS)

    Cronicle está desarrollado en Node.js y requiere una versión LTS estable.

    curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
    sudo apt install -y nodejs
    
  3. Permisos de administrador

    • Es necesario disponer de permisos de root o sudo para la instalación y gestión del servicio.

Guía de instalación

Instalación automática

Cronicle proporciona un instalador automático que descarga la última versión estable e instala el servicio junto con sus dependencias.

curl -s https://raw.githubusercontent.com/jhuckaby/Cronicle/master/bin/install.js | node

El proceso instala Cronicle en:

/opt/cronicle/

Estructura general tras la instalación:


Configuración inicial

Accede al directorio de instalación:

cd /opt/cronicle

Ejecuta el asistente de configuración:

./bin/control.sh setup

Este proceso permite:

La configuración resultante se almacena principalmente en:

/opt/cronicle/conf/config.json

Arranque del servicio

Una vez completada la configuración inicial, inicia el servicio:

./bin/control.sh start

Puedes verificar su estado en cualquier momento con:

./bin/control.sh status

Acceso a la interfaz web

Cronicle expone una interfaz web para la gestión completa del sistema.

Se recomienda cambiar la contraseña del usuario administrador tras el primer acceso.


Gestión y administración

Todos los comandos de administración deben ejecutarse desde el directorio de instalación:

cd /opt/cronicle

Comandos habituales:

Las actualizaciones conservan la configuración y los datos existentes.


Características principales


Limitaciones conocidas

Estas limitaciones son precisamente lo que mantiene a Cronicle como una solución simple, estable y predecible.


Recursos adicionales

RCloneWeb: Configuración de una interfaz web personalizada para RClone


Introducción

RClone incluye una interfaz web propia, pero puede ser algo limitada en funcionalidades y diseño. Si buscas una alternativa más completa y amigable, puedes usar rclone-webui-angular, una interfaz web desarrollada por la comunidad que mejora notablemente la experiencia de gestión.


Características principales


Instalación y configuración

Requisitos previos

  1. Rclone instalado en tu sistema. Puedes consultar la guía oficial de instalación si no lo tienes.
  2. Acceso root o permisos sudo para configurar servicios en systemd.

Configuración del servicio systemd

Para gestionar la interfaz web de forma automática, crearemos un archivo de servicio. A continuación, se muestra el contenido del archivo con una explicación detallada:

[Unit]
Description=RClone Web GUI
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/rclone rcd --rc-web-gui --rc-user=usuario --rc-pass=password --rc-serve --rc-addr=192.168.1.3:51535 --rc-web-gui-no-open-browser --rc-web-gui-force-update --rc-web-fetch-url="https://s3.yuudi.dev/rwa/embed/version.json"
Restart=on-failure
RestartSec=10
User=usuario
Group=grupo

[Install]
WantedBy=multi-user.target

Explicación del archivo de servicio

[Unit]

[Service]

[Install]


Pasos para implementar el servicio

  1. Crear el archivo de servicio:

    sudo nano /etc/systemd/system/rclone-web.service
    

    Copia el contenido proporcionado anteriormente.

  2. Recargar la configuración de systemd:

    sudo systemctl daemon-reload
    
  3. Habilitar el servicio para inicio automático:

    sudo systemctl enable rclone-web
    
  4. Iniciar el servicio:

    sudo systemctl start rclone-web
    
  5. Verificar el estado del servicio:

    sudo systemctl status rclone-web
    

    Si todo está correcto, deberías ver un estado active (running).


Acceso a la interfaz web

Abre un navegador y dirígete a la dirección configurada en el parámetro --rc-addr. En este ejemplo:

http://192.168.1.3:51535

Usa las credenciales configuradas en los parámetros --rc-user y --rc-pass para iniciar sesión.


Notas adicionales


Referencias