Atouts et faiblesses de la plate-formeNAGIOS

Niveau systรจme

Au niveau systรจme, on sโ€™intรฉresse principalement ร  la gestion des ressources systรจmes physiques et logicielles (Cf. Page.26) : on vรฉrifiepar exemple, la disponibilitรฉ des ressources physiques car souvent la dรฉgradation de la QoS (e.gtemps de rรฉponse trรจs รฉlevรฉ) est due ร  des ressources systรจmes insuffisantes. Lโ€™intรฉrรชt du framework que nous proposons est dโ€™aider ร  la mesure de lโ€™utilisation des ressources systรจmes et dโ€™identifier celles qui causent les goulots dโ€™รฉtranglement. Car lโ€™erreur ร  รฉviter est dโ€™augmenter inutilement des ressources qui ne sont pas, ร  la base, responsables des dรฉgradations des performances.
Autre aspect ร  considรฉrer dans la gestion de la QoSest le choix du systรจme dโ€™exploitation. Une application nโ€™offre pas les mรชmes performances si elle est dรฉployรฉe sur un systรจme Linux ou sur un systรจme Windows car la gestion des ressources logicielles (Thread, processus, etc.) nโ€™est pas du tout la mรชme. En effet, Linux crรฉe des ยซ processus ยป plus rapidement que Windows 2000 par exemple, mais ordonnance ยซ Schedule ยป moins vite les ยซ threads ยป dโ€™un mรชme ยซ processus ยป.
Linux aura donc un fort avantage dans les cas oรน lโ€™on doit crรฉer et dรฉtruire beaucoup de threads ou processus, et ceci trรจs frรฉquemment (typiquementun serveur web avec des scripts CGI crรฉant un processus ร  chaque requรชte), mais sera contre performant dans un systรจme oรน on utilise beaucoup de threads crรฉรฉs une fois pour toute (ex :base de donnรฉes ou serveur web moderne ne crรฉant pas de processus supplรฉmentaire pour exรฉcuter un script).

Concepts de lโ€™รฉvaluation des performances systรจmes

Dans ce paragraphe nous nous intรฉressons au critรจrede la performance dโ€™un systรจme. Cet aspect de la QoS est important car il met en jeu plusieursfacteurs et mรฉtriques nรฉcessaires pour son รฉvaluation.

Dรฉfinitions

Performance

Du point de vue de lโ€™utilisateur, une application distribuรฉe est performante si elle assure un temps dโ€™exรฉcution raisonnable suite ร  la sollicitation dโ€™un client. Ce temps dรฉpend dโ€™une part des capacitรฉs de calcul et de communication des machines (sites du rรฉseau) et dโ€™autres part des canaux de communication logiciels (Intergiciels) et de la qualitรฉ de lโ€™application (Cf. 1.2 Gestion de la QoS).

Ressource systรจme

Une ressource systรจme est une entitรฉ physique/matรฉrielle (i.e., mรฉmoire, processeur, disques, etc.) ou logicielle/conceptuelle (i.e., fichier, thread, file dโ€™attente, etc.) qui participe ร  lโ€™exรฉcution dโ€™une application et dont les services sont dรฉcrits par des caractรฉristiques quantitatives. Lโ€™รฉtude des ressources systรจmes utilisรฉes par une application peut se faire ร  une granularitรฉ plus ou moins importante selon les besoins. Par exemple, lโ€™รฉtude de la mรฉmoire consommรฉe peut couvrir la mรฉmoire vive rรฉellement disponible, la mรฉmoire mise en cache et la mรฉmoire buffรฉrisรฉe. La commande ยซ free โ€“m ยป sous lโ€™environnement Linux fournit ce genredโ€™information (Cf. Figure 2).

Performance de la plate-forme de supervision

Nous dรฉfinissons la performance dโ€™un outil de supervision comme รฉtant sa capacitรฉ ร  collecter et traiter des informations sans perturber ou modifier le comportement du systรจme observรฉ. En gรฉnรฉral, cette condition peut รชtre atteinte de deuxfaรงons :
En minimisant ยซ lโ€™intrusivitรฉ ยป des sondes,
En rรฉduisant la masse dโ€™information que lโ€™outil doit gรฉrer tout au long du processus de supervision

