Il existe déjà des tonnes de solutions pour monitorer de manière précise et exhaustif des infrastructures lourdes. Ici Uptime-kuma permet de monitorer facilement de petite installation. Mais il est aussi très intéressant pour les grandes installations grâce à sa vue « status » qui peut afficher une vue plus claire et lisible pour le business. Il est possible d’indiquer des incidents ou planification de maintenance sur cette page de statut, afin de tenir au courant les personnes concernées de manière transparente. Un peu comme le fait OVH sur sa page de statuts.
Cela vous permet d’avoir une alternative à uptimerobot mais sous votre contrôle! Cela permet d’avoir des tests depuis un serveur interne, mais vous pouvez très bien avoir un vps 1vcpu/1Go avec uniquement votre traefik et votre uptime-kuma dans votre docker!
Docker Uptime-kuma
Le fichier de docker-compose.yml d’Uptime-kuma est très lisible. Je vous joins le lien direct du docker-hub. Ce docker-compose est à utiliser avec votre proxy Traefik, mais vous pouvez très bien utiliser simplement un port mapping vers le port 80.
version: "3.7"
services:
uptime:
image: "louislam/uptime-kuma:latest"
container_name: uptime
volumes:
- $PWD/data:/app/data
networks:
- proxy-net
restart: unless-stopped
labels:
- traefik.http.routers.uptime.rule=Host(`uptime.domain.tld`)
- traefik.http.routers.uptime.tls.certresolver=le
- traefik.http.routers.uptime.entrypoints=websecure
networks:
proxy-net:
external: true
Configuration des notifications uptime-Kuma
Une vaste quantité de notification sont disponibles. Dans mon cas j’utilise la notification mail qui est activée par défaut pour tous les services à monitorer.
Ajouter un nouveau Monitor
Comme pour le mal, j’ai configuré un plugin Pushbullet / Telegram que je mets manuellement sur les services plus critiques. Simplement en activant dans les notifications du service à sa création :
Ici c’est un service de type HTTPS mais qui vérifie également le contenu du site et si un mot clé est bien présent. C’est pratique! Se baser sur un code retour 200 uniquement n’est pas suffisant.
On peut mettre un Heartbeat toutes les 5min, définir un notre d’essai avant d’être en erreur et aussi spécifier un interval plus rapproché Heartbeat Retry Interval
en cas d’essai raté.
Une fonction assez simpa est l’utilisation de tag comme vous pouvez le voir sur la liste de gauche :
Page de status
Une fois nos service ajoutés, on peut les organiser par groupes sur une page de status accessible publiquement, avec l’état de nos services :
Cela permet également d’avoir des notes de maintenance ou indiquer un incident :
Simple à configurer et tellement d’avantages!
Laisser un commentaire