Surveillez votre site Web et votre infrastructure d'application avec Uptime Kuma [Self-Hosted Solution]
La performance des services numériques, qu'il s'agisse de sites web ou d'applications, est aujourd'hui cruciale.
Que ce soit pour des opérations vitales ou de simples besoins personnels, les interruptions de service d'une application impactent les utilisateurs de diverses manières. Il est donc primordial de surveiller l'accessibilité de vos plateformes web ou applicatives.
De nombreux services en ligne proposent de suivre la disponibilité, mais ils ne sont pas auto-hébergeables. Si l'auto-hébergement n'est pas une priorité et que vous recherchez une solution simple pour cette surveillance, la majorité des options existantes devraient vous satisfaire.
Cependant, les solutions auto-hébergées de qualité sont moins nombreuses.
Heureusement, Uptime Kuma, un outil open source d'auto-surveillance, se présente comme une alternative prometteuse.
Nous allons explorer les fonctionnalités d'Uptime Kuma, et je vous guiderai pas à pas pour son installation et sa prise en main.
L'équipe de développement derrière Uptime Kuma a conçu ce projet dans le but de proposer une alternative auto-hébergée à "Uptime Robot".
Uptime Robot est un service de surveillance de premier plan, mais il n'est pas auto-hébergeable et sa version gratuite est limitée en termes de fonctionnalités.
Ainsi, Uptime Kuma se révèle être un substitut idéal en tant qu'outil de surveillance auto-hébergé. Examinons de plus près ses atouts.
Opter pour une solution de surveillance auto-hébergée offre plusieurs avantages, parmi lesquels:
- Un contrôle total sur vos données.
- La personnalisation des notifications.
- Des fonctionnalités étendues pour un investissement potentiellement moindre.
- L'acquisition de compétences en administrant vous-même l'outil.
- La surveillance de services internes sans les exposer à l'Internet.
Bien que les plateformes auto-hébergées exigent des compétences techniques, la maîtrise devient plus aisée avec l'expérience.
Même si c'est votre première tentative, vous pouvez aisément suivre les instructions de cet article pour installer et déployer une instance en quelques minutes.
Fonctionnalités d'Uptime Kuma
Uptime Kuma permet la surveillance de services via divers protocoles tels que HTTP/S, TCP, DNS, etc. Voici un aperçu de ses principaux atouts:
- Personnalisation de l'interface avec les modes Sombre, Clair ou Auto, adaptant l'affichage aux préférences de l'appareil.
- Définition du fuseau horaire pour un suivi précis de la disponibilité.
- Disponibilité immédiate sur la marketplace de Linode.
- Support des notifications pour de nombreuses plateformes, notamment Telegram, Discord, Signal, Rocket.Chat, Slack, Microsoft Teams, Google Chat, Matrix, etc.
- Personnalisation de la durée de conservation de l'historique de surveillance.
- Option d'optimisation/réduction de la base de données d'historique.
- Authentification à deux facteurs pour une sécurité renforcée du compte.
- Possibilité d'exporter/importer les données de surveillance et de notification.
- Page d'état dédiée.
- Tableau de ping.
- Support multilingue.
- Prise en charge des serveurs de jeu Steam.
- Application simplifiée des notifications aux nouveaux/tous les moniteurs.
Comment configurer Uptime Kuma pour la surveillance de sites web et d'infrastructures applicatives?
J'utiliserai Linode comme plateforme d'hébergement pour déployer une instance Uptime Kuma dans le cadre de cet article.
Linode offre une solution d'hébergement cloud extrêmement simple à prendre en main. Uptime Kuma y est disponible directement via sa marketplace.
Il n'est donc pas nécessaire de la configurer manuellement. Il suffit de renseigner les paramètres de configuration selon vos besoins pour avoir une instance Uptime Kuma opérationnelle en un temps record.
Laissez-moi vous guider à travers les étapes.
Étape 1. Accédez à la marketplace de Linode lors de la création d'une instance.

Étape 2. Vous devriez trouver "Uptime Kuma" dans la liste des applications. Une fois localisé, cliquez dessus.

Étape 3. Après sélection, vous accéderez aux options de configuration requises pour le bon fonctionnement :

Il est recommandé de choisir des valeurs faciles à mémoriser, ou à conserver dans un endroit sûr, notamment le mot de passe pour l'utilisateur root limité.
Vous pouvez utiliser un gestionnaire de mots de passe ou les noter ailleurs.
Si vous comptez installer Uptime Kuma sur un domaine spécifique, il est préférable d'utiliser une adresse e-mail avec le nom de domaine correspondant.
Bien que vous puissiez utiliser une autre adresse e-mail, celle du domaine est préférable pour la configuration de votre certificat SSL. Si vous n'avez pas encore configuré l'e-mail du domaine, je vous conseille de consulter les meilleurs services d'hébergement de messagerie disponibles.

Étape 4. Vous pouvez ignorer les champs relatifs au domaine si vous souhaitez réaliser des tests directement depuis Linode.
Cependant, si vous désirez configurer l'instance Uptime Kuma sur votre propre domaine, il vous faudra créer un jeton API Linode. Ce jeton est utile pour diverses raisons, comme la gestion de serveurs via un autre fournisseur cloud.
Il est indispensable pour ajouter un domaine. Pour l'accès SSH root, vous pouvez le conserver si vous souhaitez vous connecter facilement à votre serveur à distance, ou le désactiver si vous n'en avez pas l'utilité.
Étape #5. Ensuite, vous devrez choisir une image (pour votre serveur). Par défaut, il s'agira de la dernière version LTS d'Ubuntu, et malheureusement, il n'est pas possible de la modifier via la marketplace. Si vous préférez configurer votre serveur manuellement, Debian 11 peut être une alternative, car elle supporte officiellement Uptime Kuma.

Étape #6. Pour la localisation, il est préférable de sélectionner l'emplacement le plus proche pour un temps de réponse/accès optimal depuis votre emplacement.
Étape #7. Enfin, il vous faudra choisir votre plan Linode préféré pour assurer un fonctionnement fluide d'Uptime Kuma.
Bien qu'il soit possible d'opter pour le plan le plus économique, je vous conseille de choisir des ressources plus importantes si vous souhaitez suivre des éléments critiques.

Étape #8. Pour compléter la configuration, vous devrez définir un mot de passe root pour l'accès administrateur de votre serveur. Vous pouvez également configurer une clé SSH pour y accéder via SSH.
Vous avez également la possibilité de configurer un VLAN, mais cela s'adresse à un public spécifique. Il est donc important de vérifier si vous en avez l'utilité.
Étape #9. En option, vous pouvez opter pour des sauvegardes automatiques moyennant un coût supplémentaire. Bien sûr, il est possible d'exporter manuellement les données après l'installation d'Uptime Kuma, mais les sauvegardes automatisées offrent un confort appréciable. Si les informations de surveillance sont cruciales, les sauvegardes sont indispensables.
Vous pouvez maintenant créer l'instance Linode avec Uptime Kuma installé.

Comment accéder à Uptime Kuma après l'installation?
Le premier accès est simple si vous avez déjà configuré un domaine. Saisissez le nom de domaine (HTTP//:domain.com), et la page de configuration d'Uptime Kuma devrait s'afficher.
Voici un aperçu de ce à quoi cela devrait ressembler :

Une fois l'utilisateur créé, vous serez redirigé vers le tableau de bord, où vous pourrez commencer à ajouter des moniteurs pour vos sites web ou applications.

L'interface peut également apparaître en mode sombre selon les préférences de votre système.

Si vous n'avez pas configuré de domaine pour l'instance Linode, vous pouvez y accéder via l'adresse IP du serveur de votre instance au format suivant :
https://LINODESERVERIP.ip.linodeusercontent.com/
Par exemple, mon serveur de test était accessible via :
https://170-187-200-29.ip.linodeusercontent.com/add
Dans cet exemple, l'adresse IP du serveur Linode est 170.187.200.29.
Veuillez noter que cette URL n'est plus active, car j'ai supprimé l'instance après le test. De plus, l'accès à votre instance via cette adresse peut déclencher un avertissement de sécurité de votre navigateur ou de votre programme de sécurité, car elle peut être perçue comme suspecte. Vous pouvez ignorer cet avertissement et continuer la configuration d'Uptime Kuma.
Une fois le compte utilisateur configuré, vous pouvez démarrer la création de moniteurs pour votre site web ou votre application.
Comment ajouter des moniteurs à Uptime Kuma?

Pour ajouter des moniteurs, cliquez sur "Ajouter un nouveau moniteur" depuis le tableau de bord.
Les options de configuration du moniteur devraient s'afficher sur la même page, comme ci-dessous.

Sélectionnez le type de moniteur en fonction de votre besoin : surveillance d'un site web, d'un DNS, d'un serveur de jeu, d'un port TCP, etc.

Vous pouvez paramétrer les notifications si nécessaire. Voici un exemple de la configuration d'une notification Telegram via un bot :

Pour ce test, j'ai opté pour la surveillance HTTP basique afin de vérifier la disponibilité de toptips.fr. Voici mes options :
- Type de surveillance : HTTP
- URL du site web
- Intervalle de 30 secondes (Personnalisé)
Par défaut, l'intervalle est de 60 secondes, mais vous pouvez l'ajuster. Des options avancées sont également disponibles, comme l'authentification HTTP et l'accès aux pages HTTP(S) via GET, POST, HEAD, etc.
Vous pouvez spécifier l'ignorance des erreurs TLS/SSL si nécessaire.
Le nombre maximal de redirections est fixé à 10, mais il est préférable de le laisser à 0 si vous souhaitez éviter le suivi de redirection pour une page spécifique.
Une fois toutes les options et notifications paramétrées, enregistrez la configuration pour ajouter le moniteur. Après un certain temps de surveillance, vous devriez voir des informations similaires à celles-ci :

Les données incluent le temps de réponse (le plus récent), le temps de réponse moyen, le temps de disponibilité et des informations sur le certificat SSL.
Le menu propose également une page "Statut", qui donne un aperçu de tous les moniteurs et vous permet d'ajouter des notifications/messages en cas d'incidents.

La page Statut est utile pour vos utilisateurs/clients souhaitant être informés des incidents de votre infrastructure back-end. Il suffit de partager le lien de la page de statut, qui est accessible à tous sans authentification.
Le lien est généralement sous la forme HTTP://domain.com/status.
Uptime Kuma : une solution auto-hébergée fiable
Outre Linode, vous pouvez également l'installer manuellement via Docker ou une autre configuration. Vous trouverez toutes les informations nécessaires pour l'installation (utilisation d'un proxy inverse par exemple) sur la page GitHub du projet.
Uptime Kuma offre une variété de méthodes d'installation, tout en intégrant les fonctionnalités essentielles d'un outil de surveillance. Que demander de plus?
C'est un outil de surveillance idéal pour la majorité des cas d'utilisation. N'hésitez pas à l'essayer si ce n'est pas déjà fait!