Intrusivitรฉ des sondes

Dรฉfinition

ยซ Lโ€™intrusivitรฉ ยป dรฉrive du mot intrusion qui veut dire ยซ lโ€™occurrence dโ€™un processus ou dโ€™un รฉvรฉnement qui ne fait pas partie du contexte dโ€™exรฉc ution dโ€™une tรขche mais qui interfรจre dans sa rรฉalisation ยป [Ramchurn, et al.’04]. [Mansouri-Samani.’95] dรฉfinit lโ€™intrusivitรฉ dโ€™un systรจme de supervision par : ยซ Intrusiveness or the probe effect is the effect t hat monitoring may have on the behaviour of the monitored system, and results from the monitoring system sharing resources with the observed system (e.g., processing power, communication chann els, storage space)โ€ฆโ€ฆMonitoring may affect the behaviour of the system under observatio n. This is particularly true when the application references external state or its behavi our is affected by race conditions. In general this intrusion or interference is undesirable and m ust be reduced or, when possible, completely eliminated. This can be achieved through suitable i nstrumentation techniques ยป .
Cette dรฉfinition souligne que lโ€™intrusivitรฉ est causรฉe par lโ€™interfรฉrence avec le systรจme observรฉ.
Cette interfรฉrence peut sโ€™opรฉrer ร  deux niveaux : dโ€™un cรดtรฉ le partage des ressources systรจme (CPU, mรฉmoire, etc.) et de lโ€™autre cรดtรฉ le partage des ressources rรฉseaux (bande passante). Ces deux facettes de lโ€™intrusivitรฉ doivent รชtre รฉvaluรฉes pour caractรฉriser globalement lโ€™intrusivitรฉ dโ€™une sonde.

Intrusivitรฉ au niveau des ressources rรฉseaux

[Goutelle and Primet.’03] dรฉfinit globalement le degrรฉ dโ€™intrusivitรฉ dโ€™une technique de mesure comme รฉtant la capacitรฉ ร  rรฉaliser la mesure en gรฉnรฉrant le minimum de trafic supplรฉmentaire. Cette dรฉfinition, plutรดt gรฉnรฉrale, met lโ€™accent surle volume du trafic gรฉnรฉrรฉ par les sondes pour caractรฉriser son intrusivitรฉ. On peut dรฉfinir alorsmathรฉmatiquement lโ€™intrusivitรฉ par la formule donnรฉe dans (ร‰quation 1).

Filtrage ร  la prรฉsentation

Ce type de filtrage permet ร  lโ€™utilisateur dโ€™afficher uniquement les informations qui lโ€™intรฉressent parmi celles stockรฉes. En pratique, lโ€™utilisateur dispose dโ€™un formulaire pour sรฉlectionner les types dโ€™informations et les critรจres associรฉs. Implicitement, cela dรฉclenche une suite de requรชtes vers le mรฉdium de stockage (ex systรจme de base de donnรฉes) qui vรฉrifie la disponibilitรฉ desinformations demandรฉes et qui renvoie le rรฉsultat.

Synthรจse

Mesurer les performances dโ€™une application est essentiel pour mieux comprendre sa dynamique et anticiper les รฉvolutions et les optimisations. Cependant, la rรฉalisation de cette activitรฉ nรฉcessite des outils utilisant des techniques de collecte qui soient peu-intrusives. Cette intrusivitรฉ peut รชtre coรปteuse en terme de consommation des ressources systรจmes et peut perturber le comportement de lโ€™application ou du systรจme supervisรฉ. De plus, la rรฉduction de la masse dโ€™information peut sโ€™avรฉrer trรจs utile pour augmenter lโ€™efficacitรฉ de lโ€™activitรฉ de la supervision et faciliter le diagnostic. Le filtrageet lโ€™ajustement de la frรฉquence de collecte sont des mรฉcanismes parmi dโ€™autres qui permettent cette rรฉduction.
Outre lโ€™aspect intrusivitรฉ, la possibilitรฉ de fournir un environnement commun oรน des sondes hรฉtรฉrogรจnes peuvent fonctionner ensemble nous semble trรจs utile pour la supervision. Dans la suite, nous exposons lโ€™intรฉrรชt de cette caractรฉristique et nous prรฉsentons quelques techniques quifacilitent cette intรฉgration.

