Cómo configurar una herramienta de monitoreo de tiempo de actividad en Linux con Uptime Kuma

Cómo configurar una herramienta de monitoreo de tiempo de actividad en Linux con Uptime Kuma

Uptime Kuma es una herramienta de monitoreo de tiempo de actividad simple pero poderosa. Le permite realizar un seguimiento de cada servicio que aloja, ya sea en una red local o en Internet.

Este artículo le mostrará cómo instalar e implementar Uptime Kuma en una red local usando Ubuntu y Docker. También le mostraremos cómo personalizar la instancia de Uptime Kuma para enviar notificaciones de estado a Telegram.

¿Por qué utilizar Uptime Kuma?

Uptime Kuma puede rastrear y hacer ping a los servidores web, así como verificar el estado de sus contenedores Docker. Esto convierte a Uptime Kuma en el portal web todo en uno ideal para todos sus servicios de red.

Una de las mayores ventajas de Uptime Kuma es que viene con un sólido sistema de notificación de forma predeterminada. Esto significa que puede configurar su monitor de tiempo de actividad para que envíe automáticamente un mensaje a través de una variedad de canales cada vez que encuentre una anomalía.

Una captura de pantalla que muestra una instancia de Uptime Kuma en funcionamiento.

Instalación de tiempo de actividad Kuma

Obtención de Docker y Docker Compose

Primero, obtenga la clave de firma GPG para los repositorios Docker y Docker Compose:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

Cree un nuevo archivo de repositorio para Docker en «/etc/apt/sources.list.d/»

sudo nano /etc/apt/sources.list.d/docker.list

Pegue la siguiente línea de código dentro de su nuevo archivo de repositorio:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Actualice y actualice el repositorio de paquetes para su sistema Ubuntu:

sudo apt update && sudo apt upgrade

Instale el paquete Docker y Docker Compose junto con sus dependencias:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git

Asegúrese de que el usuario que está ejecutando actualmente tenga los privilegios adecuados para ejecutar Docker y Docker Compose:

sudo usermod -aG docker ramces

Obtención y construcción de Uptime Kuma

Cree un nuevo directorio para su contenedor Uptime Kuma Docker. Esto contendrá el archivo de receta para su instancia:

mkdir uptime-kuma && cd. /uptime-kuma

Una vez dentro, crea un nuevo “docker-compose.yml” usando tu editor de texto favorito:

nano. /docker-compose.yml

Pegue el siguiente bloque de código dentro de su nuevo archivo Compose:

---
version: "3.8"
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- uptime-kuma:/app/data
ports:
- 3001:3001
restart: always
volumes:
uptime-kuma: null

Cree los contenedores Docker para su nueva instancia de Uptime Kuma:

sudo docker compose up -d

Crear un proxy inverso para Uptime Kuma usando Nginx

Crearemos un proxy inverso en Nginx para que pueda acceder a Uptime Kuma en una URL de acceso público.

Cree un nuevo archivo de configuración del sitio Nginx usando su editor de texto favorito:

sudo nano /etc/nginx/sites-available/uptimekuma

Escriba el siguiente bloque de código dentro de su nuevo archivo de configuración del sitio:

server {

server_name uptime.myvpsserver.top;


location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}}

Vincule el archivo de configuración de su sitio desde la carpeta «sitios disponibles» de Nginx a su directorio «sitios habilitados»:

sudo ln -s /etc/nginx/sites-available/uptimekuma /etc/nginx/sites-enabled

Reinicie el demonio de su servidor Nginx para aplicar su nueva configuración:

sudo systemctl restart nginx

Instalación del certificado SSL

Para comenzar, debe asegurarse de que su sistema tenga el paquete central snap en funcionamiento:

sudo snap install core

Instale el complemento para el certbot de Electronic Frontier Foundation. Esta es una pequeña herramienta que puede solicitar y mantener automáticamente el certificado SSL de su proxy inverso:

sudo snap install certbot --classic

Pruebe si certbot funciona correctamente registrando su nueva instalación de certbot en la EFF:

sudo certbot register --agree-tos -m ramces@email.invalid

Solicite un nuevo certificado SSL para su nuevo proxy inverso:

sudo certbot --nginx -d uptime.myvpsserver.top

Configurar Uptime Kuma y agregar monitores

