Virtualisation du Stockage dans les Grilles informatiques François Thiebolt, Ivan Frain, Abdelaziz M zoughi Université Paul Sabatier Toulouse III Institut de Recherche en Informatique de Toulouse - Irit 118 route de narbonne 31062 Toulouse Cedex - France {thiebolt,frain,mzoughi}@irit.fr Résumé La mobilisation, l administration et l accès aux ressources de stockage font partie des principaux défis des grilles informatiques. Elles doivent apporter un accès souple et transparent aux données tant du point de vue espace utilisateur, que du point de vue calcul hautes performances. Cette volonté d ouverture se manifeste notamment à travers la mise en œuvre d un système de fichiers ouvert capable d accepter sous forme de modules diverses politiques de gestion de verrous et de mutation par exemple. Les services de virtualisation, d administration et de monitoring affichent également la même ambition. Les espaces de stockage physiques hétérogènes sont agrégés en espaces de stockage virtuels. Ces derniers sont découpés en volumes de stockage logiques ayant différentes qualités de service. A une organisation virtuelle, composée d utilisateurs grille, seront affectés tout ou partie de ces volumes logiques. Cette architecture d un système de virtualisation du stockage sur grille, basée sur OGSA [9], pourrait être une base du projet RNTL ViSaGe 1. Labellisé pré-compétitif, ce dernier comprend le laboratoire Irit et les sociétés SeanodeS 2, CS et EADS. Mots-clés : Virtualisation du stockage, Espace virtuel, Qualité de service, Système de fichiers, Grid service. 1. Introduction Les grilles informatiques représentent un paradigme incontournable [10] dans l évolution des systèmes informatiques. Néanmoins, leur hétérogénéité intrinsèque pose de nombreux problèmes d interopérabilité, de management et de performance. Intercalés entre le noyau et les applicatifs, les intergiciels de grilles Diet [6], Legion [11], Globus [7], tendent tous à apporter une solution plus ou moins globale quant à l utilisation transparente des ressources. Nous sommes aujourd hui face à une grande diversité de solutions visant à la gridification du système et par voie de conséquence, son système de fichiers. Nombre d entre-elles Lustre [4], Gfarm [18], GFS [17], LégionFS [20] ne sont en aucune façon inter-opérables car ne respectant pas de standards communs tel que OGSA. Notre architecture adresse plus spécifiquement la problématique liée au stockage dans un environnement de type grille informatique. Notre approche est pour l essentiel décomposée en trois services qui sont la Virtualisation, le Système de fichier, l Administration et le Monitoring. 1 Ce projet est labellisé pré-compétitif par le ministère de la recherche et de l industrie au travers des Réseaux Nationaux de recherche en Technologies Logicielles (RNTL) sous le contrat n 04K459. 2 SeanodeS (ex. StorAgency) est issue de travaux de recherche menés à l Irit sur les politiques de placement de données [12] sur des ressources de stockage hétérogènes en environnement de type cluster.
Ces derniers naîtrons sous forme de services grille open source de quatrième génération s intégrant dans la structure Globus Toolkit 4 3 (GT4) [2]. L implémentation bénéficiera des Web Services stateful WSRF, d un adressage WS-Adressing, pleinement qualifiés ne nécessitant plus de translation coté serveur transcient grid service resolution, et de la normalisation de la notification asynchrone WS-Notification. Nous fédérons en espaces virtuels toutes les ressources de stockage physique mobilisables. Ces ensembles hétérogènes sont alors fragmentés en volumes logiques auxquels est associée une qualité de service (QoS) puis mis à disposition des utilisateurs d une organisation virtuelle (OV) [8]. Ceux-ci y accèdent au travers d un espace de nom unique et persistant avec une grande transparence d utilisation. Nous présentons l architecture globale en section 2, le service de virtualisation du stockage en section 3, le service de système de fichiers en section 4, les services d administration et de monitoring en section 5, les travaux relatifs en section 6 pour finalement conclure en section 7. 2. Architecture globale Les interactions entre sites appartenant à des domaines administratifs distincts induisent des problématiques multiples. Citons à titre d exemple les interconnexions réseaux faible bande passante et forte latence ainsi que les pare-feux associés à des politiques de sécurité locales restreignant le nombre de ports ouverts et enfin le cas des utilisateurs externes au domaine. A l échelle d une grille, la définition d organisations virtuelles et d utilisateurs associés partageant un ensemble de ressources constitue une première problématique. Une gestion centralisée basée sur LDAP assure une non prolifération d utilisateurs potentiellement capables de lancer des actions à l échelle de l intégralité de la grille. FIG. 1 Organisations hiérarchiques Notre approche consiste en une solution mixte basée sur une organisation hiérarchique multi-rangs [18] où chaque administrateur de site dispose de droits et de devoirs vis à vis de l organisation virtuelle auprès de laquelle il est enregistré. C est également lors de cet enregistrement que l administrateur du site met à disposition de l organisation tout ou partie des ressources propres à son domaine. Une organisation virtuelle définie au plus haut niveau de la hiérarchie (fig.1) va ainsi mobiliser et fédérer un ensemble de ressources hétérogènes mises à disposition par l ensemble des sites de rangs inférieurs. Cette hiérarchie sera structurée via les politiques du Certificate Authority (CA). La mise en application des droits des organisations virtuelles et de leurs utilisateurs associés est assurée par la réplication de serveurs LDAP. Cela nous affranchi des fichiers de translation vers des utilisateurs locaux [2] grid-map file, et assure une consistance des droits utilisateurs à l échelle de la grille. 2.1. Architecture de site Un site comprend un ou plusieurs serveurs LDAP, avec un administrateur doté de droits vis à vis de l organisation virtuelle. Ces droits s expriment au travers des outils d administration (cf. section 5 ) permettant par exemple, selon la politique héritée, de créer de nouveaux utilisateurs. 3 Attendu premier semestre 2005, GT4 sera implémenté à l aide de Web Services stateful (WSRF). Globus supporte la spécification d architecture OGSA depuis sa révision 3.
Le principe qui consiste à considérer un fichier comme une concaténation d objets [4, 19], induit une séparation entre les fonctions de management de fichiers file system directory et le stockage des données à proprement parler storage manager. Ces fonctions sont respectivement assurées par les serveurs de méta-données MDS Meta Data Server, et les serveurs de stockage OST Object Storage Target. Cela présente, entre autre, l avantage d une répartition de charge offrant une plus grande capacité de mise à l échelle du système de fichiers. Nous présentons par la suite comment et sous quelles conditions, à partir d une configuration initiale déterminant un rôle propre à chacun des nœuds OST et MDS, ceux-ci pourront muter. 2.2. Architecture logicielle La virtualisation du stockage offre trois interfaces d accès aux données, à savoir une API directement accessible par les clients MPI I/O, le système de fichiers, et une API directe pour les base de données. Cette couche virtualisation se charge de masquer la nature des ressources sous-jacentes [5] et d uniformiser leur accès NFS, base de données, OST, backup... Vis à vis des bases de données, la virtualisation leur permet également de stocker leurs bases au sein d un volume logique doté d une qualité de service adéquate. FIG. 2 Relations entre Clients et OSTs Dans l exemple (fig.2), le client établit une requête (1) propagée au MDS sélectionné. Ce dernier lui renvoie (2) un référentiel d objets. Le client transmet alors ce référentiel à sa couche virtualiseur (3). Celle-ci adresse la requête (4) à l OST le mieux adapté compte tenu des QoS et des modules installés au niveau du virtualiseur. Les transferts s opèrent alors directement entre le client et l OST (5). 3. Virtualisation Les difficultés liées à l exploitation optimale des ressources au sein d un cluster sont mises en exergue par la mise à l échelle imposée par la grille. Le service de virtualisation permet d uniformiser les accès à différents types de ressources base de données, système de fichiers distribué... mais est également un fédérateur de ressources de stockage hétérogènes SAN, NAS, etc. Basée sur l échange d objets entre clients et OSTs, notre approche permet de se contenter d interfaces Ethernet Gigabit présentes en standard dans la plupart des PC desktop 4. L originalité de la virtualisation vient de la connaissance très fine qu elle a du sous-système disque propre à chaque OST. Ces informations à disposition des différents modules plug-in, du virtualiseur permettent de proposer différents modèles de stripping, de réplication respectant la qualité de service espace temporaire, haute performances..., propre au volume logique. Situé au niveau des clients et des OSTs, le virtualiseur remplit une double fonction : collecte des caractéristiques du sous-système disque propre à chaque OST à destination des outils d administration ; 4 Icluster1 était en 2001 composé de 225 PC desktop HP Vectra d entrée de gamme interconnectés avec un réseau Ethernet 100Mbps. Il fut classé 330 ème au Top500.
FIG. 3 OST met en application les définitions des volumes logiques, quotas et qualité de service définis par les outils d administration. Les différentes qualités de service se présenteront sous la forme de modules plug-ins du virtualiseur. Ceux-ci définissent différentes politiques de stockage : modèles de réplication, de cohérence, de placement de données, etc. 4. Système de Fichiers A l instar de solutions récentes [4, 19], les fonctions de management de fichiers file system directory, sont dissociées de celles du stockage des données storage manager. Le clustering des MDS apporte à la fois redondance des méta-données et répartition de charge. L espace de nom global global name space, sera géré et transmis par le site principal (cf. section 5), avec la possibilité de points de montage initial propres aux nœuds [4]. Dans le cas du module résolution dynamique lookup [14], nous emploierons une méthode de résolution par référentiel. La mise en œuvre de politiques au niveau du CA, la réplication de bases LDAP et l authentification basée sur GSI Grid Security Information, engendre une vraie politique utilisateur à l échelle de la grille, à contrario des << grid-map file >> propres à globus. Afin de satisfaire aux exigences de QoS propres aux volumes logiques espace utilisateur, calcul hautes performances..., nous optons pour un modèle gestion de verrous inspiré de GPFS [16] à savoir, les verrous à gros grains gérés dans les MDS et les verrous à grains fins dans les OST. A l instar de [4], nous mettons également en œuvre un schéma de verrous basé sur les déclarations intent based locks scheme. 4.1. Mutation des rôles Si une définition statique des rôles MDS ou OST, propres à chacun des nœuds est bien adaptée à un environnement de type cluster, il en va tout autrement sur la grille où les latences d accès aux MDS de sites disjoints imposent la mise en œuvre de réplicats. En accord avec la politique de gestion définie par l administrateur, et à partir d informations collectées par les divers MDS du site, un module du système de fichiers va sélectionner un OST et provoquer une évolution du rôle de ce dernier en MDS architecture symétrique. 5. Administration et Monitoring Présents dans chacun des sites constituant la grille, la composante administration assure la mise en œuvre d une autorité globale sous le contrôle d un administrateur maître lié à sa définition d une organisation virtuelle. Celle-ci se compose d un ensemble d utilisateurs grille, de volumes logiques et d un espace de noms global global name space. Les volumes logiques sont issus d une classificaton capacité, débit, latence... des espaces de stockages fédérés par les sites sous-jacents lors de leur enregistrement auprès du site maître. Une qualité de service basée sur une combinaison de modèles de cohérence, caractéristique de performance stripping, chained declustering [13], mutation des rôles et de tolérance aux fautes réplication, mirroring, est alors attachée à chacun des volumes logiques.
De part le lien établi lors de l enregistrement avec le site maître, sont diffusés les évolutions de l OV utilisateurs, politiques..., qui en retour sont appréciées grâce à la composante monitoring répartie dans tous les sites. Celle-ci s établit sur la base d informations collectées au niveau du réseau network weather service [21], des MDS et OST à destination du monitoring site. Un module génère alors une synthèse pertinente de leur état afin de rendre compte auprès du site maître. 6. Travaux Relatifs Au sein du Global Grid Forum (GGF), le groupe de travail GFS-WG à entamé depuis 2004 un processus visant à la spécification d un système de fichiers pour grilles. Un document de travail définit la partie serveur de méta données (VFDS), mais pour l heure il n existe toujours pas de système de fichiers propre à globus, seul gridftp permet les transferts de données. Les deux groupes de travail DAIS-WG [1] et OGSA-DAI [3] ont pour objectif de fournir un accès aux bases de données relationnelles à l échelle de la grille, et ce dans le respect du standard OGSA. La différence tient au fait que le premier groupe permet un accès grille à des bases autonomes existantes. Le second, lui, se concentre sur la création de nouveaux services grille génériques comprenant en plus des accès aux données de fichiers XML semi-structurés. Le Storage Resource Broker (SRB) [5] a pour but essentiel l homogénéisation des ressources de stockage de la grille. Il permet l accès à des ressources telles que les systèmes de fichiers Unix, HPSS, les bases de données Oracle, DB2 ou encore Illustra. Cependant, leur approche ne fait pas apparaître la décompositon en objets des données stockés. Cela permettrait de mieux s adapter aux besoins des applications. Le projet Gfarm [18] est un intergiciel doté d un système de fichiers manipulant chaque année des péta octets de données issues d accélérateurs à particules. Afin de ne pas entraver les performances par une gestion de verrous, leur politique est de n avoir qu un seul écrivain ayant pour corollaire la création systématique d un nouveau fichier. Basé sur une sémantique propre, IBP [15] permet la gestion dynamique de dépôts de stockage temporaires associés à une notion de localité géographique. La persistance des données, uniquement assurée par réplication, est une opération à la charge du client. Enfin la sécurité des données est assurée par leur anonymat du fait de l absence de structure d indexation globale. Mentionnons enfin l existence des solutions propriétaires Data Grid d Avaki et Total Storage d IBM. 7. Conclusion La mise en œuvre d un système de stockage à l échelle d une grille introduit une souplesse sans commune mesure dans des tâches telles que le déploiement d applications, librairies et données. Le changement d échelle résultant du passage d un ensemble de ressources informatiques d un environnement de type cluster à celui de grille introduit des problématiques tolérances aux pannes, hétérogénéité de ressources, authentification des utilisateurs..., surmontées par l interopérabilité des intergiciels apportant la gridification du système. A l instar de solutions similaires (SRB, Total Storage), l objectif du projet RNTL ViSaGe est de permettre aux grilles de calcul actuelles d exploiter simplement et efficacement les ressources de stockage propres à chacun des nœuds composant la grille. En d autres termes, apporter aux grilles de calcul Computational Grid, les caractéristiques propres aux grilles de données Data Grid. Les services Virtualisation, Système de fichiers, Administration et Monitoring sont des services de grille intégrés au Globus ToolKit 4 (GT4). Ils ont le potentiel d accroître l efficacité globale des applications grâce à des politiques de placement de données innovantes plug-ins du virtualiseur. Ils mettent à disposition d organisations virtuelles des volumes logiques dotés de qualité de service propres et facilitent le déploiement et l administration de données dans la grille.
Les expérimentations seront menées sur les clusters de l Irit, SeanodeS, GridMIP 5, EADS et CS. Cela représente un potentiel de milliers de machines distribuées en une dizaine de sites géographiquement distincts. Hétérogénéité des interconnections Renater et WAN, mais également du matériel et plus précisément du sous système de stockage Disques Raid, IDE, Scsi, Fibre Channel, iscsi, permettront la mise à l épreuve de notre solution. Bibliographie 1. Database Access and Integration Services Working Group. http ://www.gridforum.org/. 2. The globus project. http ://www.globus.org. 3. Open grid service architecture data access and integration. http ://www.ogsadai.org.uk/. 4. Lustre : A scalable, high-performance file system, November 2002. Cluster File System Inc Team. 5. Baru (C.), Moore (R.), Rajasekar (A.) et Wan (M.). The SDSC Storage Resource Broker. In : Proceedings of CASCON 98, Toronto, Canada. 1998. 6. Caron (Eddy), Desprez (Frederic), Lombard (Frédéric), Nicod (Jean-Marc), Philippe (Laurent), Quinson (Martin) et Suter (Frédéric). A scalable approach to network enabled servers (research note). In : Euro-Par 02 : Proceedings of the 8th International Euro-Par Conference on Parallel Processing. pp. 907 910. Springer-Verlag, 2002. 7. Foster (I.) et Kesselman (C.). Globus : A metacomputing infrastructure toolkit. The International Journal of Supercomputer Applications and High Performance Computing, vol. 11, n2, Summer 1997, pp. 115 128. 8. Foster (I.), Kesselman (C.) et Tueke (S.). The anatomy of the grid - enabling scalable virtual organizations. Intl J. Supercomputer Applications, 2001. 9. Foster (Ian), Kesselman (Carl), Nick (Jeffrey M.) et Tuecke (Steven). The physiology of the grid - an open grid services architecture for distributed systems integration. 10. Foster (Ian) et Kesselman (Karl). The GRID : Blueprint For a New Computing Infrastrucuture. Morgan Kaufmann Publishers, Inc., 1999. 11. Grimshaw (Andrew S.), Wulf (William A.), French (James C.), Weaver (Alfred C.) et Reynolds Jr. (Paul F.). Legion : The Next Logical Step Toward a Nationwide Virtual Computer. Rapport technique n CS-94-21, 8 1994. 12. Guittenit (Christophe). Placement d objets multimedias sur un groupe hétérogène de dispositifs de stockage. Thèse de PhD, Université Toulouse III, 2002. 13. Lee (Edward K.) et Thekkath (Chandramohan A.). Petal : Distributed virtual disks. In : Proceedings of the Seventh International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 84 92. Cambridge, MA, 1996. 14. Morris (James H.), Satyanarayanan (Mahadev), Conner (Michael H.), Howard (John H.), Rosenthal (David S. H.) et Donel (F.). Andrew : a distributed personal computing environment. Communications of the ACM, 1986. 15. Plank (J.), Beck (M.), Elwasif (W.), Moore (T.), Swany (M.) et Wolski (R.). The internet backplane protocol : Storage in the network, 1999. 16. Schmuck (Frank) et Haskin (Roger). GPFS : A shared-disk file system for large computing clusters. In : Proc. of the First Conference on File and Storage Technologies (FAST), pp. 231 244. jan 2002. 17. Soltis (Steven R.), Ruwart (Thomas M.) et O Keefe (Matthew T.). The Global File System. In : Proceedings of the Fifth NASA Goddard Conference on Mass Storage Systems. pp. 319 342. College Park, MD, 1996. 18. Tatebe (O.). Grid data farm for petascale data intensive computing. 19. Wang (F.), Brandt (S.), Miller (E.) et Long (D.). OBFS : A file system for object-based storage devices. 2003. 20. White (Brian S.), Walker (Michael), Humphrey (Marty) et Grimshaw (Andrew S.). LegionFS : A secure and scalable file system supporting cross-domain high-performance applications. 2001. 21. Wolski (Rich), Spring (Neil T.) et Hayes (Jim). The network weather service : a distributed resource performance forecasting service for metacomputing. Future Generation Computer Systems, vol. 15, n 5 6, 1999, pp. 757 768. 5 Site Midi-Pyrénées du projet Grid5000.