Maison >Opération et maintenance >exploitation et maintenance Linux >Explication détaillée des exemples de surveillance de serveur Linux

Explication détaillée des exemples de surveillance de serveur Linux

零下一度
零下一度original
2017-07-21 11:55:393444parcourir

1. Résumé de la surveillance

Pour assurer une haute disponibilité des serveurs Linux, il est nécessaire de les surveiller efficacement et de comprendre l'état de fonctionnement des serveurs en réel Si les indicateurs de performance sont normaux, pour éviter les problèmes avant qu'ils ne surviennent, l'enregistrement des journaux d'exploitation et de maintenance, la surveillance graphique et les mécanismes d'alarme de message pour les occurrences de problèmes sont tous des conditions préalables pour garantir que le serveur Linux peut fournir des services normaux au monde extérieur.

2. Surveillance du contenu

La surveillance est un élément important de la prévention. Permettez-moi d’abord de parler de ce que je dois surveiller. La charge du système, l'utilisation du processeur, l'utilisation de la mémoire, l'espace disque, le trafic réseau, les ports, les processus, le nombre de connexions à Apache ou Tomcat et l'état d'exécution de MySQL sont autant d'éléments qui doivent être surveillés. Pour comprendre l'état de fonctionnement global du serveur à tout moment, il est difficile d'y parvenir en s'appuyant uniquement sur quelques commandes de surveillance des performances intégrées à Linux. Par conséquent, l’utilisation de scripts shell et d’outils de surveillance open source pour la surveillance des serveurs est devenue les deux principales options.

3. Méthodes de surveillance

Tout d'abord, vous devez comprendre certaines commandes courantes pour la surveillance des serveurs Linux et les scripts de surveillance écrits par ces commandes. Enfin, certains outils de surveillance open source matures le sont également. nécessaire.

3.1 Commandes de surveillance courantes


1) [iostat] : La commande iostat est utilisée pour afficher des informations détaillées sur le sous-système de stockage et est généralement utilisée pour surveiller les conditions d'E/S du disque .

2) [meminfo et gratuit] : cat /proc/meminfo gratuit

3) [mpstat] : Outil de surveillance du système en temps réel, dans un système multi-CPU, il peut non seulement afficher la moyenne de toutes les informations sur l'état des processeurs et afficher des informations spécifiques sur le processeur

4) [netstat] : affiche une grande quantité d'informations liées au réseau

5) [nmon] : Open source outil pour surveiller les performances des systèmes Linux, téléchargement et installation

6) [pmap] : La commande pmap est utilisée pour signaler les détails de la mémoire occupée par chaque processus. Elle peut être utilisée pour voir si un processus a été dépassé. . Cette commande nécessite l'identifiant du processus comme paramètre.

7) [ps pstree] : ps vous indique la mémoire et le temps de traitement CPU occupés par chaque processus, et pstree affiche les dépendances entre les processus dans une structure arborescente, y compris les informations sur les processus enfants

8 ) [sar] : sar peut être utilisé pour afficher l'utilisation du processeur, les données de la page mémoire, les statistiques d'E/S réseau et de transmission, l'activité de création de processus et les détails de l'activité du périphérique de disque.

9) [strace] : outils de processus de diagnostic, tels que strace ls, mais le processus diagnostiqué ralentira

10) [tcpdump] Outil de surveillance du réseau, utilisé pour l'analyse de base du protocole. quels processus utilisent le réseau et comment.

11) [uptime] : Cette commande vous indique combien de temps ce serveur a fonctionné depuis son démarrage

12) [vmstat] pour surveiller la mémoire virtuelle

13) [Wireshark] : Il s'agit d'un programme de détection de protocole réseau qui vous permet de capturer des informations pertinentes sur les sites Web en cours d'exécution via le programme

14) [dstat] Outil de statistiques de ressources multi-types : Cette commande intègre vmstat Il y en a trois. commandes : iostat et ifstat

15) [htop] : Un top plus convivial Pour la différence entre les deux, voir : "Comparaison entre htop et top"

16) [ss] : Utilisé les statistiques de socket d'enregistrement, il peut afficher des informations similaires à netstat, et peut également afficher plus d'informations TCP et d'état

17) [lsof] : liste des fichiers ouverts

18 ) [iftop] est un autre programme de premier ordre basé sur les informations du réseau. Il peut afficher l'état actuel de la connexion réseau trié par utilisation de la bande passante ou par volume de téléchargement ou de téléchargement

Script de surveillance du shell 3.2


Quatre scripts sont fournis ici (surveillance des performances performance.sh, processus. sh, surveillance du trafic network.sh, analyse et statistiques du trafic tongji.sh), et utilisez crontab pour exécuter régulièrement des scripts pour enregistrer les données de surveillance, former des journaux de surveillance quotidiens et les placer dans les dossiers correspondants suivants, et dépasser vos propres paramètres après En recevant la valeur de l'alarme, une notification par e-mail sera envoyée. Pour les boîtes aux lettres dotées d'une fonction de notification SMS gratuite, telles que la boîte aux lettres d'entreprise Tencent et la boîte aux lettres 163, vous pouvez l'essayer. Après avoir reçu l'alarme par e-mail, vous recevrez bientôt le SMS, ce qui est le cas. très pratique.

3.2.1 Script de surveillance des performances performance.sh

Adresse GitHub du code :

La capture d'écran du code est la suivante, il y en a quatre


Script de surveillance des performances 01 - Surveiller la charge du processeur

Script de surveillance des performances 02 - Surveiller l'utilisation du processeur

Script de surveillance des performances 03 - Surveillance de la partition d'échange

Script de surveillance des performances 04-Surveiller l'espace disque

3.2.2 Script de surveillance des processus process.sh

Adresse GitHub du code :

La capture d'écran du code est la suivante


Script de surveillance des processus process.sh

3.2.3 Script de surveillance du trafic network.sh

Adresse GitHub du code :

La capture d'écran du code est la suivante :


Script de surveillance du trafic network.sh

3.2.4 Script d'analyse et de statistiques du trafic tongji.sh

Adresse GitHub du code :

La capture d'écran du code est la suivante :


Script de statistiques d'analyse du trafic tongji.sh

3.3 Outils de surveillance


3.3.1) Cacti+Nagios

[Cacti] : Cactus est un ensemble d'outils de surveillance basés sur PHP, MySQL, outil d'analyse graphique de surveillance du trafic réseau développé par SNMP et RRDTool.

【Nagios】 : Nagios est un système de surveillance qui surveille l'état de fonctionnement du système et les informations du réseau. Peut surveiller des hôtes et des services locaux ou distants spécifiés, et fournir des fonctions de notification d'exception, etc.

3.3.2) Zabbix

【Zabbix】 : En plus de surveiller divers paramètres réseau, Zabbix garantit que le serveur En plus du fonctionnement sécurisé du système, il peut également fournir des mécanismes de notification tels que SMS, e-mail, jabber, etc. pour permettre aux administrateurs système de localiser/résoudre rapidement divers problèmes existants. En gros, il peut réaliser les fonctions de cactus+nagios

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