Kuvasz Uptime es una herramienta open source diseñada para monitorizar la disponibilidad y el estado de tus servicios, aplicaciones o sitios web. Su principal objetivo es ofrecer un sistema ligero, moderno y fácil de desplegar para comprobar si un servicio está en línea y notificarte en caso de caída.
A diferencia de otras soluciones más complejas de monitorización, Kuvasz Uptime apuesta por la simplicidad y la rapidez: en pocos minutos puedes ponerlo en marcha y empezar a recibir estadísticas y alertas. Además, al ser software libre, puedes adaptarlo a tus necesidades y alojarlo en tu propia infraestructura, garantizando el control total sobre tus datos y tu privacidad.
Características de Kuvasz Uptime
- 🌐 Monitorización HTTP(S): controla la disponibilidad y el rendimiento de tus sitios web y servicios mediante peticiones HTTP(S).
- 🔑 Monitorización de certificados SSL: verifica automáticamente los certificados SSL de tus servicios para asegurarte de que son válidos y no han caducado.
- 🔔 Notificaciones por monitor: configura diferentes canales de notificación para cada monitor y adapta las alertas a tus necesidades.
- 📢 Páginas de estado: crea páginas públicas o privadas para informar a tus usuarios o a tu equipo sobre el estado de los servicios.
- 🖥️ Interfaz moderna: Kuvasz cuenta con una interfaz responsive, moderna y fácil de usar para gestionar tus monitores.
- ⚙️ API REST completa: administra tus monitores, consulta su estado y más mediante una potente API.
- 📊 Exportación de métricas: exporta tus métricas a OpenTelemetry y Prometheus para una mejor observabilidad e integración con tu stack de monitorización.
- 🚀 Más en camino: Kuvasz está en desarrollo activo, y se planean nuevas funciones como monitorización ICMP, monitores de latido (heartbeat) y mucho más.
Pasos previos
Antes de comenzar con la instalación, asegúrate de cumplir con los siguientes requisitos:
- 💻 Servidor con Debian 12 como sistema operativo base.
- 🔐 Acceso SSH al servidor.
- 🧑💻 Permisos de superusuario (root) o capacidad para ejecutar comandos con
sudo.
Instalación de Docker
Para la instalación de Kuvasz Uptime utilizaremos Docker, para ello tendremos que instalar Docker en nuestro servidor:

Instalación de Kuvasz Uptime
Primero tendremos que crear los directorios necesarios para Kuvasz Uptime, para ello ejecutaremos los siguientes comandos que crearán todos los directorios dentro de /opt:
mkdir -p /opt/kuvaszuptime/data
touch /opt/kuvaszuptime/kuvasz.ymlSeguimos con la instalación, accediendo al directorio de la instalación y creando el fichero para el docker-compose.yml:
cd /opt/kuvaszuptime
touch docker-compose.yml
nano docker-compose.ymlDentro del fichero copiamos lo siguiente:
services:
kuvasz-db:
image: postgres:17-alpine
container_name: kuvaszdb
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
TZ: 'UTC'
volumes:
- /opt/kuvaszuptime/data:/var/lib/postgresql/data
kuvasz:
image: kuvaszmonitoring/kuvasz:latest
container_name: kuvasz
mem_limit: 384M # optional
ports:
- "8080:8080"
environment:
TZ: 'UTC'
DATABASE_HOST: kuvaszdb
DATABASE_USER: postgres
DATABASE_PASSWORD: postgres
ADMIN_USER: YourSuperSecretUsername # change it
ADMIN_PASSWORD: YourSuperSecretPassword # change it
ADMIN_API_KEY: ThisShouldBeVeryVerySecureToo # change it
volumes:
- /opt/kuvaszuptime/kuvasz.yml:/config/kuvasz.yml
depends_on:
- kuvasz-db
volumes:
kuvasz-db-data:ADMIN_USER, ADMIN_PASSWORD, ADMIN_API_KEY por unas contraseñas seguras.En el fichero YAML que hemos creado bajo el nombre de kuvasz.yml podemos añadir configuración necesaria, como por ejemplo la configuración de SMTP para recibir avisos:
smtp-config:
host: 'your.smtp.server'
port: 465
transport-strategy: SMTP_TLS
username: YourSMTPUsername
password: YourSMTPPasswordTienes toda la información del fichero de configuración en la documentación oficial.
Tras estos cambios, ya podemos iniciar los contenedores:
docker compose up -dY tras descargar todo, podemos visualizar que se ha instalado:
# docker ps --format "table {{.ID}} {{.Image}} {{.Status}} {{.Names}}"
CONTAINER ID IMAGE STATUS NAMES
a8fc6b28c2d3 kuvaszmonitoring/kuvasz:latest Up 1 second kuvasz
9298ca2f488f postgres:17-alpine Up 1 second kuvaszdbConfiguración de Proxy Nginx
Como la aplicación se encuentra escuchando en un puerto local (6060), necesitaremos configurar un Proxy inverso con Nginx para poder acceder a ella mediante un dominio.
Para ello, puedes seguir este tutorial donde encontrarás todos los pasos detallados:

Primer contacto con la aplicación
Una vez que hemos levantado el servidor y configurado correctamente el dominio a través de Nginx Proxy, ya podemos acceder a la aplicación desde nuestro navegador utilizando el dominio o subdominio que hayamos definido.

Iniciaremos sesión con el administrador configurado en el docker-compose.yml:

Añadimos un monitor nuevo para revisar el SSL:

Más sobre ./voidNull
- 📖 Aprende todos sobre los comandos de GNU/Linux en nuestro Diccionario "De la A a la Z: Los comandos de GNU/Linux"
- 💪 ¡Forma parte de la Comunidad de ./voidNull!
- 🤖 Disfruta de todos nuestros Cursos sobre Ansible, Proxmox, Home Assistant entre otros.
- 📩 Mantente actualizado con lo último en GNU/Linux y Software Libre. Recibe nuestra Newsletter mensual.


Comentarios