Verifique si su instalación de Uptime Kuma se está ejecutando correctamente en su proxy inverso navegando a su dirección en un navegador web.

Una captura de pantalla que muestra la página de inicio predeterminada de Uptime Kuma.

Complete el formulario con los detalles que desea para su nueva cuenta de administrador, luego haga clic en «Crear» para continuar con su instancia.

Una captura de pantalla que muestra los detalles del administrador de la nueva instancia.

Haga clic en el botón «Agregar nuevo monitor» en la esquina superior izquierda de la página.

Una captura de pantalla que resalta el

Esto abrirá una nueva subventana en la página actual donde podrá especificar el tipo de servicio que desea monitorear. Por ejemplo, cambiar el valor «Tipo de monitor» de «HTTP(S)» a «Puerto TCP» creará un monitor que comprobará si un puerto particular de la máquina está actualmente abierto.

Una captura de pantalla que muestra los diferentes tipos de monitor disponibles.

Complete los detalles de la máquina que desea monitorear.

Desplácese hasta el final de la página, luego haga clic en «Guardar» para iniciar su nuevo monitor.

Una captura de pantalla que muestra los detalles completos de un monitor de verificación de puertos simple.

Configuración de notificaciones externas para Uptime Kuma

Vaya a la página principal de su instancia de Uptime Kuma y haga clic en el icono de usuario en la esquina superior derecha de la página.

Una captura de pantalla que resalta la insignia del ícono de usuario en la esquina superior derecha de la pantalla.

Haga clic en la opción «Configuración» en el menú desplegable de la página.

Una captura de pantalla que resalta la opción Configuración en el menú contextual de la insignia de usuario.

Seleccione la categoría «Notificaciones» en la nueva subventana de la página.

Una captura de pantalla que resalta la categoría Notificaciones.

Crear un servicio de notificaciones de Telegram

Haga clic en el botón «Configurar notificación». De forma predeterminada, aparecerá una pequeña ventana donde puedes vincular y crear un bot de notificación usando tu cuenta de Telegram.

Proporcione un nombre para su nueva alerta de notificación, luego haga clic en el enlace BotFather debajo del cuadro de texto «Bot Token».

Una captura de pantalla que destaca el enlace de Telegram BotFather.

Haga clic en el botón «Enviar mensaje» en la página de Telegram de BotFather.

Una captura de pantalla que muestra el mensaje inicial para BotFather.

Esto abrirá una nueva ventana de chat donde podrás usar BotFather para crear tu bot de notificaciones. Escriba “/newbot” en el mensaje y luego presione Enter.

Proporcione un nombre para el bot que está vinculando a su instancia de Uptime Kuma.

Escriba un nombre de usuario apropiado para su nuevo robot de notificación. Tenga en cuenta que para esto, BotFather no aceptará ningún carácter especial aparte del guión bajo (_).

Haga clic en el texto que BotFather resaltó para copiarlo a su portapapeles.

Una captura de pantalla que resalta el token único de su nuevo robot de notificación.

Pruebe si su nuevo bot funciona correctamente buscando su nombre de usuario e iniciando una conversación con él.

Una captura de pantalla que muestra el historial de conversaciones iniciales con el nuevo bot.

Vuelva a su instancia de Uptime Kuma, luego pegue el token del bot privado dentro del cuadro de texto «Bot Token».

Haga clic en el botón «Obtener automáticamente» debajo del cuadro de texto «ID de chat».

Una captura de pantalla que resalta el botón Obtener automáticamente.

Desplácese hacia abajo hasta la parte inferior de la ventana de Uptime Kuma, luego haga clic en «Probar» para verificar si Uptime Kuma puede comunicarse con su nuevo bot.

Una captura de pantalla que muestra un bot Uptime Kuma Telegram en funcionamiento.

Haga clic en «Guardar» para confirmar sus cambios en Uptime Kuma.

Alojar un demonio de estado de servicio simple en Docker es solo la punta del iceberg cuando se trata de implementar servicios web en contenedores. Descubra cómo puede alojar su propia oficina en la nube con ownCloud y cómo ejecutar su propio Pastebin con Stikked .

Crédito de la imagen: Boitulmelo vía Unsplash (Fondo) Github (Logotipo). Todas las modificaciones y capturas de pantalla realizadas por Ramces Red.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *