GNU/Linux >> Tutoriels Linux >  >> Linux

Créez un moniteur de disponibilité pour vos sites Web avec l'outil 'Upptime' et GitHub [aucun serveur requis]

Si vous gérez des serveurs et des sites Web, vous savez à quel point il est important de savoir à temps si le site Web est en panne. Vous ne voulez pas que les temps d'arrêt affectent les vôtres ou les activités et services de votre client, n'est-ce pas ?

Il existe des moyens de surveiller les temps d'arrêt de vos sites Web. Vous pouvez configurer votre serveur avec des outils de surveillance de la disponibilité ou opter pour un service de surveillance de la disponibilité comme Better Uptime (a également un assez bon niveau gratuit).

Récemment, je suis tombé sur un moyen encore plus simple et indolore de configurer un moniteur de disponibilité. Ce projet open source génial appelé Upptime vous permet de configurer facilement votre propre moniteur de disponibilité gratuitement avec GitHub.

La meilleure partie est que vous n'installez pas d'agent ou d'outil sur votre serveur. Il est entièrement géré à l'aide des outils de GitHub.

Upptime :surveillez la disponibilité des sites Web avec GitHub

Voici ce que vous obtenez avec Upptime :

  • Surveillez n'importe quel site Web (le vôtre ou celui de quelqu'un d'autre) toutes les 5 minutes avec GitHub Actions. Il stocke également les statistiques de temps de réponse.
  • Vous pouvez configurer l'envoi d'une notification d'indisponibilité par e-mail, Slack, Telegram et des webhooks personnalisés. De cette façon, vous pouvez facilement savoir quand un site Web tombe en panne.
  • Vous pouvez éventuellement configurer une page d'état et partager l'URL avec les membres de votre équipe ou vos clients afin qu'ils puissent également visualiser les statistiques de disponibilité et l'historique des pannes.
  • Si un serveur renvoie un code de réponse autre que 200, un problème sera généré automatiquement dans le référentiel et sera visible sur l'interface statique.

Ça sonne bien, non ? Laissez-moi vous montrer les étapes pour configurer Upptime.

Configuration de Upptime pour la surveillance des temps d'arrêt

La configuration d'Upptime nécessite des connaissances techniques minimales et est totalement gratuite. Tout ce dont vous avez besoin est un compte GitHub.

Étape 1. Créer un référentiel Upptime identique

Par identique, je veux dire avoir les mêmes fichiers et la même structure de répertoires. Vous pourriez penser que vous devez maintenant bifurquer le dépôt officiel, mais ce n'est pas ça. Le référentiel officiel d'Upptime est un référentiel de modèles.

Un référentiel de modèles est un type spécial de référentiel, qui permet à d'autres de créer un référentiel similaire à partir de celui-ci (mêmes fichiers, même structure de répertoires). L'une des principales différences entre un référentiel de modèles et un fork est que lorsque vous forkez un référentiel, tous les commits précédents font désormais partie de ce référentiel forké, c'est bon pour contribuer à un projet. D'autre part, un référentiel de modèles permet à quelqu'un de démarrer un nouveau projet avec les mêmes fichiers et répertoires.

Rendez-vous sur le référentiel GitHub d'Upptime. En haut à droite, vous devriez pouvoir voir un bouton vert intitulé "Utiliser ce modèle". Clique dessus.

Donnez maintenant à ce nouveau référentiel un joli nom. Je vais nommer le mien "awesome-uptime".

Il y a une case à cocher au-dessus de "créer un référentiel à partir d'un modèle", intitulée "Inclure toutes les branches", assurez-vous de la cocher. Sinon, vous ne pourrez pas utiliser les pages GitHub pour le site Web statique affichant les statistiques.

Étape 2. Configuration

Avant de publier, il y a quelques éléments qui doivent être configurés. Certains d'entre eux peuvent ne pas être nécessaires si vous ne voulez pas d'interface Internet, ce qui est compréhensible.

Je. Ajouter GH_PAT

Par défaut, Upptime vérifie si les sites Web donnés sont actifs ou non toutes les cinq minutes, selon le résultat, il ouvre un problème (au cas où un site est en panne) ou valide les informations pertinentes telles que le statut, le temps de réponse, etc.

Pour ce faire, il a besoin d'accéder à ce référentiel. Ainsi, vous allez lui fournir l'accès en lui fournissant un jeton d'accès personnel.

Accédez aux paramètres de votre compte :

Et cliquez sur "Paramètres du développeur" dans la barre latérale de gauche.

Maintenant, encore une fois dans la barre latérale gauche, vous devriez pouvoir voir une option "Jetons d'accès personnels", cliquez dessus. L'option "Générer un nouveau jeton" s'affiche-t-elle ? Frappez-le.

Dans cette liste, sélectionnez "dépôt " et "flux de travail ". Lisez les descriptions de ces autorisations spécifiques pour comprendre pourquoi nous devons les sélectionner.

