Skip to content

soljian/monitoring-stack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Monitoring

Prérequis

  1. Serveur linux lambda
  2. Docker

Installer docker

Dans la majorité des cas, l'utilisation du script est suffisante :

curl -fsSL https://get.docker.com -o get-docker.sh
chmod +x get-docker.sh
./get-docker.sh

Ensuite, ajouter l'utilisateur courant au groupe docker afin de pouvoir utiliser les commandes :

usermod -aG docker nom_utilisateur

(Il faut se déconnecter reconnecter pour que ça soit pris en compte)

Dans le cas où ça ne suffit pas, jeter un oeil sur la documentation officiel en fonction de la distribution en question : https://docs.docker.com/engine/install/

Attention: l'installation de docker sur un PC non serveur se fera via l'installation de Docker Desktop ici https://www.docker.com/products/docker-desktop/

Installer la solution

  1. Télécharger et extraire la présente solution sur le serveur souhaité
curl -L https://github.com/soljian/monitoring-stack/archive/refs/heads/master.zip -o monitoring-stack.zip
unzip monitoring-stack.zip
  1. se rendre dans le dossier extrait
cd monitoring-stack-master
  1. Executer la commande pour lancer la stack
docker compose up -d
  1. Après quelques secondes/minutes, c'est prêt.

En cas de besoin, il est possible d'afficher les logs des outils (dans le dossier de la solution):

docker compose logs -f

Utilisation

Les adresses pour utiliser l'outil

Prometheus

http://localhost:9090/

Il s'agit de l'agrégateur de métriques.

Il permet de vérifier que les targets sont up via http://localhost:9090/targets

Il permet de tester des requêtes http://localhost:9090/query

Blackbox exporter

http://localhost:9115/

C'est l'outil qui va sonder nos sites internet.

Il n'y a pas d'intérêt de visiter cette adresse au delà de la vérification de la bonne exécution.

Grafana

http://localhost:3000/

C'est là où tout se passe. L'interface qui présente nos tableaux de bords.

La première connexion se fera via admin/admin et il sera pertinent de modifier le mot de passe à la première connexion.

Les dashboards seront explorables ici http://localhost:3000/dashboards

deux dashboards sont inclus afin de démontrer l'utilisation de l'outil. Le reste est totalement customisable.

Les alertes sont disponibles ici http://localhost:3000/alerting et permettront d'avoir l'info en direct sur un canal de communication X ou Y (à configurer).

NB : il faudra prendre le temps d'explorer, tester, itérer sur la solution, mais déjà à l'installation elle est fonctionnelle.

Configuration

La première configuration à faire est la modification des sites monitorés. Il faut modifier la config prometheus pour ce faire, notamment scrape_configs.job_name(blackbox).static_configs.targets. Par défaut l'outil monitore google.com.

La deuxième chose à configurer est le scrape interval (l'interval de temps entre l'aggregation des métriques) dans le même fichier. Ici à 5s dans global.scrape_interval

Le reste se fera dans l'interface.

Attention: en cas de modification des fichiers de configuration, la solution devra être redémarrée. Pour ce faire, la commande à executer sera la suivante.

docker compose up -d -- force-recreate

Autres commandes

Arrêter la solution

docker compose down

Supprimer les données

docker compose down -v

Redémarrer

docker compose restart

Disclaimer

Ceci est un projet de démo, utilisable en production mais pas forcément viable à 100%. Des configurations sont apportables pour rendre le tout plus efficace.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors