Intro:

¿qué es SystemD y que nos trae para la gestión de servicios en sistemas GNU / Linux ?

Es una forma reciente de organizar programáticamente los diferentes servicios de un sistema derivado del Kernel Linux, más allá del anterior paradigma SysV-init (la cual se basaba en la orquestación del arranque de servicios mediante scripts )

En artículos anteriores hemos mencionado SystemD: no hay mejor manera de entenderlo que seguir el nacimiento y evolución del fork de Debian, Devuan GNU / Linux . y la denominada ‘initFreedom’ : Debian vs Devuan ¿rivalidad/complementariedad/dilema?

NOTA : también mostramos como (en su día) realizar el ‘fork’ manualmente, transformando un sisteme Debian en Devuan Debian, Devuan y forks GNU+ Linux

Caso práctico: Etherpad como servicio

Para el caso,

NOTA: Etherpad es una herramienta de notas compartidas y edición colaborativa basada en NodeJS/JavaScript

Vamos a ejecutar Etherpad como “systemd service” en un servidor Ubuntu (basado en Debian GNU / Linux).

Ve al directorio ‘/etc/systemd/system’ y crea un nuevo servicio file named ‘etherpad.service’.

cd /etc/systemd/system/

Copia y pega simplemente la siguiente configuración del servicio- SystemD propuesta

[Unit]
Description=Etherpad-lite, the collaborative editor.
After=syslog.target network.target

[Service]
Type=simple
User=etherpad
Group=etherpad
WorkingDirectory=/home/etherpad/etherpad-lite
Environment=NODE_ENV=production
ExecStart=/usr/bin/nodejs /home/etherpad/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js
Restart=always # use mysql plus a complete settings.json to avoid Service hold-off time over, scheduling restart.

[Install]
WantedBy=multi-user.target

Salvaguardar y salir de tu editor favorito .

Y ahora, puedes recargar/reload las ‘systemd service lists’.

sudo systemctl daemon-reload

Iniciar el servicio etherpad y habilitarlo para cada inicio del sistema / ‘system boot’.

sudo systemctl start etherpad
sudo systemctl enable etherpad

Y ahora ya dispones de etherpad ejecutándodose como servicio (tendrás que ver,previamente la instalación del mismo, claro) gestionado por SystemD.

Para chequear el estado del servicio usa los siguientes comandos

sudo systemctl status etherpad
netstat -plntu

Voilà! Hemos visto lo sencillo que resulta sistematizar la gestión de activación y el arranque de servicios con SystemD en sistemas GNU / Linux .

A disfrutar! | “have a lot of fun”!