Comprendre SNMP dans un environnement SIEM et surveiller l'appliance Zevenet

PUBLIÉ LE 14 janvier 2019

Une introduction à SNMP

SNMP ou Simple Network Management Protocol est un protocole de couche application défini par le IETF dans sa modification actuelle RFC 1157. SNMP baser sa représentation des données dans un ASN.1 (couche de présentation) modification, définie également par le IETF dans le RFC 1065 as SMI (Structure et identification des informations de gestion).

SNMP permet deux méthodes de travail, synchrone (ou polling) et asynchrone. Le mode synchrone est le moyen le plus courant d’utiliser SNMP, ça marche en envoyant PDU (Unités de données de protocole) à des périphériques gérés qui implémentent SNMP dans le réseau, ces PDU pourraient servir à la récupération de données (GetRequest) qui nécessite une réponse de l'appareil (GetResponse) ou pour définir une valeur dans un objet spécifique (SetRequest).

SNMP en mode asynchrone fonctionne par l'utilisation de pièges. Les pièges sont une alerte non sollicitée PDU envoyées par le périphérique géré à une station centrale de collecte des trappes, ces traps indiquent qu'un événement critique s'est produit dans le périphérique surveillé, par exemple une surchauffe ou une utilisation excessive de la mémoire, et sont dirigés vers le poste de travail surveillé. UDP port 162.

MIB - Base d'informations de gestion

