3.2.1.2 Globus Toolkit3 [42]
Dans cette version de globus nous voyons l'apparition des
services de grille qui sont tout simplement une combinaison
des services web et les technologies de grille. De ce fait nous allons voir
apparaître de nouvelles notions l'OGSA et l'OGSI
L' OGSA (Open Grid storage
Architecture)
OGSA [43] est née sur la base d'un
changement de paradigme dans le monde du génie logiciel,
c'est-à-dire d'un passage d'une vision orientée système
vers une vision orientée service. Elle permet de marier les services web
et les technologies de grid, son objectif est d'exposer chaque ressource et
chaque noeud de la grille sous la forme d'un service web, en fait il permet de
spécifier les bases des grilles de calcul. OGSA définit la notion
de Service de Grille comme étant un Service Web enrichi par des
fonctionnalités de grille, fournissant un ensemble d'interfaces bien
définies. Ces interfaces adressent des requêtes de
découverte, de création et de gestion d'un service.
[Marie Hélène Wassa Mballo] Page 58
PortType(WSDL)
|
Opération
|
Description
|
GridService
|
FindServiceDate
|
Trouver les informations concernant l'instance du service
|
SetTreminationTime
|
Indiquer le temps de terminaison d'une instance d'un service
|
Destroy
|
Terminer une instance d'un service
|
NotificationSource
|
SuscribeToNotificationTopic
|
S'inscrire pour recevoir des notifications lorsque certain
évènement se produisent au niveau d'un service
|
NotificationSink
|
DelivrerNotification
|
Notifier la survenue d'un évènement
|
Registry
|
DelivrerService
|
Enregistrer un service auprès de l'annuaire
|
UnregistrerService
|
Enlever un service auprès de l'annuaire
|
Factory
|
CreateService
|
Créer une nouvelle instance d'un service
|
Tableau 3.1 :tableau des interfaces définis
par OGSA
L' OGSI
En se basant à la fois sur les technologies de grille
et les Services Web, l'OGSI définie les mécanismes de
création, de gestion et d'échange d'informations entre les
services de grille. Cet échange comprend la découverte des
services déjà créés et leur utilisation qui permet
une gestion des services sur le long terme tout en étant
sécurisé et résistant aux pannes. OGSI spécifie les
services à implémenter pour enrichir OGSA, ces services sont les
suivants :
· Prot Type extension
· Factory : permet de créer de
nouvelles instances d'un service de grille. Il retourne le Grid Service Handle
(GSH) comme décrit ci dessous, et maintient un ensemble
d'éléments qui peuvent être demandés.
·
[Marie Hélène Wassa Mballo] Page 59
Grid Service Handle (GSH) c'est un URL
utilisé comme nom global pour une instance de service pour toute sa
durée.
· Notification: permet aux clients
d'être informés de certains évènements survenant au
niveau de la grille
· Grid Service Reference (GSR) : permet
de spécifier une instance et une version bien précise d'un
service. Un GSR a une durée de vie limitée et pourra varier
durant le cycle de vie du service.
· Query permet de donner le langage de
requête utilisé pour trouver des informations par rapport à
un service, donc le langage utilisé dans ce cas est le XPath ou le
XQuery
· Registry permet d'enregistrer
périodiquement les services de grille
· Data Elements : permet d'associer
à chaque instance des opérations pour contrôler et modifier
la valeur des données disponibles
· Lifecycle Management : permet de
gérer la durée de vie des instances de service
Ces services sont fournis par un service nommé
Service Index qui est un service d'information utilisant un
Framework extensible pour la gestion des données statiques et
dynamiques
Au niveau des services des web il y a l'intervention des
trois acteurs, de même dans le cas des services web avec des
fonctionnalités de grille nous avons également l'intervention de
ces trois acteurs et à la place de service nous retrouvons les
applications et données qui se trouvent au niveau des ressources
physiques. Le schéma ci-dessous montre l'utilisation des services web
avec des fonctionnalités de grille:
Figure 3.9 : utilisation
des web services dans la grille
Les trois caractéristiques des services web avec des
fonctionnalités de grille sont les suivantes:
[Marie Hélène Wassa Mballo] Page 60
UDDI
Est utilisé pour trouver et utiliser les services de
grille
· BusinessEntity : dans la grille ce
composant peut être utilisé pour séparer
hiérarchiquement et former des relations entre les différents
groupes organisationnels au sein d'une grille ou de plusieurs grilles
· BusinessService
· bindingTemplate
· tModel
Cependant, UDDI conçu comme un système
d'annuaire d'entreprise a certaines limitations qui compliquent donc la
découverte de ressources dans la grille, comme exemple de
difficulté que rencontrent l'UDDI est la nature dynamique de
l'information (charge CPU...), qui requiert de fréquentes mises à
jour.
Pour remédier à ces limitations la
découverte se fera par une approche d'agent ou de
requête.
GWSDL (Grid Web Service Description
Language)
Il a une structure très similaire au WSDL. Comme vu
précédemment OGSI a la possibilité d'ajouter de nouvelles
interfaces ou les redéfinir. Le portType de WSDL sera redéfinit
en y ajoutant de nouveaux attributs en fonction des besoins, ceci permettra
à l'utilisateur de connaître l'identifiant et les interfaces du
service et il pourra également connaître son état
SOAP (Simple Object Access Protocol)
Permet la transmission et la réception de messages
pour l'accès aux ressources distribuées. L'utilisation de SOAP
sur HTTP est très idéale pour les services de grille
> Service Web et Service de
grille
Un Service Web a certaines limitations, il est sans
état (stateless) de façon qu'il ne puisse pas sauvegarder le
résultat d'une invocation à une autre.
[Marie Hélène Wassa Mballo] Page 61
Une autre limitation est la non persistance,
c'est-à-dire si deux clients invoquent le même Service Web et que
le premier client décide d'arrêter ce service (arrêter le
container du services), le deuxième client sera pénalisé
et ne pourra pas profiter de ce Service Web. Le container d'un Service Web ne
peut pas faire la différence entre deux invocations différentes
du même service.
Cependant, les services de grille ont résolu ces
problèmes grâce au "service Factory" qui permet d'instancier le
service de grille et de retourner le GSR et GSH, donc chaque service de grille
aura un nom unique utilisé pour l'identification. De plus les services
de grille supportent la notion d'"Elément de Données de Service
(Service Data Element)" qui permet d'associer à chaque instance des
opérations pour contrôler et modifier la valeur des données
disponibles, et grâce à la gestion du cycle de vie (Lifecycle
management), on peut faire la gestion des durées de vie des instances
des services de grille. Le service "Notification" permet aussi de
bénéficier des interfaces pour enregistrer les inscriptions des
instances et délivrer des notification si certains
événements surviennent (exemple de modification des
données).
Avec ces informations précédentes nous pouvons
tout simplement dire que les services de grille sont des services web
enrichis
Cette version 3 de globus a été une grande
évolution de globus en introduisant les services web qui prennent
actuellement une grande place dans les applications scientifiques, mais cette
notion de
service web sera toujours introduite en y apportant des
modifications, de ce fait nous allons voir la version 4 de globus qui migre
carrément vers les services web
|