Lโ€™intรฉgration des sondes hรฉtรฉrogรจnes

Introduction

Les systรจmes actuels sont construits par intรฉgration de composants existants. Il en rรฉsulte des architectures complexes (hรฉtรฉrogรจnes, distribuรฉes, etc.). Dโ€™une part, la contrainte dโ€™hรฉtรฉrogรฉnรฉitรฉ peut prendre plusieurs formes : hรฉtรฉrogรฉnรฉitรฉ de lโ€™environnement dโ€™exรฉcution (Linux, Windows, etc.) et hรฉtรฉrogรฉnรฉitรฉ des formatsde donnรฉes manipulรฉes (XML, formats non standardisรฉs, etc.). La supervision de tels systรจmes nรฉcessite parfois de combiner plusieurs outils de mesure. Cela pose cependant un problรจme dโ€™interopรฉrabilitรฉ entre les rรฉsultats gรฉnรฉrรฉs par ces outils; ces rรฉsultats peuvent รชtre gรฉnรฉrรฉs dans des formats diffรฉrents (XML, CSV, etc.) et nรฉcessitent dโ€™abord dโ€™รชtre uniformisรฉs avant de les exploiter. Dโ€™autre part, mesurer les performances dโ€™un systรจme distribuรฉ nรฉcessite de placer des sondes sur les diffรฉrentes parties de ce systรจme. Lโ€™horodatage des informations collectรฉes est indispensable ร  la supervision parce quโ€™il permet de savoir ร  quel moment la mesure a รฉtรฉ effectuรฉe. Le problรจme qui peut se poser ร  ce stade est celui de la synchronisation des informations.
Dans cette partie, nous dressons un รฉtat de lโ€™art des techniques utilisรฉes pour uniformiser les formats de donnรฉes et celles utilisรฉes pour les synchroniser.

Standard SNMP

Principe

SNMP est un protocole dโ€™administration de rรฉseau qui se veut simple dans son utilisation. Son concept lui permet de gรฉrer aussi bien des informations applicatives que des informations liรฉes ร  lโ€™utilisation des ressources systรจmes (processeur, mรฉmoire, charge des interfaces rรฉseaux, etc.).
Afin de pouvoir lโ€™utiliser, il est nรฉcessaire que les รฉlรฉments ร  superviser soient รฉquipรฉs dโ€™un agent SNMP. Lโ€™information quโ€™on pourra recueillir dans un agent SNMP se trouve regroupรฉe dans la MIB que nous prรฉsentons dans le paragraphe suivant. Ceprotocole รฉtant basรฉ sur un modรจle Client/Serveur (Cf. Figure 13), la station dโ€™administration รฉmet un paquet UDP reprรฉsentant une requรชte SNMP ร  destination de lโ€™รฉquipement ร  superviser. Lโ€™agent, qui met ร  jour rรฉguliรจrement sa table MIB, retourne dans un paquet UDP vers la station dโ€™administration, les valeurs des variables SNMP demandรฉes.

Discussion

Le protocole SNMP, comme l’acronyme l’indique, est simple et cโ€™est dโ€™ailleurs lโ€™une des raisons de sa popularitรฉ. De plus, il est adoptรฉ par de nombreux constructeurs des รฉquipements rรฉseaux comme lโ€™outil incontournable pour superviser leurs รฉquipements. Cependant, le mode de fonctionnement du protocole basรฉ sur une communication synchrone (requรชte/rรฉponse) est pรฉnalisant en terme dโ€™intrusivitรฉ au niveau du rรฉseau car il est gรฉnรฉrateur de trafic. De plus, la frรฉquence de collecte doit รชtre choisit en fonctiondu nombre des รฉquipements supervisรฉs ce qui constitue une limite pour un large passage ร  lโ€™รฉchelle.
Le standard SNMP est utilisรฉ dans le cadre dโ€™une supervision ยซ onlineยป et donc hรฉrite des avantages et des inconvรฉnients de ce type de supervision. La synchronisation est rรฉalisรฉe au niveau de la machine dโ€™administration qui constitue dโ€™ailleurs le point ยซ chaud ยป de lโ€™architecture dโ€™une plate-forme de supervision utilisant SNMP.

