Vous connaissez certainement UptimeRobot, qui est une solution qui permet de monitorer un ou plusieurs sites web et d'être alerté le plus rapidement possible. C'est un outil de monitoring extrêmement simple, qui surveille une URL donnée. 👀
Cependant ce service est payant, la version gratuite étant limitée à 50 URLs. C'est pour cela que je vais vous présenter à travers cet article, la solution Uptime Kuma, qui offre les mêmes features. C'est évidemment un projet open-source. ✌️
Le projet est assez jeune, mais compte 24 releases à ce jour, et près de 9k d'étoiles sur GitHub. Les fonctionnalités sont les suivantes :
- Surveillance des protocoles HTTP(s), TCP, Ping, DNS ;
- Notifications via Telegram, Discord, Slack, Rocket.Chat, Pushover, Email, etc... ;
- Surveillance des certificats SSL ;
- Mais également un thème sombre ! 🌙
La surveillance des services s'effectue sur un intervalle de 20 secondes.
Uptime Kuma s'installe sur un serveur, principalement en conteneur Docker (une version autonome est possible également). Nous allons voir dans cet article l'installation avec Docker. 🐳
Premièrement, créer un volume :
docker volume create uptime_kuma_storage
Puis créer le conteneur :
docker run -d --restart=always -p 3001:3001 -v uptime-kuma_storage:/app/data --name uptime-kuma louislam/uptime-kuma:1
Comme vous pouvez le constater sur la deuxième commande, Uptime Kuma écoute sur le port 3001.
Allez sur l'interface web (par défaut : http://localhost:3001), vous pouvez configurer une écoute distante, à travers un reverse-proxy par exemple.
Vous voici sur la page d'inscription. L'utilisateur qui sera créé sera de type administrateur. Après avoir rempli le formulaire, vous vous trouverez sur le tableau de bord par défaut :
Dans le cadre de notre article, nous allons ajouter notre site web en supervision. Pour cela, cliquez sur "Ajouter une nouvelle sonde".
Vous avez différentes options possibles, dans notre cas on restera sur celles de base (URL, protocole, intervalle de vérification...) mais vous pouvez paramétrer par exemple les codes HTTP acceptés (par défaut compris entre 200 et 299, le 404 par exemple sera considéré) comme un downtime.
Quelques secondes plus tard, le résultat est déjà affiché !
Faisons la même chose avec le DNS :
Les notifications sont paramétrables, ce qui fera l'objet d'un article prochainement.
En résumé, Uptime Kuma est un outil très simple d'utilisation, dont l'interface est intuitive, attractive, et accessible à un public non technique.
Il se concentre sur son but principal, à savoir vérifier si un service est UP ou DOWN, ni plus ni moins. On va droit à l'essentiel, et c'est très bien comme cela.
N'hésitez pas à nous contacter pour la mise en place d'un tel outil.