Comment surveiller les performances de Nginx à l’aide de Netdata sur CentOS 7
Netdata est un outil open source gratuit, évolutif, adaptatif, personnalisable, extensible et puissant de surveillance des performances et de la santé en temps réel pour les systèmes Linux, qui collecte et visualise des métriques. Il fonctionne sur les ordinateurs de bureau, les ordinateurs personnels, les serveurs, les appareils intégrés, l’IoT, etc.
Lire aussi : Comment surveiller les performances d’Apache à l’aide de Netdata sur CentOS 7
Il s’agit d’un outil de surveillance de l’état du système qui vous permet de garder un œil sur le fonctionnement de vos systèmes et applications ou services tels que les serveurs Web, ou sur les raisons pour lesquelles ils sont lents ou se comportent mal. Il est extrêmement efficace et efficient en termes d’utilisation du processeur ainsi que d’autres ressources système.
Dans cet article, nous allons expliquer comment surveiller les performances du serveur Web HTTP Nginx à l’aide de Netdata sur la distribution CentOS 7 ou RHEL 7.
À la fin de ce guide, vous serez en mesure de regarder des visualisations des connexions actives, des demandes, de l’état et du taux de connexion de votre serveur Web Nginx.
Exigences:
- Un serveur CentOS 7 ou un serveur RHEL 7 avec une installation minimale.
- Installation du serveur HTTP Nginx avec ngx_http_stub_status_module activé.
Étape 1 : Installer Nginx sur CentOS 7
1. Commencez par activer le référentiel EPEL, puis installez le serveur HTTP Nginx à partir des référentiels de logiciels EPEL à l’aide du gestionnaire de paquets YUM.
# yum install epel-release
yum install nginx
2. Ensuite, vérifiez la version de Nginx installée sur votre système, elle doit être compilée avec le module stub_status indiqué par l’argument de configuration --with-http_stub_status_module, comme indiqué dans la capture d’écran suivante.
# nginx -V
3. Après avoir installé avec succès Nginx, démarrez-le et activez-le pour qu’il démarre automatiquement au démarrage du système et assurez-vous qu’il est opérationnel.
# systemctl status nginx
systemctl enable nginx
systemctl status nginx
4. Si vous exécutez le pare-feu dynamique firewalld, vous devez ouvrir les ports 80 (HTTP) et 443 (HTTPS) sur lesquels le serveur Web écoute, pour les demandes de connexion client.
# firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
Étape 2 : Étape 2 : Activer le module Nginx Stub_Status
5. Activez maintenant stub_status module que netdata utilise pour collecter des métriques à partir de votre serveur Web Nginx.
# vim /etc/nginx/nginx.conf
Copiez et collez la configuration de l’emplacement ci-dessous dans le bloc serveur, comme indiqué dans la capture d’écran.
location /stub_status {
stub_status;
allow 127.0.0.1; #only allow requests from localhost
deny all; #deny all other hosts
}
6. Ensuite, testez la nouvelle configuration nginx pour détecter toute erreur et redémarrez le service nginx pour effectuer les modifications récentes.
# nginx -t
systemctl restart nginx
7. Ensuite, testez la page d’état nginx à l’aide de l’outil de ligne de commande curl.
# curl http://127.0.0.1/stub_status
Étape 3 : Installer Netdata sur CentOS 7
8. Il existe un script shell d’une ligne que vous pouvez utiliser pour lancer l’installation de la dernière version de netdata à partir de son dépôt github. Ce script téléchargera un autre script pour détecter votre distribution Linux et installera les packages système requis pour la construction de netdata ; récupère ensuite les derniers fichiers sources NetData ; le construit et l’installe.
Utilisez la commande ci-dessous pour lancer le script kickstarter, l’option all permet d’installer les packages requis pour tous les plugins netdata, y compris ceux pour Nginx.
# bash <(curl -Ss https://my-netdata.io/kickstart.sh) all
Si vous n’accédez pas au système en tant que root, vous serez invité à entrer votre mot de passe utilisateur pour la commande sudo, et il vous sera également demandé de confirmer certaines opérations en appuyant sur [Entrée].
8. Après la construction et l’installation de netdata, le script démarrera automatiquement le service netdata via le gestionnaire de services systemd et lui permettra de démarrer au démarrage du système. Netdata écoute sur le port 19999 par défaut.
9. Ensuite, ouvrez le port 19999 dans le pare-feu pour accéder à l’interface utilisateur Web de netdata.
# firewall-cmd --permanent --add-port=19999/tcp
firewall-cmd --reload
Étape 4 : Configurer Netdata pour surveiller les performances de Nginx
9. La configuration netdata du plugin Nginx est stockée dans le fichier de configuration /etc/netdata/python.d/nginx.conf, écrit au format YaML.
# vim /etc/netdata/python.d/nginx.conf
La configuration par défaut est suffisante pour vous permettre de commencer à surveiller votre serveur Web Nginx.
Si vous avez apporté des modifications au fichier de configuration, après avoir lu la documentation, redémarrez le service netdata pour effectuer les modifications.
# systemctl restart netdata
Étape 5 : Surveillez les performances de Nginx à l’aide de Netdata
10. Ouvrez maintenant un navigateur Web et utilisez l’URL suivante pour accéder à l’interface utilisateur Web de Netdata.
http://domain_name:19999
OR
http://SERVER_IP:19999
Dans la liste des plugins sur le côté droit, cliquez sur « nginx local » pour commencer à surveiller votre serveur web Nginx. Vous pourrez regarder des visualisations des connexions actives, des demandes, de l’état et du taux de connexion, comme illustré dans la capture d’écran suivante.
Dépôt Github Netdata : https://github.com/firehol/netdata
C’est tout! Netdata est un outil de surveillance des performances et de l’état en temps réel et distribué pour les systèmes Linux. Dans cet article, nous avons montré comment surveiller les performances du serveur Web Nginx à l’aide de netdata sur CentOS 7. Utilisez le formulaire de commentaire ci-dessous pour partager vos questions ou vos réflexions sur ce guide.






