Les trois couches de virtualisation
Prรฉsentation du contexte
Le besoin a toujours guidรฉ lโรชtre humain ร de grandes inventions. La mise en place et le dรฉveloppement dโinfrastructure a eu et continu dโavoir un grand impact sur notre mode vie. La crรฉation des chemins de fer, des routes, des rรฉseaux รฉlectriques, des rรฉseaux tรฉlรฉphoniques, etc. ont changรฉ notre mode de vie, non seulement sur lโaspect รฉconomique, oรน ces infrastructures supportent des industries de plusieurs milliards de dollars, mais aussi sur lโaspect social (Cronon, 1992). Sans ces infrastructures, notre vie ne sera pas semblable ร celle quโon connait actuellement. Malgrรฉ le fait que ces infrastructures soient en apparence diffรฉrentes, elles partagent un ensemble de caractรฉristiques communes. Pour รฉtudier lโimpact, sur nos sociรฉtรฉs, du dรฉveloppement dโinfrastructure dans le domaine des technologies de lโinformation, la comparaison peut รชtre faite avec les autres types infrastructures. En effet, lโinfrastructure de transport a participรฉ ร la crรฉation et au dรฉveloppement de villes entiรจres. De la mรชme faรงon, lโinfrastructure informatique regroupe autour dโelle des gens, des organisations et des compagnies, qui sont intรฉressรฉs par lโinformation, les services et les applications quโoffre le web, et qui permettent de faciliter le travail, le commerce, etc. Cette activitรฉ humaine sur Internet gรฉnรจre une grande quantitรฉ de donnรฉes sous plusieurs formes : textuelles et non textuelles, structurรฉes, semi structurรฉes ou non structurรฉes. Plusieurs applications, notamment dans le domaine scientifique, produisent aussi dโรฉnormes quantitรฉs de donnรฉes telles que les projets de recherches sur le gรฉnome humain, lโastronomie, la physique comme le projet du grand collisionneur dโhadrons qui va thรฉoriquement, gรฉnรฉrer une grande quantitรฉ de donnรฉes (Baud, Casey, Lemaitre, & Nicholson, 2005). Ces donnรฉes doivent รชtre stockรฉes, analysรฉes et traitรฉes. Cependant, les ressources disponibles ne sont pas souvent suffisantes pour rรฉpondre ร la demande croissante en matiรจre dโinfrastructure informatique nรฉcessaire ร cet effet. La derniรจre dรฉcennie a vu naitre un nouveau paradigme, en lโoccurrence la virtualisation, qui a pour objectif de rรฉsoudre le problรจme de la demande en matiรจre dโinfrastructure. Basรฉe sur lโidรฉe du partage et de lโutilisation des ressources communes, cette idรฉe nโest pas aussi rรฉcente. En effet, on a dรฉjร partagรฉ les supercalculateurs. Historiquement, la technologie des grilles informatiques est la premiรจre technologie qui a permis le partage dโun grand nombre de types de ressources gรฉographiquement distantes. De nouvelles technologies de virtualisation ont รฉmergรฉ rรฉcemment, en lโoccurrence les technologies des nuages informatiques qui consistent tout particuliรจrement ร partager des ressources. Les fournisseurs dโinfrastructures mettent en commun un ensemble de ressources dans un espace accessible aux diffรฉrents usagers autorisรฉs ร utiliser ces infrastructures. Les nuages informatiques offrent un accรจs orientรฉ service pour une vaste gamme de ressources, matรฉrielles ou logicielles. Lโintรฉrรชt suscitรฉ par les nuages informatiques ne cesse de prendre de lโampleur, aussi bien dans les milieux industriels que dans les milieux acadรฉmiques. En comparant aux technologies des grilles, lโaccรจs aux ressources sโeffectue dโune faรงon plus fiable et plus transparente. Les nuages informatiques en particulier et les organisations virtuelles en gรฉnรฉral offrent une grande quantitรฉ de ressources hรฉtรฉrogรจnes. On peut trouver diffรฉrents types de ressources : des serveurs, des supports de stockages, des supercalculateurs, etc. avec diffรฉrents systรจmes dโexploitation comme Windows, Linux, MAC OS, des micrologiciels qui font fonctionner certain type de ressources, et mรชme pour chaque type de ressource on peut trouver diffรฉrentes versions de systรจme dโexploitation ou micro logiciel. Cette flexibilitรฉ permet aux fournisseurs ainsi quโaux utilisateurs de virtualiser et de partager un grand nombre de types de ressources hรฉtรฉrogรจnes. Mais aussi, elle les met devant de grands dรฉfis. Lโun des problรจmes auquel il faut faire face est le problรจme de la description et de la recherche des ressources dans un environnement virtuel. Un utilisateur qui souhaite soumettre des tรขches ร un systรจme virtuel doit dโabord chercher les ressources nรฉcessaires pour lโexรฉcution de ses tรขches. Un problรจme clรฉ dans la mise en ลuvre dโune telle technologie est le systรจme de dรฉcouverte de ressources. Un mรฉcanisme de virtualisation, que ce soit, un nuage informatique ou une grille informatique, doit se doter dโun systรจme adรฉquat. Les traditionnelles mรฉthodes de recherche des ressources web se basent sur une recherche avec des mots clรฉs qui reprรฉsentent au mieux la ressource nรฉcessaire ร l’exรฉcution d’une tรขche spรฉcifique. Cette mรฉthode consiste ร retourner les ressources dont les descriptions contiennent les mรชmes mots clรฉs que comporte la requรชte. Malheureusement, cette mรฉthode ne donne pas satisfaction dans le cas ou les ressources sont mal dรฉcrites, de mรชme si les requรชtes des utilisateurs manquent de prรฉcision ou comportent des confusions. Car souvent, les utilisateurs ne sont pas capables de bien spรฉcifier leurs besoins oรน ne choisissent pas les mots les plus significatifs. Par ailleurs, plusieurs ressources sont dรฉcrites avec des mots clรฉs diffรฉrents que ceux utilisรฉs par lโusager dans sa requรชte, mais sont sรฉmantiquement identiques. Ces ressources ne seront malheureusement pas retournรฉes. Tout รงa conduit ร une sous exploitation des ressources et du potentiel existant.
Problรฉmatique
Si la virtualisation se positionne comme une solution prometteuse face ร lโaugmentation de la demande en matiรจre dโinfrastructure informatique, la recherche des ressources dans le contexte des organisations virtuelles interconnectรฉes via Internet peut รชtre une fastidieuse tรขche. En effet, afin dโรชtre performant et efficace, un systรจme de recherche de ressources web, dans le contexte des nuages informatiques, doit absolument rรฉpondre aux questions suivantes : โข Comment modรฉliser et dรฉcrire des ressources qui sont hรฉtรฉrogรจnes ? Pour que le systรจme de dรฉcouverte de ressource soit capable de retrouver les ressources souhaitรฉes, il est primordial de trouver une mรฉthode avec laquelle les ressources peuvent รชtre modรฉlisรฉes et dรฉcrites. โข Comment reprรฉsenter les ressources ? 4 Afin quโun systรจme de dรฉcouverte de ressources puisse retrouver la ressource souhaitรฉe dans un environnement distribuรฉ, les ressources doivent รชtre reprรฉsentรฉes dโune maniรจre efficace. Chaque ressource doit รชtre adressable convenablement et de la meilleure faรงon. โข Comment rรฉsoudre le problรจme de la prรฉcision? Tout systรจme de recherche doit รชtre prรฉcis et le rรฉsultat doit comporter le moins que possible de ressources non souhaitรฉes. โข Comment rรฉsoudre le problรจme de la sรฉmantique ? Un systรจme de recherche dans un contexte de nuage informatique doit aller au-delร des mots clรฉs et trouver les ressources qui sont dรฉcrites avec des mots syntaxiquement diffรฉrents, mais sรฉmantiquement identiques. Par exemple, une ressource qui dรฉcrit un serveur qui possรจde un systรจme dโexploitation Ubuntu peut รชtre compatible avec une ressource possรฉdant un systรจme dโexploitation Fedora. Elles font partie du mรชme groupe, ร savoir celui des ressources qui possรจdent un systรจme dโexploitation Linux. โข Comment traiter les requรชtes des utilisateurs ? Les requรชtes des utilisateurs peuvent รชtre ambigรผes ou comprendre des mots clรฉs qui ne sont pas les plus communs. Le traitement des requรชtes peut augmenter les performances dโun systรจme de dรฉcouvert de ressources. Par exemple, une requรชte formulรฉe de la maniรจre suivante : {โโUbuntuโโ, โโ512 Moโโ, โโHDD=30 Gโโ} doit รชtre prise en charge. Pour cela elle peut รชtre reformulรฉe en une requรชte type, en ajoutant dโautres indications, comme suit : {โโsystรจme dโexploitation=Ubuntuโโ, โโMรฉmoire=512 Moโโ, โโdisque dure=30 Gโโ}.
|
Table des matiรจres
CHAPITRE 1 INTRODUCTION
1.1 Prรฉsentation du contexte
1.2 Problรฉmatique
1.3 Objectifs
1.4 Plan du mรฉmoire
CHAPITRE 2 LA VIRTUALISATION
2.1 Introduction
2.2 Organisation virtuelle
2.3 Les trois couches de virtualisation
2.3.1 La couche application
2.3.2 La couche service
2.3.3 La couche infrastructure
2.4 La technologie des grilles
2.4.1 La gestion dรฉcentralisรฉe des ressources
2.4.2 Standard et code source libre
2.4.3 Qualitรฉ de service
2.5 Lโarchitecture dโune grille
2.5.1 La couche Applications
2.5.2 La couche collective
2.5.3 La couche de ressources
2.5.4 La couche connectivitรฉ
2.5.5 La couche fabrique
2.6 Open Grid Service Architecture (OSGA)
2.7 Les types de grilles
2.7.1 Grille de calcul
2.7.2 Grille de donnรฉes
2.8 Web Services Resource Framework WSRF
2.8.1 Service Web
2.8.2 Invocation dโun service Web
2.8.3 Architecture dโun Service Web
2.8.4 Le protocole SOAP
2.8.5 Web Service Description Language
2.8.6 Service Resource Framework
2.8.7 La ressource dans le contexte des grilles
2.8.8 WS-Resource
2.8.9 Les spรฉcifications des WSRF
2.9 Globus toolkit
2.9.1 Lโarchitecture de Globus
2.10 La dรฉcouverte des ressources dans un environnement virtuel
2.11 Monitoring and Discovery Services (MDS)
2.11.1 Service d’index
2.11.2 Dรฉclencheur (Trigger)
2.11.3 Aggregator Framework
2.11.4 L’interface utilisateur WebMDS
2.12 La dรฉcouverte des ressources et la sรฉmantique
2.13 Conclusion
CHAPITRE 3 LE NUAGE INFORMATIQUE
3.1 Introduction
3.2 Les nuages informatiques
3.2.1 Le logiciel comme service SaaS
3.2.2 La plate forme comme service PaaS
3.2.3 Lโinfrastructure comme service IaaS
3.3 Architecture dโun nuage de calcul
3.4 Nuage versus grille
3.4.1 Similaritรฉs
3.4.2 Diffรฉrences
3.5 IaaS inocybe
3.5.1 Le module ressource
3.5.2 Lโarchitecture du module ressource
3.5.3 Le module modรจle
3.5.4 Le module capacitรฉ (capability)
3.5.5 Le module persistance
3.5.6 Le module service
3.6 Open Services Gateway Initiative (OSGI)
3.6.1 Le paquet OSGI
3.6.2 Le fichier manifeste
3.7 Le Framework OSGI
3.7.1 La couche sรฉcuritรฉ
3.7.2 La couche module
3.7.3 La couche cycle de vie
3.7.4 La couche service
3.8 Conclusion
CHAPITRE 4 LE CADRE DE DรCOUVERTE DE RESSOURCE WEB BASร SUR
LโONTOLOGIE ET LE RรSEAU BAYรSIEN
4.1 Introduction
4.2 Les spรฉcifications de la recherche des ressources
4.3 Le Web sรฉmantique
4.4 RDF
4.5 Mรฉthodologie
4.6 Le cadre de dรฉcouverte des ressources
4.6.1 Fournisseur d’infrastructure
4.6.2 Utilisateurs finaux
4.6.3 Fournisseur de service
4.7 La base de connaissance
4.8 Lโontologie
4.8.1 Le concept
4.9 Mรฉthode de construction dโune ontologie
4.9.1 Dรฉterminer le domaine de l’ontologie
4.9.2 Dรฉterminer les ontologies existantes qui sont proches
4.9.3 Dรฉterminer les classes et la hiรฉrarchie
4.9.4 Dรฉterminer la terminologie de l’ontologie
4.10 Le thรฉsaurus
4.11 Rรฉseau Bayรฉsien
4.11.1 Rรฉseau Bayรฉsien pour la recherche d’informations
4.11.2 Lโanalyseur sรฉmantique Bayรฉsien
4.12 Conclusion
CHAPITRE 5 EXPรRIMENTATIONS ET DISCUSSION
5.1 Introduction
5.2 Le Green Star Network
5.3 Dรฉploiement de GSN
5.4 Ontologie
5.5 Construction du banc de test
5.6 Test de performance
5.7 Dรฉcouverte des ressources selon les รฉmissions du CO2
5.8 Conclusion
CONCLUSION
ANNEXE I EXEMPLE DโUN FICHIER WSDL2.0
ANNEXE II FICHIER RDF
LISTE DE RรFรRENCES BIBLIOGRAPHIQUES
Tรฉlรฉcharger le rapport complet