Eclipse TPTP

Introduction

Eclipse est un environnement de dรฉveloppement intรฉgrรฉ (IDE), ouvert et open source. Le projet a รฉtรฉ lancรฉ par IBM et largement utilisรฉ grรขce ร  son architecture basรฉe sur les plug-ins.
Le projet Eclipse Test & Performance Tools Platform(TPTP), anciennement appelรฉ Hyades, est un ensemble de plug-ins Eclipse dรฉveloppรฉs en licence EPL . Il a รฉtรฉ lancรฉ en 2002, et est soutenu par des grands acteurs industriels tels queIntel, IBM, Computer Associates, Scapatech, etc.

Discussion

NAGIOS est un framework de supervision dotรฉ de mรฉcanismes de notifications pour envoyer des messages dรจs quโ€™un comportement anormal est dรฉtectรฉ. Son architecture est hiรฉrarchique et nรฉcessite le dรฉploiement dโ€™un dรฉmon sur chaque machine supervisรฉe. Ce dรฉmon a la tรขche dโ€™exรฉcuter pรฉriodiquement les sondes locales et dโ€™envoyer les informations collectรฉes vers le moteur dโ€™exรฉcution de NAGIOS.
La communication entre le dรฉmon NRPE et le moteur dโ€™exรฉcution est synchrone ce qui augmente le trafic รฉchangรฉ sur le rรฉseau. De plus, lโ€™architecture ยซ pseudo ยป-fermรฉe de NAGIOS ne permet par dโ€™insรฉrer des traitements supplรฉmentaires entre la phase de collecte et la phase de prรฉsentation. De plus, il est difficile dโ€™adapter NAGIOS pour quโ€™il puisse prendre en charge les informations collectรฉes par des outils externes (i.e. rรฉsultats dโ€™OpenSTA ). Malgrรฉ les limites du framework NAGIOS, son รฉtude a permis dโ€™identifier diverses techniques/scripts pour collecter les informations sur lโ€™utilisation des ressources systรจme et sur la charge du rรฉseau.

LeWYS (Lewys is Watching Your System)

Prรฉsentation

Nous clรดturons cet รฉtat de lโ€™art avec un projet issu de la recherche acadรฉmique sur les modรจles de composants. LeWYS est une bibliothรจque de sondes dรฉveloppรฉes ร  l’aide du modรจle FRACTAL (Cf. ANNEXE E). L’objectif de ce projet estde fournir un canevas gรฉnรฉrique pour construire des systรจmes de supervision de tailles variables.
LeWYS est implรฉmentรฉ en java en utilisant les API Julia et sโ€™appuie sur la bibliothรจque DREAM (Cf. ANNEXE E) pour diffuser les informations collectรฉes par les sondes. Cette bibliothรจque sโ€™intรจgre plus facilement dans LeWYS car tous les deux sont basรฉs sur le mรชme modรจle de composant FRACTAL.

Synthรจse

Le but de ce chapitre est de montrer le contexte technologique de la thรจse, et en particulier les principaux standards et plates-formes de supervision. En plus du standard SNMP, nous avons รฉtudiรฉ trois autres solutions qui nous semblent reprรฉsentatives du reste et qui se distinguent par leurs architectures et leurs modes de fonctionnement. Ces solutions sont la plate-forme TPTP, le framework NAGIOS et la bibliothรจque LeWYS.
A travers une รฉtude comparative, nous exposons les principaux atouts et faiblesses des ces solutions et nous discutons la possibilitรฉ de rรฉpondre totalement ou partiellement aux trois exigences que nous avons fixรฉ, ร  savoir : la faibleintrusivitรฉ, la possibilitรฉ dโ€™intรฉgrer des sondeshรฉtรฉrogรจnes et le dรฉcouplage entre lโ€™acquisition etla prรฉsentation des informations collectรฉes.
La plate-forme TPTP fournit une solution globale aux diverses fonctionnalitรฉs allant du domaine du test jusquโ€™ร  lโ€™activitรฉ de monitoring et de profiling des applications java. La fonctionnalitรฉ de monitoring, qui nous intรฉresse en particulier, est assurรฉe par un ensemble dโ€™agents capables de mesurer lโ€™activitรฉ des systรจmes Linux et Windows. Ses agents sont dรฉployรฉs sur la machine observรฉe et communiquent avec le client (console Eclipse) ร  travers le contrรดleur dโ€™agent appelรฉ ยซ RAC ยป qui est aussi installรฉ sur la mรชme machine. Ce dernier, assure plusieurs tรขches dont le filtrage et la miseen forme des informations collectรฉes par les agents. Ces diffรฉrentes tรขches requiรจrent des ressources systรจmes ce qui augmente lโ€™intrusivitรฉ de cette solution. Les deux autres exigences semblent difficilement rรฉalisables et en particulier lโ€™intรฉgration des informations hรฉtรฉrogรจnes. En effet, le monitoringdans TPTP ne propose pas de mรฉcanisme pour importer des fichiers et mรชme si on dรฉveloppe un agent pour le faire, il serait difficile de gรฉrer lโ€™horodatage des informations contenues dans ces fichiers.

Prรฉsentation des rรฉsultats

Au terme de la phase de traitement, la phase de prรฉsentation a pour objectif de permettre une exploitation facile des informations collectรฉes. Gรฉnรฉralement, les reprรฉsentations graphiques sont les mieux adaptรฉes pour avoir une vue de lโ€™ensemble des rรฉsultats et faciliter la tรขche de corrรฉlation et de diagnostic.
Le module de prรฉsentation prend en entrรฉe des fichiers homogรจnes quโ€™il analyse pour extraire les valeurs des mรฉtriques ร  reprรฉsenter. Le format adoptรฉ pour les fichiers en sortie est le CSV (Comma-separated values) dans lequel les valeurs sont sรฉparรฉes par des virgules.

Le rapport de stage ou le pfe est un document dโ€™analyse, de synthรจse et dโ€™รฉvaluation de votre apprentissage, cโ€™est pour cela chatpfe.com propose le tรฉlรฉchargement des modรจles complet de projet de fin dโ€™รฉtude, rapport de stage, mรฉmoire, pfe, thรจse, pour connaรฎtre la mรฉthodologie ร  avoir et savoir comment construire les parties dโ€™un projet de fin dโ€™รฉtude.

Table des matiรจres
PARTIE 1 INTRODUCTION
A. Introduction
1. La performance des applications : un enjeu de taille
2. Les outils dโ€™รฉvaluation des performances
3. Plan du document
PARTIE 2 ETAT DE Lโ€™ART
B. Concepts de base de la qualitรฉ de service et de lโ€™รฉvaluation des performances
1. Qualitรฉ de service
1.1. Dรฉfinitions
1.2. Gestion de la QoS
1.2.1. Composantes de la gestion de QoS
1.2.2. Niveaux dโ€™intervention pour la gestion la QoS
1.2.3. Niveau rรฉseau
1.2.4. Niveau systรจme
1.2.5. Niveau intergiciel ยซ middleware ยป
1.2.6. Niveau applicatif
1.3. Synthรจse
2. Concepts de lโ€™รฉvaluation des performances systรจmes
2.1. Dรฉfinitions
2.2. Intรฉrรชts de lโ€™รฉvaluation des performances systรจme
2.3. Les techniques dโ€™รฉvaluation des performances
3. Besoins de lโ€™industrie
3.1. Performance de la plate-forme de supervision
3.1.1. Intrusivitรฉ des sondes
3.1.2. Masse dโ€™information
3.1.3. Synthรจse
3.2. Lโ€™intรฉgration des sondes hรฉtรฉrogรจnes
3.2.1. Introduction
3.2.2. Contrainte dโ€™hรฉtรฉrogรฉnรฉitรฉ
3.2.3. Synthรจse
3.3. Dรฉcouplage entre la collecte et la prรฉsentation
3.3.1. Introduction
3.3.2. Intรฉrรชt du dรฉcouplage
4. Conclusion
C. Outils et techniques de mesure des performances systรจmes
1. Standard SNMP
1.1. Principe
1.2. MIB
1.3. Atouts et faiblesses du standard SNMP
1.4. Discussion
2. Eclipse TPTP
2.1. Introduction
2.2. Architecture de TPTP
2.3. Atouts et faiblesses de la plate-forme TPTP
2.4. Discussion
3. NAGIOS
3.1. Prรฉsentation
3.2. Architecture
3.3. Atouts et faiblesses de la plate-formeNAGIOS
3.4. Discussion
4. LeWYS (Lewys is Watching Your System)
4.1. Prรฉsentation
4.2. Architecture
4.3. Atouts et faiblesses de la bibliothรจque LeWYS
4.4. Discussion
5. Synthรจse
PARTIE 3 CONCEPTION & MISE EN OEUVRE
D. Conception.
1. Rappel de la problรฉmatique
2. Description du framework de supervision
2.1. Introduction
2.2. Architecture physique
2.3. Dรฉroulement dโ€™une supervision
2.4. Architecture logicielle de la plate-forme
2.5. Description des composants de la plate-forme
2.5.1. Les sondes
2.5.2. Moteur de traitement
3. Conclusion
E. Mise en oeuvre
1. Introduction
2. Implรฉmentation dโ€™une sonde
2.1. Sonde Vmstat
2.1.1. Description de la sonde
2.1.2. Implรฉmentation
2.2. Autres exemples de sondes
3. Implรฉmentation du moteur de traitement
3.1. Lโ€™analyseur ยซ parseur ยป
3.2. Structuration des informations
3.3. Le module dโ€™export ยซ outputter ยป
3.4. Crรฉation de lโ€™adaptateur
4. Fonctionnement de la plate-forme
4.1. Tรขche de transfert des fichiers
4.2. Tรขche de pilotage des sondes
4.3. Tรขche de traitement des fichiers de rรฉsultat
4.4. Tรขche de reporting
5. Conclusion
PARTIE 4 EXPERIMENTATIONS
F. Validation expรฉrimentale
1. Description du contexte de lโ€™expรฉrimentation
1.1. Plate-forme expรฉrimentale
1.2. Dรฉmarche expรฉrimentale
2. Bilan de lโ€™expรฉrimentation
2.1. Intrusivitรฉ au niveau des ressources systรจmes
2.1.1. Rรฉsultats
2.1.2. Analyses
2.2. Passage ร  lโ€™รฉchelle ยซ scalability ยป
2.2.1. Conclusions
2.3. Intrusivitรฉ au niveau des ressources rรฉseaux
2.3.1. Cas TPTP
2.3.2. Cas SNMP
2.3.3. Conclusion
2.3.4. Effet de lโ€™intrusivitรฉ sur la bande passante
3. Conclusion gรฉnรฉrale
G. Cas dโ€™utilisation de la plate-forme de supervision
1. Premier exemple : Test de montรฉe en charge
1.1. Description de la plate-forme de test
1.2. Dรฉroulement du test
1.3. Rรฉsultats et analyses
2. Deuxiรจme exemple : plate-forme dโ€™observation rรฉactive
2.1. Description
2.2. Mise en ล“uvre
PARTIE 5 CONCLUSIONS & PERSPECTIVES
H. Conclusion et perspectives
1. Conclusion
2. Perspectives
PARTIE 6 ANNEXE
ANNEXE A. Network Time Protocol
ANNEXE B. Oids des ressources systรจmes
ANNEXE C. TPTP (Test & Performance Tools Platform)
ANNEXE D. NAGIOS
ANNEXE E. FRACTAL & DREAM
ANNEXE F. Format CBE (Common Based Event)
ANNEXE G. Les mรฉtriques collectรฉes par Vmstat
ANNEXE H. Performance dโ€™une analyse statique Vs une analyse basรฉe sur des rรจgles
ANNEXE I. Simple Event Correlator
PARTIE 7 BIBLIOGRAPHIE

Lire le rapport complet

Tรฉlรฉcharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiรฉe. Les champs obligatoires sont indiquรฉs avec *