This is an old revision of the document!


Pour la version 1.x.x de Tracker, voir la page : Tracker version 1.x.x

Présentation du plugin tracker

Tracker a pour fonction de découvrir et de récupérer les informations des équipements réseau via SNMP (switchs, routeurs, imprimantes, onduleurs, etc…). Il fonctionne à partir de la version 0.71.5.

Il est composé de 2 parties :

  • Partie serveur (plugin GLPI) programmé en PHP
  • Partie agent (qui fonctionne tout seul) programmé en PERL

Liste des fonctionnalités

  • Gestion des modèles SNMP (intégrés dans Tracker)
  • Gestion des authentifications (dans MySQL ou dans un fichier XML) :
    • SNMP Version 1
    • SNMP Version 2c
  • Gestion des agents sur le serveur (verrouillage, journaux, optimisations Threads et Core)
  • Dialogue en HTTP et/ou HTTPS entre le serveur et l'agent
  • Gestion des plages IP à associer aux agents (activation découverte, interrogation et gestion par entités)
  • Gestion des matériels réseaux découverts par les agents
  • Quelques rapports
  • Récupération des informations des switchs et de ses ports :
    • Récupération des informations de chaque port (MAC interne, vitesse du port, nombre d'erreurs, statut de la connexion,etc…)
    • Connexions automatiques entre les ports et les ordinateurs / switchs / imprimantes / périphériques / téléphones IP
  • Récupération des informations des imprimantes :
    • Etat des consommables : cartouches / photoconducteur / récupérateur d'encre usagée
    • Compteur d'impression et rapport : journalier / hebdomadaire / mensuel / annuel

Schéma fonctionnel

Besoins techniques

  • php5 pour la version Serveur
  • Perl pour l'agent (compilé avec Thread / version 1.32 minimum)
    • Module “Config”
    • Module “Net-SNMP”
    • Module “Compress-Zlib”
    • Module “AppConfig”
    • Module “LWP-UserAgent”
    • Module “HTTP-Request-Common”
    • Module “XML-Simple”
    • Module “Data-Dumper”
    • Module “FindBin”
    • Module “Parallel-ForkManager”

Installation

Partie serveur

Après la décompression de l'archive dans le dossier plugin de glpi, connectez-vous sur GLPI en tant qu'administrateur :

Menu : Configuration / Plugins / Tracker / Installation

Cette opération permet de créer les tables dans la base de données ainsi que les droits d'administration.

L'agent

L'agent peut être installé n'importe où, sur n'importe quel serveur (le seul besoin pour dialoguer avec le serveur est de pouvoir établir une connection HTTP ou HTTPS) Décompresser l'archive de l'agent, il faudra, en plus, placer dans le répertoire le fichier de configuration de l'agent (voir plus bas)

[serveur] Configuration

Configuration générale

  • SSL seulement pour l'agent : Permet de n'activer que le dialogue en HTTPS avec les agents
  • URL de GLPI pour l'agent (ex : https://192.168.0.1/glpi) : l'adresse du serveur GLPI qui doit être accessible depuis l'agent (ça peut être l'IP du serveur ou une IP publique)
  • Activation de l'historique : Permet d'activer ou non l'historique
  • Activation du module SNMP réseaux : Permet d'activer la gestion des équipements réseau
  • Activation du module SNMP imprimantes : Permet d'activer la gestion des équipements d'impression (imprimantes, photocopieurs)
  • Stockage de l'authentification SNMP : Mode de stockage de l'authentification (Base de donnée MySQL ou dans un fichier XML)

SNMP - Script serveur

  • Nombre de process simultanés pour le script serveur de post-traitement : Spécifie le nombre de process simultanés pour le script de post-traitement (Attention, gourmand en ressources)
  • Activation des journaux : Permet d'activer l'acriture de journaux lors de l'exécution du script serveur (ne l'utilisez que pour le debug car ces fichiers peuvent prendre beaucoup de place)
  • Verrouillage : Permet de verrouiller le script serveur afin qu'il ne fasse rien (Utile pour stopper son exécution s'il est programmé en tâche planifiée / cron )

SNMP - Découverte

Les critères d'existence vont permettre d'afficher le matériel découvert si celui ci n'existe pas dans GLPI. Cette vérification se fait via des critères.

Quand vous mettez plusieurs critères à oui, l'association de ces critère est un ET. par exemple, nom = oui et numéro de série = oui : Tracker va cherche le matériel qui a le même nom ET qui a le même numéro de série.

Critères d'existence

  • IP : Adresse IP de l'équipement
  • Nom : Nom de l'équipement
  • Numéro de série : Numéro de série de l'équipement

Critères d'existence 2

Si tous les critères d'existence se confrontent à des champs vides, vous pouvez sélectionner des critères secondaires différents.

  • IP : Adresse IP de l'équipement
  • Nom : Nom de l'équipement
  • Numéro de série : Numéro de série de l'équipement

SNMP - Réseaux

Cet onglet n'apparait que si l'on l'a activé dans l'onglet Configuration générale.

  • Statut du matériel actif : Permet de définir les équipements à interroger. En effet, les équipements réseau ayant ce statut seront alors interrogés par un des agents (c'est une des conditions).

SNMP - Imprimantes

Cet onglet n'apparait que si l'on l'a activé dans l'onglet Configuration générale.

  • Statut du matériel actif : Permet de définir les équipements à interroger. En effet, les imprimantes ayant ce statut seront alors interrogés par un des agents (c'est une des conditions).

[Serveur] [Menu] Modèles SNMP

Le menu qui permet de gérer les modèles SNMP est représenté par l'icone :

<center> </center>

Lors de l'installation du plugin Tracker, des modèles sont importés automatiquement.

Les modèles sont désormais intégrés à chaque release afin de garder des modèles propres et commun à toutes les installation (plus simple à débugguer). De ce fait, si vous crééez des modèles, faites-nous les parvenir afin qu'on les valide et ajoute au plugin. Cette gestion permet également de les associer aux équipements découverts.

Liste des modèles

Vous avez la liste des modèles gérés par Tracker.

La liste des colonnes possible est :

  • Nom : Nom du modèle (un lien vous emmènera à l'édition de ce modèle)
  • Type : Type GLPI associé au modèles (Ordinateurs, Imprimpantes, Materiel réseau, Périphérique et Téléphone)
  • Exporter : Offre la possibilité d'exporter le modèle au format XML (par exemple pour transmettre le modèle d'un nouveau matériel)
  • Activation : Permet d'activer le modèle
  • Clé modèle pour la découverte : Clé unique qui sert à associer un modèle à un matériel découvert (c'est géré dans l'agent). Cette clé ne doit surtout pas être modifiée. Si vous créez un modèle laisser ce champs vide.

Ajouter un modèle

Importer un modèle

Vous avez la possiblilité d'importer un modèle (au format XML) qui a du être exporté comme vu précédemment.

:!: Il y a des incompatibilités avec les modèles issus de la version 1.x.x de Tracker.

Création de modèle

  • Nom : Nom que vous donnez à votre modèle
  • Type : Type d'équipement auquel vous associez ce modèle (Ordinateurs, Réseaux, Imprimantes, Périphériques, Téléphones)

Modifier un modèle

Visualisation du tableau des OID

  • Label MIB : On peut spécifier un commentaire lié à l'OID afin de se rappeler à quoi il sert
  • Objet : Nom de l'objet lié à l'OID
  • oid : Valeur de l'OID représentant chaqu'un des noeuds (.1.3 etc…)
  • Compteur de ports : Désigne l'OID qui affiche le nombre total de ports réseau de l'équipement (Il en faut un seul uniquement par modèle)
  • Port dynamique (.x) : Désign si un OID est dynamique. Par exemple l'OID qui renvoi le nom de chaque port (donc OID.port1, OID.port2, OID.port3…)
  • Liaison champs : Correspond au champs GLPI à mettre à jour
  • vlan : Active la récupération sur chaque VLAN
  • Activation : Permet de désactiver un modèle

Ajout d'OID

On a la possibilité d'ajouter des OID associés à des champs GLPI. La description de chaque champs est définie dans le chapitre Visualisation du tableau des OID ci-dessus.

[Serveur] [Menu] Authentification SNMP

Attention : le SNMP v3 n'est pas encore fonctionnel, ne pas utiliser pour le moment!!

Tracker installe par défaut :

  • Communauté public en SNMP v1
  • Communauté public en SNMP v2c

Ces 2 communautés sont les communautés par défaut définies sur les équipements (switchs, imprimantes…)

  • Nom : Nom donné à l'authentification
  • Version SNMP : version SNMP utilisée (1, 2c ou 3)
  • Communauté : Nom de la communauté (pour la lecture / écriture) utilisée uniquement par la version 1 et 2c de SNMP
  • Utilisateur :
  • Schéma d'authentification :
  • Protocole de cryptage pour authentification :
  • Mot de passe :
  • Protocole de cryptage pour les données (écriture) :
  • Mot de passe (écriture) :

[Serveur] [Menu] Plages IP

Vous devez définir les plages IP pour la découverte et l'interrogation par les agents.

  • Nom : Nom donné à la plage d'IP
  • Début de la plage IP : Première adresse IP de la plage
  • Fin de la plage IP : Dernière adresse IP de la plage
  • Agent : L'agent qui va gérer cette plage IP
  • Découverte : Permet d'activer ou non la découverte d'équipements réseau
  • Interrogation : Permet d'activer ou non l'interrogation d'équipements réseau
  • Entité : Association de la plage IP à une entité

[Serveur] [Menu] Gestion des agents

Vous devez créer et gérer le ou les agents que vous allez utiliser.

  • Nom : Nom donné à l'agent
  • Dernière remontée : Date et heure de la dernière connexion de l'agent au serveur Tracker
  • Version de l'agent : Version de l'agent (lors de la dernière connexion de l'agent au serveur Tracker)
  • Verrouillage : Permet de verrouiller l'agent afin qu'il ne fasse rien (aucune découverte et aucune interrogation)
  • Journaux : Permet d'activer l'écriture de journaux lors de l'exécution de l'agent (ne l'utilisez que pour le debug car ces fichiers peuvent prendre beaucoup de place)
  • Export config agent : Permet d'exporter la config du serveur (insérer le fichier généré dans le répertoire de l'agent)

Valeurs cachées par défaut (ces valeurs permettent d'affiner et optimiser l'agent :

  • Coeurs (CPU) découverte : Nombre de coeurs de processeur dédiés à la découverte
  • Threads découverte (par coeur) : Nombre de threads dédiés à la découverte
  • Coeurs (CPU) interrogation : Nombre de coeurs de processeur dédiés à l'interrogation
  • Threads interrogation (par coeur) : Nombre de threads dédiés à l'interrogation
  • Fragments en Ko : Taille maximum des données à transférer de l'agent au serveur (si la taille des données est plus grande, alors l'agent enverra au fur et à mesure de ses exécution les données, ce qui permet de réduire la bande passante utile à un instant donné)

Les valeurs d'optimisations sont à tester pour chaque agent afin de déterminer les ressources maximum qu'on veut leur attribuer et les meilleures performances possibles.

[Serveur] [Menu] Informations sur l'exécution du script serveur

  • PID : Numéro du processus unique d'exécution du script
  • Statut : Indique le status du script (En cours, terminé)
  • Nombre de process : Indique le nombre de processus simultanés (multi-process)
  • Date de début d'exécution : Indique la date de lancement du script serveur
  • Date de fin d'exécution : Indique la date de fin d'exécution du script serveur
  • Equipements réseau interrogés : Indique le nombre d'équipement réseau (switchs) traités par le script
  • Ports réseau interrogés : Indique le nombre de ports réseau traités par le script
  • Imprimantes interrogées : Indique le nombre d'imprimantes réseau traités par le script
  • Erreurs : Indique le nombre d'erreurs
  • Durée totale d'exécution du script : Indique la durée totale d'exécution du script serveur

[Serveur] [Menu] Informations sur l'exécution des agents

  • PID : Numéro du processus unique d'exécution de l'agent (Les 3 derniers chiffre représtent l'ID de l'agent)
  • Agent : Indique le nom de l'agent
  • Statut : Indique le status de l'agent (En cours d'exécution ou terminé)
  • Date de début d'exécution : Indique la date et heure du lancement de l'agent
  • Date de fin d'exécution : Indique la date et heure de la fin d'exécution de l'agent
  • Découverte : Indique le nombre de matériel découverts (par exemple 2/50 signifie 2 matériel découverts sur 50 IP scannées)
  • Equipements interrogés : Indique le nombre de matériels interrogés
  • Erreurs : Indique le nombre d'erreurs rencontrés
  • Durée totale d'exécution du script : Indique le temps total d'exécution de l'agent
  • Durée totale de la découverte : Indique le temps total d'exécution de la partie découverte de l'agent
  • Durée totale de l'interrogation : Indique le temps total d'exécution de la partie interrogation de l'agent

[Serveur] [Menu] Découverte de matériel réseau

A finir de remplir