Skip to content

Pi1lot/GitlabCI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nginx metrics

Ce document vous permet de prendre en main l'automatisation et la mise en oeuvre des outils de mesure de votre application au sein d'environnements multiples.

Schéma de principe

flowchart LR
N(nginx)
G(grafana)
P(prometheus)
Np(nginx-prom-exporter)
G -- scrape --> P
P -- scrape --> Np
Np -- scrape --> N
Loading

Ansible

Dans ce TP il faudra réaliser une réécriture du script ansible, l'occasion d'intégrer ansible-lint que l'on avait oublié dans le stage build ;)

Nginx

Modifier votre image nginx afin d'activer l'exposition des metrics Nginx Cette exposisiton devra être adaptée pour être consommée par Nginx-prometheus-exporter attention aux prérequis !

:check_mark_button: L'exposition des metrics doit être opérationnelle en local au sein du container

Nginx-prometheus-exporter

A l'aide de docker compose, enrichissez votre servie nginx du service nginx-prometheus-exporter qui présentera les metrics au format prometheus

Pour cela, il sera nécessaire de créer une structure multi environnements sur votre machine cible, par exemple :

\-- nginxapp-review
    \-- feat-myfeat
        +-- compose.yaml
\-- nginxapp-integration
    +-- compose.yaml
\-- nginxapp-preproduction
    +-- compose.yaml
\-- nginxapp-production
    +-- compose.yaml

Utiliser le module template ainsi que le templating jinja2 à cet effet.

:check_mark_button: L'exposition des metrics au format prometheus doit être opérationnelle en local au sein du container

Prometheus

Créer une nouvelle image prometheus qui sera configurée pour collecter les metrics exposées par votre service Nginx-prometheus-exporter

Intégrer ce nouveau service au sein de votre compose.

:check_mark_button: L'interface prometheus doit être opérationnelle et permettre de grapher les metrics nginx.

Grafana

Intégrer le nouveau service grafana

:check_mark_button: L'interface grafana doit être opérationnelle

Intégrer le dashboard grafana pour nginx

:check_mark_button: Le dashboard vous afficher l'ensemble des metrics Nginx

Tests et mesures

Arrêter votre instance Nginx, le dashboard doit vous indiquer en quelques secondes le status down.

Stress test

Créer un shell script permettant de réaliser un stress test. Observer l'évolution des metrics.

About

For archive purposes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •