Abderrahman El Kharrim
Division TIC – CNRST, Rabat
Services de la grille
Architecture et Middleware de la Grille
Les services de gLite
Les principaux services de gLite
User Interface (UI):
Le point d’entrée de l’utilisateur à la grille
Computing Element (CE):
Gère les queues de jobs qui s’exécutent sur les ordinateurs du site (WN) Storage Element (SE):
Offre à grand échelle de capacités de stockage Information System (BDII):
Caractéristiques et le statut des CE et SE
VO Membership System(VOMS):
Manages les VOs – service basic pour l’autorisation Workload Management System (WMS):
Traite les prérequis de l’utilisateur sur les ressources disponibles dans la grille
Architecture et Middleware de la Grille
Système d’Information
Communication entre les services gLite
Les principaux services de gLite
Architecture et Middleware de la Grille
Système d’Information
Qu'est-ce?
• Système chargé de collecter des informations sur l’état des ressources/services mis à disposition sur la Grille.
Pourquoi?
• Découvrir les ressources/services de la grille et leur nature
• Disposer des données pertinentes pour utiliser les ressources et les services offerts par les sites de la grille
• Vérifier l’état de santé des ressources et services de la grille Comment?
• En adoptant un modèle de données commun à tous les composants/acteurs de la grille qui ont besoin d’interagir avec les ressources/services de la grille
• En offrant les outils qui permettent d’alimenter et d’interroger le système
• En supervisant localement l’état et la description des ressources/services, et en publiant les données fraichement collectées sur le système d’information
Qu'est-ce, pourquoi et comment?
Système d’Information
• Utilisateurs finaux de la grille
– Récupérer des informations sur les ressources:
– Où puis-je soumettre mon job?
– Où puis-je stocker mes fichiers?
– Quels logiciels sont disponibles sur un CE donne?
• Administrateurs du site
– Publier des informations sur les ressources et les services qu'ils fournissent
• Middleware
– WMS: faire correspondre les exigences du job et l'allocation des ressources
– Services de surveillance: Récupération d'informations sur l'état et la disponibilité des ressources
Qui’est ce qui utilise le SI?
Système d’Information
Chaque site publie
Une description des ressources/services qu’il fournit par VO
L’état actuel de ses ressources (CPUs libres, Espace de stockage, etc.)
Chaque VO publie
Ce qu’elle a installé sur chaque site (“Tags” des Software Managers) Les acteurs interrogent le SI pour savoir comment utiliser les
services/ressources de la grille
Principe
Système d’Information
• Pour réponde aux exigences liées à l’hétérogénéité des ressources et leur dispersion géographique, le modèle de données adopté par gLite est le GLUE Schema (Grid
Laboratory Uniform Environment)
• Définition de schémas LDAP décrivant chaque composant des ressources/services de la grille
• Le Système d'information disponible dans gLite: BDII (Berkeley DB Information Index)
Modèle de données
Système d’Information
• Le SI est organisé selon une architecture à 3 niveaux:
– GRIS
– GIIS/Site BDII – Top BDII
BDII : Berkeley Database Information Index GIIS : Grid Index Information Server
GRIS : Grid Resource Information Service
Architecture globale de SI
Top-level BDII:
collecte les informations des site-level BDIIs
Sur chaque site: le site-level BDII (site GIIS):
collecte les informations des GRISs locaux
sur chaue ressources: un GRIS local:
Publie les informations dynamiques et statiques
Système d’Information
Architecture globale de SI
- Application utilisateur - WMS
- Services de supervision
Site BDII
SE Local GRIS
LFC Local GRIS
CE Local GRIS
Site BDII Top BDII-A
Top BDII-B
Site BDII
Site 1
Site 2 Site 3
SE Local GRIS
SE Local GRIS
CE Local GRIS CE
Local GRIS
WMS
Local GRIS MyProxy
Local GRIS
Système d’Information
• gLite fournit plusieurs outils pour manipuler le SI.
• 2 commandes principales qui servent comme outils d’interrogation du SI:
– lcg-infosites: simple, qui répond à la majorité des besoins.
Elle renvoie quelques informations en relation avec une composante sur la grille.
– lcg-info: supporte des requêtes plus complexe et revoie des informations plus spécifiques.
lcg-infosites –h, lcg-info –h, pour voir toutes les options d’utilisation
Utilisation du Système d’Information
Système d’Information
• La commande lcg-infosites est en fait juste un script perl qui appelle une série de commandes LDAP et qui a été développé pour permettre aux utilisateurs de récupérer des informations sur les ressources de la grille correspondant aux cas d’utilisation les plus courants.
• La commande lcg-info peut être utilisée par exemple pour lister soit les CE ou les SE qui répondent à un ensemble donné de conditions sur leurs
attributs, et à afficher, pour chacun d'eux, les valeurs d'un ensemble d'attributs.
• L'information est tirée du BDII spécifié par le la variable d'environnement LCG_GFAL_ INFOSYS ou bien dans la ligne de commande.
lcg-infosites et lcg-info
Système d’Information
RTM, Real Time Monitoring
Provides a real time overview of job submissions and I/O Sandboxing
http://rtm.hep.ph.ic.ac.uk/
Système d’Information
• gLite documentation
– http://glite.web.cern.ch/glite/documentation/
• LDAP Concepts & Overview
– http://www.zytrax.com/books/ldap/ch2/
• OpenLDAP community
– http://www.openldap.org
• GLUE Schema Specification version 1.3 Final
– http://forge.gridforum.org/sf/go/doc14185?nav=1
• Official monitoring are:
– Nagios managed by CERN at https://nagios.africa-grid.org/nagios/
– Gstat managed by CERIST and GARR at http://gstat.eumedgrid.eu/gstat – Grid Reat Time Monitoring by Imperial College London at
http://rtm.hep.ph.ic.ac.uk
Liens
Gestion des données
Défis
Hétérogénéité
Les données sont stockées sur des systèmes de stockage différentes à l'aide de
différentes technologies d'accès Distribution
Les données sont stockées dans des endroits différents (dans la plupart des cas il n'y a aucun système de fichiers partagé ou un espace de nom commun)
Les données doivent se déplacer entre différents endroits
Description des données
Les données sont stockées comme des fichiers (besoin de les décrire et de les localiser selon leur contenu)
Storage Resource Manager interface
File Catalogue
File Transfer Service
Metadata Service
Gestion des Données
Le Storage Element
• Le Storage Element (SE) est le service de gLite qui permet aux utilisateurs et aux applications de stocker/récupérer les données (fichiers)
Les fichiers localisés sur les SEs…
Sont dans la majeur des cas "write-once, read-many".
Accessibles par les utilisateurs et par les applications de n'importe où sur la grille
Peuvent être répliquées sur plusieurs sites (redondance).
Ne peuvent pas être changés sauf si supprimés ou remplacés.
Les SEs…
Fournissent un espace disque dédié aux stockage des fichiers.
Fournissent un protocole de transfert (GSIFTP)
Fournissent une interface pour la gestion des stockages sur disques ou sur bande : Storage Resource Manager (SRM)
Types..
dCache, Storm, CERN Advanced STORage manager (CASTOR), Disk Pool
Manager (DPM)
Gestion des Données
Le Storage Element
Gestion des Données
Storage Resource Manager (SRM)
•
Je vais leur parler en votre nom
•
Je vais allouer l'espace
convenable pour vos fichiers
•
Je vais utiliser les protocoles de transfert pour vous envoyer vos fichiers
SE
CASTOR
SE DPM SE
Le SRM est une interface unique qui prenne en charge l'interaction avec le stockage local des données
SE
Storm
SRM
Gestion des Données
Exemple de besoin
Storm sur SiteA
DPM sur SiteD dCache sur SiteB
L'utilisateur travaille sur un job qui a besoin de:
- Lire les données de simulations MonteCarlo du siteA
- Lire les données d'une experience du siteB - Lire des données d'environnement du siteC - Ecrire les resultats sur siteD
DPM sur SiteC
GUID : Grid Unique IDentifier
Identifiant unique d'un fichier sur la grille
Exemple: guid:38ed3f60-c402-11d7-a6b0-f53ee5a37e1d
Toutes les repliques d'un fichier se partagent le même GUID
LFN : Logical File Name
Un alias qui peut être utilisé à la place du GUID
Exemple : lfn://grid/gilda/users/mario/myfile.dat
Gestion des Données
Terminologie
Logical File Name 1
Logical File Name N
GUID
...
SURL/PFN : Storage URL / Physical File Name
La location physique d'un fichier sur un SE
Exemple : srm://aliserv6.ct.infn.it/dpm/home/gilda/project1/test.dat
Utilisé pour par le système pour localiser le lieu physique des répliques
TURL : Transport URL
Le lien complet pour accéder un fichier sur un SE (incluant le protocole d'accès)
Exemple : rfio://lxshare0209.cern.ch//data/alice/ntuples.dat
Gestion des Données
Terminologie
Logical File Name 1
Logical File Name N
GUID
... ...
Physical File SURL N
Physical File SURL 1 TURL 1
TURL 1
...
LFC = LCG File Catalogue (LCG = LHC Computing Grid, LHC = Large Hadron Collider)
Le LFC est le service qui maintient le mapping entre LFN(s), GUID et SURL(s)
Il garde l'information sur les répliques des fichiers
C'est un catalogue unique qui ressemble à la racine de la grille "top-level directory"
Il existe un répertoire sous "/grid" pour chaque VO, avec un accès en mode "read-write" pour tous les adhérents de ce VO
Afficher les LFC d'un VO : lcg-infosites --vo <VO> lfc
Pour utiliser un LFC local : export LFC_HOST=<HOSTNAME DU LFC>
Gestion des Données
File Catalogue
Gestion des Données
File Catalogue
User Interface
SE B SE A
SE C File Catalogue
lfn:/grid/gilda/tcaland/mpi.txt
Les utilisateurs gèrent généralement les LFNs.
Gestion des Données
File Catalogue
Définie par l'utilisateur LFC Namespace
Structure des répertoires
/grid/<nom_du_VO>/ <Dossier à créer>
Gestion des Données
Soumission de job
User Interface
CE
Worker Nodes WMS
InputSandbox / OutputSandbox sont de petite taille (max 10 MB)
InputSandbox / OutputSandbox sont de grande taille, il faut utiliser les SEs
Gestion des Données
Gestion des données
User Interface
CE
Worker Nodes WMS
LFC
Gestion des Données
Liste des commandes lfc-*
lfc-chmod
Change access mode of the LFC file/directory
lfc-chownChange owner and group of the LFC file-directory
lfc-delcommentDelete the comment associated with the file/directory
lfc-getaclGet file/directory access control lists
lfc-ln
Make a symbolic link to a file/directory
lfc-lsList file/directory entries in a directory
lfc-mkdirCreate a directory
lfc-rename
Rename a file/directory
lfc-rmRemove a file/directory
lfc-setacl
Set file/directory access control lists
lfc-setcommentAdd/replace a comment
Commandes utiles pour le LFC
Gestion des Données
Liste des commandes lcg
Gestion des répliques
lcg-cp Copies a grid file to a local destination
lcg-cr Copies a file to a SE and registers the file in the catalog lcg-del Delete one file
lcg-rep Replication between SEs and registration of the replica lcg-gt Gets the TURL for a given SURL and transfer protocol
lcg-sd Sets file status to “Done” for a given SURL in a SRM request
Interaction avec le LFC
lcg-aa Add an alias in LFC for a given GUID lcg-ra Remove an alias in LFC for a given GUID lcg-rf Registers in LFC a file placed in a SE
lcg-uf Unregisters in LFC a file placed in a SE lcg-la Lists the alias for a given SURL, GUID or LFN lcg-lg Get the GUID for a given LFN or SURL