Chaque objet pouvant être géré par SNMP sont regroupés hiérarchiquement et représentés dans un fichier spécial appelé Fichiers MIB, ces MIB sont des descripteurs de groupes d’objets gérés organisés sous un arbre de OID (Identifiants d'objet) qui identifie chaque objet de manière unique.

Nous pouvons voir un exemple de contenu MIB dans l'image suivante:

L'un des plus commun MIB fichiers est défini par le IETF dans le MIB-II.

SNMP - Architecture

SNMP définit les types d'entités 3 dans son architecture:

Stations de gestion de réseau: Exécuter des applications de gestion pour contrôler et surveiller les éléments du réseau.
Éléments de réseau: Des périphériques tels qu'un Zevenet Load Balancer qui seront surveillés par la station de gestion du réseau.
Agents: Logiciel responsable de l'exécution des commandes envoyées par les stations de gestion du réseau, comme la récupération de la valeur d'un OID spécifique.

Dans l'image suivante, il est montré un exemple d'une architecture SNMP habituelle dans un réseau:

Configuration de SNMP dans les appliances Zevenet

Les appareils Zevenet sont livrés avec un SNMP agent implémenté lui permettant la valeur par défaut Debian GNU / Linux OID être interrogé de manière synchrone par une station de gestion de réseau afin de contrôler l'état de l'équilibreur de charge

Pour configurer SNMP dans les appliances Zevenet, vous pouvez le faire facilement via l'interface graphique Web, comme suit:

1. Accédez à l'interface graphique Web de l'appareil et accédez à la section Système> Services locaux sur la barre latérale:

2. Cochez la case SNMP et configurez l'interface à partir de laquelle les demandes entrantes seront autorisées. Il est recommandé de configurer ici l'interface de gestion.

3. Nous pouvons changer le port d’écoute et le Communautés nom, notifiez que ce nom est requis pour toute demande de OID et devrait être inclus dans la demande.

4. Le dernier champ est l'adresse IP ou le sous-réseau à partir duquel le service autorisera les demandes entrantes.

Avec ce service, la livraison de vos applications peut être surveillée sur une plate-forme SIEM centralisée afin de garantir le bon comportement du trafic.

S'il vous plaît trouver ci-dessous quelques utiles OID SNMP afin de surveiller correctement un équilibreur de charge. Notez qu'il y a beaucoup de différents OID à utiliser, nous vous recommandons donc d'utiliser un outil comme snmptranslate afin de les traduire en un nom plus compréhensible pour les gestionnaires de réseau.

OID SNMP pour les statistiques de mémoire

Utilisez le suivant OID pour Zevenet Appliances afin d’obtenir différentes statistiques de mémoire:

memTotalSwap: Espace swap total configuré pour l'hôte en Ko (.1.3.6.1.4.1.2021.4.3.0)
memAvailSwap: Espace d’échange actuellement disponible en Ko (.1.3.6.1.4.1.2021.4.4.0)
memAvailSwap: Mémoire réelle installée sur l'hôte en Ko (.1.3.6.1.4.1.2021.4.5.0)
memAvailReal: Mémoire réelle disponible en Ko (.1.3.6.1.4.1.2021.4.6.0)
memTotalFree: Total de la mémoire libre en Ko (.1.3.6.1.4.1.2021.4.11.0)
memShared: Total de la mémoire réelle ou virtuelle allouée pour être utilisée comme mémoire partagée en Ko (.1.3.6.1.4.1.2021.4.13.0)
memBuffer: Total de la mémoire réelle ou virtuelle allouée pour être utilisée comme mémoire tampon en Ko (.1.3.6.1.4.1.2021.4.14.0)
memCached: Total de la mémoire réelle ou virtuelle allouée pour être utilisée comme mémoire cache en Ko (.1.3.6.1.4.1.2021.4.15.0)

OID SNMP pour les statistiques de charge de la CPU

Utilisez le suivant OID pour Zevenet Appliances afin d’obtenir les valeurs de charge du processeur:

1 minute CPU Charge (.1.3.6.1.4.1.2021.10.1.3.1)
5 minute CPU Charge (.1.3.6.1.4.1.2021.10.1.3.2)
15 minute CPU Charge (.1.3.6.1.4.1.2021.10.1.3.3)

OID SNMP pour les statistiques de l'UC

Utilisez le suivant OID pour Zevenet Appliances afin d’obtenir les statistiques du processeur:

SsCpuSystem: pourcentages du temps système de traitement de la CPU du système (.1.3.6.1.4.1.2021.11.10.0)
système ssCpuRaw: Ticks dépensés dans le code au niveau du système (.1.3.6.1.4.1.2021.11.52.0)
ssCpuIdle: Pourcentage du temps de processeur en mode veille (.1.3.6.1.4.1.2021.11.11.0)
ssCpuRawIdle: Tiques dépensées inutilement par cpu (.1.3.6.1.4.1.2021.11.53.0)

OID SNMP pour les statistiques d'interface réseau

Utilisez le suivant OID pour Zevenet Appliances afin d’obtenir les statistiques des interfaces réseau:

siNombre: Nombre d'interfaces dans le système (1.3.6.1.2.1.2.1)
interfaces: table pour les statistiques d'interface (1.3.6.1.2.1.2.2)

Cet OID correspond à une table dans le MIB2. Notez que la représentation des tables est différente de celle des objets scalaires. Imaginez une table avec un OID xTable, avec des colonnes Coli et index i, pour accéder à la colonne Col1 et index 1, nous devrions demander un snmpget marquage xTable.xEntry.Col1.1, Où xEntry n'a qu'un sens conceptuel, on peut aussi obtenir toutes les entrées d'une colonne Col1 peut comprendre un atténuateur. Snmpwalk à xTable.xEntry.Col1 ou obtenir la table complète avec un Snmpwalk à son OID (xTable.xEntry). Laisse ce que nous obtenons sous forme de colonnes:

ifDescr: Noms d'interfaces (1.3.6.1.2.1.2.2.1.2)
siType: Type d'interfaces, par exemple, ethernet (1.3.6.1.2.1.2.2.1.3)
ifMtu: Unité de transfert maximale (1.3.6.1.2.1.2.2.1.4)
si vitesse: Bande passante estimée ou nominale actuelle en b / s (1.3.6.1.2.1.2.2.1.5)
ifPhysAddress: adresse de couche de protocole inférieure, par exemple, adresse MAC (1.3.6.1.2.1.2.2.1.6)
ifOperStatus: Statut actuel (1.3.6.1.2.1.2.2.1.8)
ifInOctets: Nombre d'octets entrants (1.3.6.1.2.1.2.2.1.10)
ifInUcastPkts: Nombre de paquets de monodiffusion entrants (1.3.6.1.2.1.2.2.1.11)
ifInDiscards: Nombre de paquets entrants éliminés (1.3.6.1.2.1.2.2.1.13)
ifInErrors: Nombre de paquets entrants avec des erreurs empêchant leur livraison (1.3.6.1.2.1.2.2.1.14)
ifOutOctets: Nombre d'octets transmis (1.3.6.1.2.1.2.2.1.16)
ifOutUcastPkts: Nombre de paquets unicast transmis (1.3.6.1.2.1.2.2.1.17)
ifOutDiscards: Nombre de paquets transmis éliminés (1.3.6.1.2.1.2.2.1.19)
ifOutErrors: Nombre de paquets sortants avec des erreurs qui n'ont pas pu être transmis (1.3.6.1.2.1.2.2.1.20)

Backends SNMP monitoring depuis l’équilibreur de charge

Par ailleurs, SNMP est très utile du point de vue de l’équilibreur de charge car il peut être utilisé pour rassembler des métriques d’arrière-plan et les utiliser pour modifier le comportement du planificateur ou pour automatiser l’activation et la désactivation des arrières. Faire référence à ce lien pour obtenir plus d'informations sur l'utilisation d'une vérification de gardien de batterie personnalisée avec SNMP.

Surveillance ultérieure de la livraison des applications

Il existe des cas d'utilisation où il est nécessaire d'obtenir des valeurs de surveillance spécifiques telles que les fermes, les backends ou les statistiques et les états de clustering. Pour rassembler ces valeurs spécifiques, veuillez suivre cet article cela peut également être fait via le REST api.

Ressources de surveillance supplémentaires

Reportez-vous aux articles sur la surveillance des appliances Zevenet avec Nagios ou Zabbix via les liens suivants:

https://www.zevenet.com/knowledge-base/howtos/monitoring-zevenet-nagios/
https://www.zevenet.com/knowledge-base/howtos/monitoring-zevenet-zabbix/

J'espère que vous trouverez cet article utile et qu'il vous mènera au prochain niveau d'utilisation SNMP surveiller Zevenet Appareils!

Références

UCD-SNMP-MIB http://www.net-snmp.org/docs/mibs/UCD-SNMP-MIB.txt
Protocole SNMP RFC: https://tools.ietf.org/html/rfc1157
SIM RFC: https://tools.ietf.org/html/rfc1065
net-snmp: http://www.net-snmp.org/wiki/
Wiki Debian snmp: https://wiki.debian.org/SNMP
UCD-SNMP-MIB: http://www.net-snmp.org/docs/mibs/UCD-SNMP-MIB.txt

Partager sur:

Documentation sous les termes de la licence de documentation libre GNU.

Cet article a-t-il été utile?

Articles Relatifs