Maison >Opération et maintenance >Nginx >Comment surveiller nginx sur zabbix

Comment surveiller nginx sur zabbix

百草
百草original
2025-03-05 15:14:27165parcourir

Comment surveiller Nginx sur Zabbix?

La surveillance de Nginx avec Zabbix implique de tirer parti de l'agent de Zabbix ou d'un paramètre utilisateur pour collecter des indicateurs de performance clés (KPI). La méthode optimale dépend de vos politiques de configuration et de sécurité d'infrastructure.

En utilisant l'agent Zabbix: Il s'agit généralement de la méthode préférée et la plus robuste. Vous devrez installer l'agent Zabbix sur chaque serveur exécutant Nginx. Ensuite, vous configurerez l'agent pour collecter des données à partir de Nginx à l'aide des paramètres utilisateur. Cela implique généralement la création de scripts personnalisés ou l'utilisation d'outils existants comme nginx -V (pour les informations de version) et d'analyser la sortie de nginx -s status ou d'accéder à la page d'état de talon de Nginx. Les scripts seront exécutés périodiquement par l'agent Zabbix et les résultats envoyés au serveur Zabbix.

À l'aide des paramètres utilisateur: Cette approche évite l'accès direct aux fichiers de configuration Nginx sur les serveurs surveillés. Au lieu de cela, vous créez un paramètre utilisateur dans Zabbix, qui définit une commande à exécuter sur l'hôte distant. Cette commande pourrait être un script personnalisé (par exemple, écrit en bash, python ou perl) qui extrait les métriques Nginx pertinentes. L'avantage ici est une meilleure sécurité car le script doit être accessible à l'agent Zabbix, pas au système plus large.

En utilisant le modèle Zabbix: Zabbix propose des modèles pré-construits spécifiquement conçus pour la surveillance Nginx. Ces modèles simplifient le processus en prédéfinissant des éléments, des déclencheurs et des graphiques pour les métriques Nginx communes. L'importation et la liaison de ces modèles à vos hôtes Nginx réduisent considérablement la configuration manuelle requise.

Quelles que soient la méthode choisie, vous aurez besoin de autorisations appropriées sur les serveurs Nginx pour exécuter les commandes de surveillance. Identifier et résoudre de manière proactive les goulots d'étranglement des performances. Voici quelques mesures clés sur lesquelles se concentrer:

  • Connexions actives: Le nombre de connexions client actuellement ouvertes. Des valeurs élevées peuvent indiquer une surcharge.
  • Connexions acceptées: Le nombre total de connexions acceptées depuis le début de Nginx. Cela fournit une mesure du volume global de la demande.
  • Connexions gérées: Le nombre total de connexions qui ont été entièrement traitées. Utile pour comparer avec les connexions acceptées pour identifier les connexions supprimées.
  • Demandes: Le nombre total de demandes traitées depuis le début de Nginx. Un taux élevé de demandes peut indiquer des problèmes de trafic ou de performances élevés.
  • lecture: Le nombre de demandes en cours de lecture.
  • Écriture: Le nombre de demandes actuellement rédigées. Des valeurs élevées en lecture et en écriture pourraient indiquer les services backend lents.
  • En attente: Le nombre de demandes en attente d'une réponse du serveur backend. Cela met en évidence les problèmes potentiels avec les serveurs ou les bases de données en amont.
  • Utilisation du processeur: La surveillance de la consommation de processeur de Nginx est essentielle pour identifier les problèmes liés au CPU.
  • Utilisation de la mémoire: Suivez l'utilisation de la mémoire de Nginx pour prévenir les lèvres de mémoire et identifier le potentiel de la mémoire:
  • Suivre l'utilisation de la mémoire de Ninx pour prévenir les lèvres de mémoire et identifier le potentiel de la mémoire:
  • erreurs.
  • E / S de disque:
  • Surveiller les E / S du disque pour identifier les goulots d'étranglement potentiels provoqués par un accès lent sur le disque. Ceci est particulièrement important si Nginx sert un contenu statique.
  • Taux d'erreur:
  • Surveiller les taux d'erreur (par exemple, les codes d'état HTTP 4xx et 5xx) pour détecter les problèmes avec les demandes et les réponses du serveur.
  • Temps de traitement des demandes:
Ce délai moyen pris pour traiter une seule demande. Des valeurs élevées indiquent les goulots d'étranglement de performances.

Comment puis-je configurer les alertes pour les problèmes de performances Nginx dans Zabbix?

Zabbix vous permet de configurer des alertes en fonction des métriques Nginx surveillées. Cela implique la création de déclencheurs qui définissent les seuils pour des mesures spécifiques. Lorsqu'une condition de déclenchement est remplie, Zabbix générera une notification d'alerte.

Création de déclencheurs:
    Dans Zabbix, vous définissez des déclencheurs en définissant des conditions en fonction de vos mesures choisies. Par exemple:
  • {nginx.status.active_connections.last()}>1000
  • : déclenche une alerte si le nombre de connexions actives dépasse 1000. {nginx.status.request_time.avg(5m)}>1s
  • : déclenche une alerte si le temps de demande moyen au cours des 5 dernières minutes dépasse 1 seconde. {nginx.error.5xx.rate(5m)}>0.1
  • 10%.

Vous pouvez ajuster les seuils en fonction de la capacité spécifique de votre serveur Nginx et de la charge de trafic attendue.

Configuration des mécanismes d'alerte: Zabbix prend en charge diverses méthodes de notification, y compris les e-mails, les SMS et les scripts personnalisés. Vous devez configurer ces méthodes de notification et les associer à vos déclencheurs. Cela vous garantit que vous recevez des alertes lorsque des problèmes de performances surviennent.

Comment résoudre les problèmes de surveillance NGINX dans Zabbix?

Le dépannage des problèmes de surveillance NGINX dans Zabbix implique systématiquement la vérification de la connexion de l'agent de surveillance. exécuter et communiquer correctement avec le serveur Zabbix. Vérifiez les journaux de l'agent ZabBix pour toutes les erreurs.

  1. Vérifier l'accessibilité de la page d'état NGINX: Assurez-vous que l'agent ou le script ZABBIX a les autorisations nécessaires pour accéder à la page d'état Nginx ou exécuter des commandes pour récupérer les métriques NGINX. Vérifiez les autorisations de fichiers et les privilèges de l'utilisateur.
  2. Examiner la configuration de l'élément ZABBIX: Vérifiez que les éléments configurés pour la surveillance NGINX sont correctement définis, y compris la clé, l'intervalle de mise à jour et le type de données. Une configuration incorrecte peut conduire à des données manquantes ou inexactes.
  3. Examiner les journaux Zabbix: Vérifiez les journaux de serveur et d'agent Zabbix pour toutes les erreurs liées à la surveillance Nginx. Ces journaux fournissent souvent des indices précieux sur la source du problème.
  4. Les scripts de surveillance des tests: Si vous utilisez des scripts personnalisés, testez-les soigneusement pour vous assurer qu'ils fonctionnent correctement et le renvoi des données attendues. Utilisez des techniques de débogage pour identifier tous les problèmes.
  5. Vérifier la configuration NGINX: Assurez-vous que la configuration Nginx permet d'accéder à la page d'état ou aux mesures requises. Le contrôle d'accès incorrectement configuré peut empêcher la collecte de données.
  6. Connectivité réseau: Vérifiez la connectivité réseau entre le serveur Zabbix, l'agent Zabbix et le serveur Nginx. Les problèmes de réseau peuvent interrompre la collecte de données.
  7. En vérifiant systématiquement ces domaines, vous pouvez diagnostiquer et résoudre efficacement les problèmes de surveillance de Nginx dans Zabbix.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn