Infrastructure/Chantiers
Performances: Construire un réseau de sondes
Impossible de surveiller une infrastructure sans créer un réseau d'agents 'espions' qui la chapeaute. Ou installer ces agents ? Comment fonctionnent-ils ? (Lundi 16 septembre 2002)
     
Sommaire du dossier
Introduction

Première partie: Construire un réseau de sondes

Deuxième partie: La révolution "end user"

Troisième partie: La prévention par les tests

Quatrième partie: L'art du diagnostic

Cinquième partie: Panorama du marché
Dans une grande entreprise, déterrer la racine d'un problème informatique peut être un véritable calvaire. A moins de disposer d'un système de contrôle surveillant toutes les ressources de l'entreprise, éclatées au quatre coins du système d'information. Pour celà, il faut préalablement placer des agents à tous les points stratégiques de l'infrastructure, vérifiant en permanence la santé des applications et du matériel. Le travail de ces "agents" - sur le terrain - est la base même de tout système de gestion des performances, et bien sûr un socle que l'on aura tout intérêt à soigner.

Un agent pour chaque enjeu
Mais à quoi au juste ressemblent ces mystérieux agents ? "Il s'agit souvent d'un petit logiciel que l'on installe sur un serveur important - ou sur une machine située à proximité immédiate du matériel à surveiller. Chaque agent embarque dans sa machine virtuelle une série de règles, qui sont autant de sondes capables de réunir des informations sur un point particulier du système. Il existe une règle pour contrôler un OS beta, une règle pour contrôler une base de donnée gamma, etc ...." explique Christophe Richard, responsable avant-vente de Patrol (BMC), l'un des leaders du marché.

On place donc un agent sur chaque machine que l'on souhaite surveiller, et on l'équipe des règles nécessaires - OS, applicatifs, etc - facturées à l'unité ... Le tout n'alourdit pas de façon exagérée la charge du serveur : un agent consomme rarement plus de 4 % des ressources système.

Les agents sont le plus souvent installés directement sur les machines - ce qui permet de recuillir les données très rapidement. Mais ce n'est pas toujours vrai : certains fabriquants proposent en effet des produits qui fonctionnent à distance, ce qui se révèle très utile dans la cas des ASP. Mais ces agents sont moins réactifs, et ils mobilisent beaucoup plus de bande passante sur le réseau. On leur préfère souvent des agents locaux.

Agents pour les logiciels ou agents pour le matériel ?
Mais comment ces petits logiciels recueillent-t-ils des informations pertinentes ? Entrons plus avant dans la technique : "les règles exécutées par les agents peuvent être classées en deux familles : celles qui surveillent le software, et celles qui contrôlent le hardware" explique Christophe Richard. Quant un agent veut recueillir des informations sur un matériel - un routeur, un switch, une baie de stockage -, il va fouiller dans une MIB (Management Interface Base), qui est une sorte de fichier "log" que chaque produit hardware communique vers l'extérieur, via le protocole SNMP.

Lorsqu'il s'agit de récupérer des informations en provenance d'un logiciel - un ERP, un OS, une base de données -, les méthodes sont plus variées. "Nous faisons souvent appel à une API spécifique à l'application, mais aussi aux fichiers 'log' ou aux fichiers d'alertes que l'on peut trouver. On peut attaquer directement le process du soft en analysant ce qu'il y a en mémoire vive, ou faire appel aux informations stockées en mémoire morte". Ces méthodes sont valables pour la plupart des applicatifs, mais on dispose d'autres astuces pour quelques familles de logiciels : le fichier "trace" HTTP pour les applications web, ou encore les requêtes SQL - ou moteur - pour les bases de données.

Le développement d'un agent requiert une connaissance très fine de chaque produit, environnement ou applicatif surveillé. "Il faut être capable d'extraire des informations le plus près possible du noyau du logiciel. Heureusement, les fabriquants et les éditeurs nous facilitent la tâche en nous communicant des informations très précises sur la façon d'y accéder. Ce qui est très important, à tel point que BMC a placé un ingénieur en faction au siège de Microsoft pour surveiller les développements du géant".

Vers la console
Une fois récupérées, ces informations subiront un sort bien précis : elles seront d'abord triées selon des règles élaborées, afin de ne retenir que celles qui sont vraiment pertinentes. "Un agent retiendra par exemple que le processeur est utilisé à plus de 98 % depuis plus de 10 minutes, ou qu'une application n'a pas été utilisée depuis plus d'une heure". Une fois le tri effectué, des alertes sont mises en forme et remontées vers la console d'administration - le petit logiciel qui permet à l'administrateur de surveiller la santé de l'infrastructure. Chaque problème détecté est signalé.

Les informations non communiquées sont gardées en mémoire durant quelques semaines, ce qui permet à un administrateur d'enquêter depuis sa console et d'obtenir un complément d'information. La console est prévue pour gérer la requête d'un administrateur distant et pour lui délivrer des informations complémentaires, bien souvent indispensables.

Implémentation sans douleurs
Reste à intégrer chaque agent dans le système d'information. Une manoeuvre qui devrait se passer sans trop de peine : Christophe Richard (BMC) explique pourquoi : "L'idée de base est d'avoir un impact minimal sur le système d'information. Ce n'est pas à nous de dicter au client ce que doit être son infrastructure. C'est à nous de nous y fondre".

On intègrera donc facilement une batterie d'agents à un système d'information hétérogène, à condition toutefois de faire appel aux produits d'un leader : seuls les plus grosses firmes sont capables de fournir suffisamment de règles pour couvrir tous les produits, tous les OS et tous les applicatifs du marché. Si toutefois vous ne trouviez pas votre bonheur chez IBM, BMC, HP ou CA, il est encore possible de faire fabriquer votre agent sur mesure, ou de le développer en interne gràce aux kits de développement proposés par certains éditeurs et aux formations qu'ils proposent.

Sommaire du dossier
Introduction

Première partie: Construire un réseau de sondes

Deuxième partie: La révolution "end user"

Troisième partie: La prévention par les tests

Quatrième partie: L'art du diagnostic

Cinquième partie: Panorama du marché

Ou placer ses agents ?
Reste cependant un point délicat, qui justifie le recours à un spécialiste : le choix du placement des agents - et par extension des logiciels et matériels que l'on va contrôler. Christophe Richard assure qu'"il faut beaucoup d'expérience pour mener cette opération à bien intelligemment. Il ne faut par exemple pas être tenté de poser immédiatement des agents à tous les endroits du SI. Nous conseillons de commencer par les points les plus stratégiques, et - à la lumière de cette expérience - de parfaire le maillage petit à petit".

En clair : il n'est pas nécessaire de surveiller chaque machine, et de recueillir des informations sur chaque parcelle du système d'information. "Mieux vaut se concentrer sur les points stratégiques, dont l'interruption de service paralyserait l'entreprise". A moins de céder aux sirènes de l'approche en vogue sur le marché de la gestion des performances - qui répond au nom de "end user" ou "business process". Les éditeurs se sont en effet rendu compte que ce qui importait le plus était de savoir si chaque utilisateur, ou chaque processus métier pouvait travailler sans entrave. A tout seigneur tout honneur : nous avons traité cette approche dans un article séparé.
[Nicolas Six, JDNet]
 
Accueil | Haut de page
 
 

  Nouvelles offres d'emploi   sur Emploi Center
Auralog - Tellmemore | Publicis Modem | L'Internaute / Journal du Net / Copainsdavant | Isobar | MEDIASTAY

Voir un exemple

Voir un exemple

Voir un exemple

Voir un exemple

Voir un exemple

Toutes nos newsletters