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.
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.
Complete el formulario con los detalles que desea para su nueva cuenta de administrador, luego haga clic en «Crear» para continuar con su instancia.
Haga clic en el botón «Agregar nuevo monitor» en la esquina superior izquierda de la página.
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.
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.
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.
Haga clic en la opción «Configuración» en el menú desplegable de la página.
Seleccione la categoría «Notificaciones» en la nueva subventana de la página.
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».
Haga clic en el botón «Enviar mensaje» en la página de Telegram de 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.
Pruebe si su nuevo bot funciona correctamente buscando su nombre de usuario e iniciando una conversación con él.
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».
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.
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