Passer au contenu

Virtualiser l’accès aux ressources

ncore réservés aux scientifiques, les middleware évoluent vers une architecture standard orientée services web pour entrer en entreprises.

Le concept clé du Grid Computing est la capacité de partager de façon standard des ressources informatiques et de permettre aux utilisateurs d’y accéder selon leurs besoins, sans qu’ils aient à se soucier de l’infrastructure technique sous-jacente”, explique Ian Foster, responsable du projet Globus à l’Argonne National Laboratory. Ce partage dispense d’avoir à acquérir de nouvelles machines, car il permet d’optimiser l’utilisation des ressources existantes. Chaque participant de la grille peut y utiliser un espace de stockage et des cycles CPU en fonction de ses besoins et de la disponibilité des éléments de la grille. Cette évolution s’explique par les besoins toujours plus importants des scientifiques en puissance de calcul et en espace de stockage, ainsi que par la volonté des entreprises de consolider leur infrastructure informatique, dont les cycles CPU ne sont utilisés qu’à 20 % en moyenne.

Un assemblage novateur

Sur le fond, les grilles étendent simplement les pratiques courantes des centres de calcul à Internet. Des calculs distribués sont exécutés en batch (par lots) sur les machines distantes. “Les technologies en production ne sont pas très novatrices. C’est l’assemblage qui est novateur, ainsi que l’ouverture des centres de calcul et la virtualisation nécessaire qui accompagne cette démarche”, estime Frédéric Desprez, chercheur à l’lnria. “La construction d’une grille se résume actuellement à créer un index des ressources, à installer des outils d’ordonnancement [de scheduling, Ndlr] permettant de distribuer et de coordonner les tâches à exécuter, et à installer les protocoles d’authentification et de transport qui assureront les échanges en toute sécurité”, détaille Bruno Emsellem, directeur technique de GridXpert, éditeur d’une suite logicielle d’accès et de mise en ?”uvre sécurisée de projets de Grid Computing. Parmi les nombreux outils issus des laboratoires de recherche, le kit de développement de Globus, le projet le plus avancé, s’impose peu à peu comme un standard de fait pour répondre à ces besoins. Cet outil open source est distribué par IBM et il est également incorporé au kit de développement d’Oracle.Pour permettre aux participants de la grille d’interagir, un annuaire recense les caractéristiques de chacune des ressources matérielles. La découverte de celles-ci s’appuie sur le Grid Index Information Service (GIIS), qui agrège l’information relative aux caractéristiques et à l’état de chaque ressource – taux de charge, indisponibilité… -, géré par les Grid Resource Information Services (GRISes).

Exécuter des tâches distantes

Concernant la sécurité, “un certificat dit de ” proxy ” est créé à partir de celui de l’utilisateur et véhiculé sur la grille. Il sert de représentant à l’utilisateur, permet son authentification sur les serveurs locaux, et ainsi, par délégation, autorise l’accès aux ressources”, synthétise Bruno Emsellem. Un gestionnaire de tâches, installé devant les ressources de la grille, distribue alors l’exécution des programmes. Il gère également les files d’attente et informe le gestionnaire de tâches client de l’état d’avancement des traitements.Il existe deux façons de consommer les ressources de la grille du côté du client : effectuer l’ensemble des manipulations en ligne de commandes, en utilisant le langage RSL (Resource Specification Language) pour spécifier les tâches de calcul à effectuer et les caractéristiques des ressources cibles ; ou directement depuis un programme par des API du cadre. Le Globus Resource Allocation Manager (GRAM) permet de piloter des gestionnaires de tâches hétérogènes – tels que LSF, LoadLeveler, PBS, ou Condor – disponibles parmi les ressources de la grille. Ces gestionnaires de tâches locaux sont chargés d’ordonnancer l’exécution des programmes sur la ou les ressources qu’ils contrôlent par la gestion des files d’attente, et d’informer l’applicatif client de l’état d’avancement des tâches.L’allocataire de ressources, tel que Gram dans le cadre du projet Globus, est l’une des briques fondamentales des grilles de calcul. Il s’appuie sur les informations fournies par les annuaires tels que GIIS pour distrubuer les tâches vers les n?”uds les moins chargés. Certains sont capables de réaffecter des tâches à d’autres n?”uds de la grille lorsque le temps de calcul nécessaire se révèle plus important que prévu et que la ressource utilisée pour exécuter le traitement doit être libérée. “Sans gestionnaire de tâches local, l’affectation d’un traitement par Globus se résume à un simple fork [commande shell Unix, Ndlr]”, relève Bruno Emsellem.Dans la majorité des cas, affecter une tâche à un n?”ud revient à choisir sur quelle machine sera exécuté un script ou un programme Unix, et à transférer les données par GridFTP pour Globus ou FTA pour Platform. Aujourd’hui, le programme est le plus souvent déjà installé sur la machine distante, ou compilé juste avant exécution puis transféré vers la cible choisie.

Accéder aux données

La manipulation des données est l’autre volet important des grilles de calcul. En effet, déplacer des petaoctets d’informations (1 000 millions de mégaoctet) d’un n?”ud de la grille à l’autre peut être particulièrement long. Les protocoles tels que GridFTP et les technologies associées proposent donc des solutions plus légères. Des annuaires, tels que Globus Replica Location Services, indiquent sur quel n?”ud de la grille se trouvent les fragments de données pour éviter des duplications inutiles. Il existe d’autres technologies dans ce domaine, comme le couple L-Bone/IBP du Loci ou le Storage Resource Broker (SRB) du San Diego Supercomputer Center. Ce dernier, un middleware client-serveur, permet en outre de se connecter à des sources de données hétérogènes.

La grille en ASP

Les technologies dans leur ensemble étant encore immatures et coûteuses à mettre en ?”uvre, IBM parie sur un concept à mi-chemin entre mode FAH (fournisseur d’applications hébergées) et Grid. Le On-Demand Computing vise à partager les besoins de ressources chez un fournisseur, qui ne loue aux entreprises que la puissance de calcul dont elles ont besoin. “Cette externalisation est séduisante”, estime Guillaume Alleon, chercheur au GIE EADS CCR. En effet, elle apporte de la flexibilité et évite d’avoir à investir dans une infrastructure informatique très onéreuse. Les pionniers du On-Demand Computing seront peut-être les WorldCom de demain. Mais ils devront d’abord rassurer les entreprises sur leur capacité à fournir un niveau de sécurité parfait.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Frédéric Bordage et Jérôme Saiz