Surveillance et Logs Mettre en place une solution de monitoring pour surveiller lâĂ©tat de TaskManagerPro et collecter des mĂ©triques systĂšme et applicatives.
Module 6 : Surveillance et Logs
6.1. Monitoring avec Prometheus et Grafana
Objectif :
Mettre en place une solution de monitoring pour surveiller lâĂ©tat de TaskManagerPro.
Collecter des métriques systÚme et applicatives.
Introduction :
Le monitoring est essentiel en DevOps pour anticiper les pannes et optimiser les performances. Prometheus est un outil de collecte de métriques, et Grafana permet de les visualiser sous forme de tableaux de bord interactifs.
Installation de Prometheus :
Télécharger et installer Prometheus :
wget https://github.com/prometheus/prometheus/releases/latest/download/prometheus-linux-amd64.tar.gz
tar xvf prometheus-linux-amd64.tar.gz
cd prometheus-*
Configurer Prometheus :
Modifier le fichier prometheus.yml pour ajouter les endpoints Ă surveiller.
scrape_configs :
- job_name : 'taskmanagerpro'
static_configs :
- targets : [ 'localhost:9090' ]
Démarrer Prometheus :
./prometheus --config.file = prometheus.yml
Installation de Grafana :
Installer Grafana sur Linux :
sudo apt update
sudo apt install -y grafana
sudo systemctl enable --now grafana-server
Accéder à Grafana :
Rendez-vous sur http://<adresse_ip>:3000
Identifiants par défaut : admin / admin
Ajouter Prometheus comme source de données :
Accéder à Configuration > Data Sources
Ajouter Prometheus avec lâURL http://localhost:9090
Enregistrer et tester
Créer un tableau de bord Grafana :
Importer un dashboard prédéfini depuis Grafana.com
Ajouter un panneau personnalisĂ© affichant les requĂȘtes HTTP, lâutilisation CPU et mĂ©moire
Exercice pratique :
Configurer un tableau de bord affichant les performances de TaskManagerPro, incluant :
Temps de rĂ©ponse des requĂȘtes API
Nombre dâutilisateurs actifs
Utilisation CPU et mémoire
6.2. Gestion des Logs avec ELK Stack
Objectif :
Collecter et centraliser les logs applicatifs et systĂšme.
Faciliter lâanalyse des erreurs grĂące Ă Elasticsearch, Logstash et Kibana.
Introduction :
Le stack ELK est une solution open-source permettant de gĂ©rer et dâanalyser des logs en temps rĂ©el.
Elasticsearch : stocke et indexe les logs.
Logstash : collecte, transforme et envoie les logs.
Kibana : visualise les logs dans des tableaux de bord interactifs.
Installation de lâELK Stack :
Installer Elasticsearch :
sudo apt install -y elasticsearch
sudo systemctl enable --now elasticsearch
Installer Logstash :
sudo apt install -y logstash
Configurer Logstash pour récupérer les logs de TaskManagerPro :
Modifier /etc/logstash/conf.d/taskmanagerpro.conf :
input {
file {
path => "/var/log/taskmanagerpro.log"
start_position => "beginning"
}
}
filter {
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:timestamp} %{LOGLEVEL:level} %{GREEDYDATA:message}" }
}
}
output {
elasticsearch {
hosts => ["http://localhost:9200"]
index => "taskmanagerpro-logs"
}
}
Démarrer Logstash :
sudo systemctl start logstash
Installation de Kibana :
Installer Kibana :
sudo apt install -y kibana
sudo systemctl enable --now kibana
Accéder à Kibana :
Aller sur http://<adresse_ip>:5601
Ajouter lâindex taskmanagerpro-logs
Créer un tableau de bord pour analyser les erreurs et logs applicatifs
Exercice pratique :
Configurer ELK pour :
Collecter les logs applicatifs de TaskManagerPro
CrĂ©er des alertes en cas dâerreur critique
đ Quiz : Teste tes connaissances ! đŻ Commencer le Quiz
đ„ïž Terminal Trainer : Pratique tes commandes ! đ„ïž Lancer le Terminal