Zabbix – superviser un serveur Web Nginx

Dans ce nouveau tutoriel dédié à Zabbix, je vais vous expliquer comment superviser un serveur Web sous Nginx afin d’avoir des métriques de performances.

Pour la supervision, l’agent Zabbix doit être installé sur le serveur Nginx, car nous allons l’utiliser pour collecter les statiques qui seront ensuite envoyer au serveur de supervision Zabbix.

Avant de configurer la supervision au niveau de Zabbix, il faut vérifier au niveau de Nginx que le module status est bien activé et ensuite configurer celui-ci au niveau du virtualhost.

Sur le serveur Nginx entrer la commande ci-dessous pour vérifier que le module status est présent :

nginx -V 2>&1 | grep -o with-http_stub_status_module

Si le nom du module s’affiche comme sur la capture celui-ci est installé

On va maintenant ajouter un bloc d’instruction dans le virtualhost par défaut, afin de pouvoir interroger la page de status pour avoir les statistiques.

Editer le default (/etc/nginx/sites-available/default) qui contient les informations du virtualhost par défaut de nginx.

Dans le bloc server{} ajouter le bloc location{} si dessous :

location = /basic_status {
                stub_status;
                allow 127.0.0.1;
                allow ::1;
                deny all;
}

Ce bloc permet d’afficher les statistiques de Nginx en appelant l’URL basic_status. On limite aussi l’accès seulement depuis l’IP 127.0.0.1, ce qui permet seulement un appel local, ce que l’on souhaite, car c’est l’agent zabbix qui va interroger la page.

Enregistrer le fichier, tester la configuration Nginx :

sudo nginx -t

Si le test est bon, recharger la configuration de Nginx :

sudo systemctl reload nginx

Maintenant que Nginx est configuré, nous allons passer à la configuration de l’hôte dans Zabbix.

Aller à la liste Configuration 1 et cliquer sur Hosts 2.

Cliquer sur l’hôte 1 où Nginx est installé pour accéder à la configuration de celui-ci.

Dans les templates, recherche Nginx by Zabbix agent 1, cliquer dessus pour l’ajouter.

Une fois le template sélectionné, cliquer sur Macros 1 afin que l’on configure l’url d’accès aux statistiques.

Cliquer ensuite sur Inherited and host macros 1.

Dans la liste, rechercher les macro liées à Nginx 1 et vérifier que cela correspondent avec la configuration du serveur. Une fois validée, cliquer sur le bouton Update 2 pour enregistrer.

Le template est ajouté 1.

Maintenant que nous avons configuré la supervision de Nginx avec Zabbix, je vais vous montrer les éléments que vous allez avoir

Patienter 10 à 15 minutes après l’ajout du template pour avoir des données dans Zabbix

Au niveau des éléments, on retrouve différente métriques de performances, comme l’utilisation CPU et RAM par exemple :

On a également un tableau de bord (Dashboard) de fournie avec le template qui permet de voir le nombre de connexion sur le serveur Nginx.


Vous savez maintenant comment superviser Nginx à l’aide de Zabbix afin d’avoir des métriques de performance pour votre serveur Web.