Donnez un nom à ce jeton et cliquez enfin sur "Générer un jeton". Une fois que vous pouvez voir la clé, copiez-la. N'oubliez pas que vous ne pourrez plus le voir, enregistrez-le dans un endroit sûr ou créez-en un nouveau si nécessaire ultérieurement.

Ensuite, vous devez ajouter ce jeton en tant que secret du référentiel.

Les secrets GitHub sont des variables d'environnement chiffrées disponibles pour divers workflows d'action GitHub. En termes plus simples, ces variables d'environnement sont disponibles pour les processus exécutés sous les actions GitHub.

Accédez à votre version des paramètres du référentiel Upptime.

Sélectionnez "secrets" dans la barre latérale gauche, puis cliquez sur le bouton "Nouveau secret de référentiel".

Ici pour le nom, entrez GH_PAT et dans le champ de valeur, collez le jeton. Enfin, cliquez sur le bouton "Ajouter un secret".

Vous devriez voir un écran comme celui-ci à la fin :

II. Mettre à jour .upptimerc.yml

Le fichier de configuration principal est situé à la racine du projet (maître/branche principale) et se nomme .upptimerc.yml . Il est maintenant temps de le modifier.

  • Changer la valeur de owner à votre nom d'utilisateur GitHub.
  • Modifier la valeur de repo au nom de votre référentiel. Les options ci-dessus sont nécessaires pour qu'Upptime puisse pousser les commits et ouvrir les problèmes.
  • Si vous avez un domaine personnalisé, ajoutez-le au cname variable. Sinon, comme moi, supprimez complètement la ligne.
  • Si vous n'aviez pas de domaine personnalisé, décommentez le baseUrl et remplacez la valeur par le nom de votre référentiel GitHub.
  • Modifier les sites tableau selon vos besoins. Je l'ai changé pour surveiller https://itsfoss.com, https://linuxhandbook.com et https://news.itsfoss.com.

Facultativement, vous pouvez également garder un site privé en utilisant les secrets GitHub . Pour compléter, je vais en ajouter un moi-même.

  • Ouvrez les paramètres de votre référentiel et accédez à secrets .
  • Ajoutez ici un nouveau secret, nommez-le comme vous voulez, et pour la valeur, utilisez le domaine que vous souhaitez surveiller secrètement.
  • Cliquez sur Add secret .

Une fois la création du secret terminée, modifiez le .upptimerc.yml fichier à nouveau et ajoutez le nouveau site, donnez-lui un nom et pour la valeur de l'URL, utilisez $YOUR_SECRET_NAME .

Enregistrez le fichier et poussez vers master/main.

Il existe de nombreux autres paramètres configurables dans .upptimerc.yml , consultez cet article pour plus de détails.

Étape 3. Publier la page [facultatif]

Si vous souhaitez avoir un statut affichant le frontend, cette section est pour vous.

Rendez-vous dans les paramètres de votre référentiel. Dans les Options liste des options configurables, recherchez la section intitulée GitHub Pages .

Depuis la branch menu déroulant, sélectionnez la branche nommée gh-pages et choisissez root pour le répertoire racine Web. Cliquez sur Save .

Enfin, attendez quelques instants que les actions se terminent. Vous pouvez vérifier la progression dans les Actions menu trouvé sur la page du référentiel.

Dans mon cas, les paramètres requis étaient déjà en place, c'est pourquoi j'ai reçu des notifications d'échec d'action dans ma boîte de réception. Si vous voyez une situation similaire, ignorez-la. Une fois que tout avant cette étape est correctement complété, vous cesserez de recevoir de telles notifications.

Cela devrait vous faire avancer. Pour d'autres changements de configuration, comme les paramètres de notification, veuillez vous référer à la documentation Upptime.

J'espère que cet article vous a été utile. Si vous avez des questions, n'hésitez pas à commenter ci-dessous ou à me contacter sur Twitter @debdutdeb.


Linux
  1. Créez votre stockage cloud avec ownCloud 6 sur Linux Mint 17

  2. Comment créer des captures d'écran de sites Web (html) avec PHP Script et Linux Command Line

  3. Surveiller le serveur Linux avec Prometheus et Grafana

  4. Comprendre la RAM pour votre serveur cloud

  5. Comment installer CVS et créer un référentiel CVS sur un serveur Linux

Comment créer un bureau Web complet pour votre équipe avec ONLYOFFICE

Premiers pas avec GitHub

ReaR :sauvegardez et restaurez votre serveur Linux en toute confiance

Fail2ban sur Linux :un outil de sécurité Internet et utilitaire pour l'administrateur de serveur

30 outils et services intéressants pour surveiller vos serveurs Linux

Comment créer un volume persistant pour vos déploiements de conteneurs avec Portainer