Enabling Grids for Escienc E Soumission de jobs
Enabling Grids for E-scienc. E Soumission de jobs de calcul David Bouvet IN 2 P 3 -CC Lyon - 24/10/2007 www. eu-egee. org EGEE-II INFSO-RI-031688 EGEE and g. Lite are registered trademarks
Plan Enabling Grids for E-scienc. E • Soumission de job : proxy et scénario • JDL • Commandes de soumission EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 2
Soumission de jobs Enabling Grids for E-scienc. E • L’utilisateur soumet un job via le WMS (Workload Management System) de la grille • Le WMS essaie d’optimiser l’utilisation des ressources et d’exécuter les jobs des utilisateurs le plus rapidement possible • Le WMS est composé des noeuds suivants : – UI (User Interface) : point d’accès pour les utilisateurs – RB (Resource Broker) : le courtier de ressources de la grille, responsable de trouver les « meilleures » ressources pour soumettre les jobs. – Job Submission Service – BDII (Information Index) : un serveur LDAP qui collecte les informations concernant les ressources grille. Il est utilisé par le RB pour sélectionner les ressources – LB (Logging and Bookeeping) : stocke les infos concernant le job pour des requêtes utilisateurs. EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 3
Soumission de jobs : création d’un proxy Enabling Grids for E-scienc. E • voms-proxy-init -voms vo. rocfr. in 2 p 3. fr Cannot find file or dir: /afs/in 2 p 3. fr/home/d/dbouvet/. glite/vomses Your identity: /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet Enter GRID pass phrase: Creating temporary proxy. . . Done Contacting cclcgvomsli 01. in 2 p 3. fr: 15001 [/O=GRID-FR/C=FR/O=CNRS/OU=CCLYON/CN=cclcgvomsli 01. in 2 p 3. fr] "vo. rocfr. in 2 p 3. fr" Done Creating proxy. . . . . Done Your proxy is valid until Sat Nov 4 02: 56: 14 2006 • voms-proxy-info subject issuer identity type strength path timeleft • : : : : /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet/CN=proxy /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet proxy 512 bits /tmp/x 509 up_u 2028 11: 58: 53 voms-proxy-info -all subject : /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet/CN=proxy issuer : /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet identity : /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet type : proxy strength : 512 bits path : /tmp/x 509 up_u 2028 timeleft : 11: 58: 25 === VO egeode extension information === VO : vo. rocfr. in 2 p 3. fr subject : /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=David Bouvet issuer : /O=GRID-FR/C=FR/O=CNRS/OU=CC-LYON/CN=cclcgvomsli 01. in 2 p 3. fr attribute : /egeode/Role=NULL/Capability=NULL timeleft : 11: 58: 25 EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 4
Soumission de job : proxy Enabling Grids for E-scienc. E • voms-proxy-init –voms cms -valid 24: 00 • openssl x 509 -in /tmp/x 509 up_u`id -u` -text Certificate: Data: Version: 3 (0 x 2) Serial Number: 2239 (0 x 8 bf) Signature Algorithm: md 5 With. RSAEncryption Issuer: C=IT, O=GILDA, OU=Personal Certificate, L=CLERMONT-FERRAND, CN=CLERMONTFERRAND 01/Email=emmanuel. medernach@clermont. in 2 p 3. fr Validity… EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 5
Soumission de jobs : scénario Enabling Grids for E-scienc. E UI JDL LCG File Catalog (LFC) Information System (IS) Resource Broker (RB) Logging & Bookkeeping (LB) Storage Element (SE) Job Submission Service (JSS) Computing Element (CE) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 6
Soumission de jobs : scénario Enabling Grids for E-scienc. E UI JDL Input Sandbox LCG File Catalog (LFC) Information System (IS) Job Status submitted Job Submit Event Resource Broker (RB) Logging & Bookkeeping (LB) Storage Element (SE) Job Submission Service (JSS) Computing Element (CE) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 7
Soumission de jobs : scénario Enabling Grids for E-scienc. E UI JDL LCG File Catalog (LFC) Information System (IS) Job Status submitted waiting Resource Broker (RB) Logging & Bookkeeping (LB) Storage Element (SE) Job Submission Service (JSS) Computing Element (CE) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 8
Soumission de jobs : scénario Enabling Grids for E-scienc. E LCG File Catalog (LFC) UI JDL Information System (IS) Job Status submitted waiting Resource Broker (RB) Storage Element (SE) Job Status Logging & Bookkeeping (LB) ready Job Submission Service (JSS) Computing Element (CE) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 9
Soumission de jobs : scénario Enabling Grids for E-scienc. E LCG File Catalog (LFC) UI JDL Information System (IS) Job Status submitted waiting Resource Broker (RB) ready Logging & Bookkeeping (LB) Broker. Info Job Status Storage Element (SE) scheduled Job Submission Service (JSS) running Computing Element (CE) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 10
Soumission de jobs : scénario Enabling Grids for E-scienc. E UI JDL Information System (IS) LCG File Catalog (LFC) Job Status submitted Input Sandbox waiting Resource Broker (RB) Logging & Bookkeeping (LB) ready Storage Element (SE) scheduled Job Submission Service (JSS) running Computing Element (CE) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 11
Soumission de jobs : scénario Enabling Grids for E-scienc. E LCG File Catalog (LFC) UI JDL Information System (IS) Job Status submitted waiting Resource Broker (RB) Logging & Bookkeeping (LB) Job Submission Service (JSS) Job Status EGEE-II INFSO-RI-031688 ready Storage Element (SE) scheduled running Computing Element (CE) David Bouvet - Soumission de jobs 12
Soumission de jobs : scénario Enabling Grids for E-scienc. E LCG File Catalog (LFC) UI JDL Information System (IS) Job Status submitted waiting Resource Broker (RB) Storage Element scheduled (SE) Logging & Bookkeeping (LB) Job Submission Service (JSS) Job Status EGEE-II INFSO-RI-031688 ready running Computing Element (CE) David Bouvet - Soumission de jobs done 13
Soumission de jobs : scénario Enabling Grids for E-scienc. E LCG File Catalog (LFC) UI JDL Information System (IS) Job Status submitted waiting Resource Broker (RB) Storage Element scheduled (SE) Logging & Bookkeeping (LB) Job Submission Service (JSS) Job Status EGEE-II INFSO-RI-031688 ready Output Sandbox running Computing Element (CE) David Bouvet - Soumission de jobs done 14
Soumission de jobs : scénario Enabling Grids for E-scienc. E LCG File Catalog (LFC) UI JDL Information System (IS) Job Status submitted waiting Output Sandbox Storage scheduled Element (SE) Job Status Logging & Bookkeeping (LB) ready Resource Broker (RB) running Job Submission Service (JSS) done Computing Element (CE) EGEE-II INFSO-RI-031688 cleared David Bouvet - Soumission de jobs 15
Plan : vous êtes ici Enabling Grids for E-scienc. E • Soumission de job : proxy et scénario • JDL • Commandes de soumission EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 16
Soumission de jobs : JDL Enabling Grids for E-scienc. E • JDL : Job Description Language – on spécifie (minimum) : § le programme et ses arguments § redirection des outputs et erreurs dans des fichiers § ce qu’on fait de l’ouput (Output. Sandbox) • cat Hello. World. jdl Executable = "/bin/echo "; Arguments = "Hello World "; Std. Output = "message. txt "; Std. Error = "stderror "; Output. Sandbox = {"message. txt", "stderror "}; EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 17
JDL : types d’attribut Enabling Grids for E-scienc. E • Les attributs supportés sont groupés en 2 catégories : – Job § défini le job lui-même – Ressources § pris en compte par le RB et utilisé par l’algorithme de matchmaking § ressources de calcul (Attributs) Utilisé pour exprimer les attributs Requirements et/ou Rank par l’utilisateur Doivent être préfixés par “other. ” § ressources de données et de stockage (Attributs) Données en entrées utilisées, SE où stocker les données en sortie, protocoles utilisés par les applications pour accéder aux SE EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 18
JDL : attributs pour la définition des jobs Enabling Grids for E-scienc. E • Executable (obligatoire) – le nom de la commande • Arguments (optionnel) – arguments de la ligne de commande du job • Std. Input, Std. Output, Std. Err (optionnel) – standard input/output/error du job • Environment (optionnel) – liste de variables d’environnement • Input. Sandbox (optionnel) – liste de fichiers sur le disque local de l’UI nécessaire lors de l’exécution du job – les fichiers listés sont envoyés depuis l’UI sur le CE • Output. Sandbox (optionnel) – liste des fichiers, générés par le job, qui seront récupérés – ces fichiers sont envoyés depuis le RB sur l’UI EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 19
JDL : attributs pour les ressources Enabling Grids for E-scienc. E • Requirements – besoin du job en ressource de calcul – spécifié en utilisant les attributs des ressources publiées dans le système d’information – si non spécifié, la valeur par défaut définie dans le fichier de configuration de l’UI est considérée : § par défaut : other. Glue. CEState. Status == "Production" (la ressource doit être dans la grille de production) • Rank – exprime la préférence (comment ranger les ressources qui ont déjà rempli les conditions de l’attributs Requirements) – spécifié en utilisant les attributs des ressources publiées dans le système d’information – si non spécifié, la valeur par défaut définie dans le fichier de configuration de l’UI est considérée : § par défaut : -other. Glue. CEState. Free. CPUs (le plus grand nombre de CPU libres) EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 20
JDL : attributs pour les données Enabling Grids for E-scienc. E • Input. Data (optionnel) – fait référence aux données utilisées en entrée d’un job : ces données sont publiées dans le catalogue LFC et stockées sur un SE – PFN et/ou LFN • Data. Access. Protocol (obligatoire si Input. Data specifié) – le protocole ou la liste des protocoles avec lesquels l’application est susceptible d’accéder aux Input. Data sur un SE donné • Output. SE (optionnel) – le hostname du SE sur lequel sera copié les Output. Data – le RB utilise cet attribut pour choisir un CE qui est compatible avec le job et proche du SE (notion de close. SE) • Output. Data (optionnel) – données en sortie qui seront enregistrées sur un SE à la fin du job EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 21
JDL : ex. Enabling Grids for E-scienc. E attribut job attribut données attributs ressources Executable = “grid. Test”; Std. Error = “stderr. log”; Std. Output = “stdout. log”; Input. Sandbox = {“/home/joda/test/grid. Test”}; Output. Sandbox = {“stderr. log”, “stdout. log”}; Input. Data = “lfn: testbed 0 -00019”; Data. Access. Protocol = “gridftp”; Requirements = other. Architecture==“INTEL” && other. Op. Sys==“LINUX” && other. Free. Cpus >=4; Rank = “other. Glue. Host. Benchmark. SF 00”; EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 22
Plan : vous êtes ici Enabling Grids for E-scienc. E • Soumission de job : proxy et scénario • JDL • Commandes de soumission EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 23
Commandes sur une UI Enabling Grids for E-scienc. E • edg-job-submit Soumets un job Retourne le job. ID • edg-job-list-match Liste les ressources compatibles avec la description du job Effectue le matchmaking sans soumettre le job • edg-job-cancel Annule un job • edg-job-status Donne le statut du job • edg-job-get-output Récupère les fichiers spécifiés dans l’attribut Output. Sandbox en local sur l’UI • edg-job-get-logging-info Donne des informations de logging sur les jobs soumis (tous les événements répertoriés par les divers composants du WMS) Très utile pour déboguer EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 24
Soumission de jobs (ex. ) : soumission Enabling Grids for E-scienc. E $ edg-job-submit --vo gilda helloworld. jdl Selected Virtual Organisation name (from --vo option): gilda Connecting to host grid 004. ct. infn. it, port 7772 Logging to host grid 004. ct. infn. it, port 9002 ********************************** JOB SUBMIT OUTCOME The job has been successfully submitted to the Network Server. Use edg-job-status command to check job current status. Your job identifier (edg_job. Id) is: - https: //grid 004. ct. infn. it: 9000/PKw 6 d. RR-0 zi. Uf 8 r 217 TZo. A ********************************** EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 25
Soumission de jobs (ex. ) : statut Enabling Grids for E-scienc. E $ edg-job-status https: //grid 004. ct. infn. it: 9000/PKw 6 d. RR 0 zi. Uf 8 r 217 TZo. A ******************************* BOOKKEEPING INFORMATION: Status info for the Job : https: //grid 004. ct. infn. it: 9000/PKw 6 d. RR 0 zi. Uf 8 r 217 TZo. A Current Status: Scheduled Status Reason: Job successfully submitted to Globus Destination: grid 006. cecalc. ula. ve: 2119/jobmanager-lcgpbs-long reached on: Fri Sep 2 08: 21: 16 2005 ******************************* EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 26
Soumission de jobs (ex. ) : output Enabling Grids for E-scienc. E $ edg-job-get-output --dir resultats https: //lxn 1177. cern. ch: 9000/j 7 Ba. JWDA 11 AYYGYvb. RRl. Uw Retrieving files from host: lxn 1177. cern. ch ( for https: //lxn 1177. cern. ch: 9000/j 7 Ba. JWDA 11 AYYGYvb. RRl. Uw ) *************************** JOB GET OUTPUT OUTCOME Output sandbox files for the job: - https: //lxn 1177. cern. ch: 9000/j 7 Ba. JWDA 11 AYYGYvb. RRl. Uw have been successfully retrieved and stored in the directory: /home/manu/resultats/manu_j 7 Ba. JWDA 11 AYYGYvb. RRl. Uw *************************** L’option --dir est optionnelle : l’UI est configurée pour rediriger les fichiers d’output vers un répertoire par défaut. $ cat ~/resultats/manu_j 7 Ba. JWDA 11 AYYGYvb. RRl. Uw/std. *. . . EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 27
Soumission de jobs (ex. ) : stockage des Job. ID Enabling Grids for E-scienc. E $ $ $ edg-job-submit edg-job-submit -o -o -o jobsid jobsid --vo --vo gilda gilda helloworld. jdl $ edg-job-status -i jobsid ---------------------------------1 : https: //grid 004. ct. infn. it: 9000/Uc. DXh. D 6 z 3 y. RGz. BQt 1 k_Z 6 Q 2 : https: //grid 004. ct. infn. it: 9000/-mf. CNPc. Ccp. Cf 5 u. Oe 3 D 6 Jk. Q 3 : https: //grid 004. ct. infn. it: 9000/D 24 Fo 3 Vbf. Hzp. HFXau 2 WZeg 4 : https: //grid 004. ct. infn. it: 9000/2 SPkbd. H 0 D 8 j 2 fa. VBXz. U 3 q. Q 5 : https: //grid 004. ct. infn. it: 9000/Ww. Pvz. NZAy. Dd 1 Hhn. Jkv. BGg. Q a : all q : quit --------------------------------- EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 28
Enabling Grids for E-scienc. E Soumission de jobs (ex. ) : Requirements • Soumission directe à un CE (option –r) : $ edg-job-submit --vo gilda -r gilda-ce- 01. pd. infn. it: 2119/jobmanager-lcgpbs-infinite helloworld. jdl • $ cat hostnamerank. jdl Type = "Job"; Job. Type = "Normal"; Executable = "/bin/hostname"; Arguments = "-f"; Std. Output = "hostname. out"; Std. Error = "hostname. err"; Output. Sandbox = {"hostname. err", "hostname. out"}; Retry. Count = 7; Rank=(other. Glue. CEState. Free. CPUs == 0 ? - other. Glue. CEState. Waiting. Jobs : other. Glue. CEState. Free. CPUs); Requirements = (other. Glue. CEPolicy. Max. CPUTime<=3600) && (Reg. Exp ("infn", other. Glue. CEUnique. Id)); EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 29
Enabling Grids for E-scienc. E Soumission de jobs (ex. ) : Requirements • 1 CPU libre et job de plus de 2 heures : Requirements = other. Glue. CEInfo. Total. CPUs > 1 && other. GLUECEPolicy. Max. CPUTime > 120; • On peut spécifier un CE particulier avec le JDL : Requirements = other. Glue. CEUnique. ID == "lxshare 0286. cern. ch: 2119/jobmanager-pbs- short"; EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 30
WMS matchmaking Enabling Grids for E-scienc. E • Le RB est le composant principal du WMS. • Son rôle est de trouver la meilleure ressource (CE) possible où le job pourra être exécuté • Il interagit avec le service de gestion des données et le système d’information Ils fournissent au RB toutes les informations requises pour établir la correspondance • Le CE choisi par le RB doit remplir les conditions du job • Si 2 CE ou plus satisfont toutes ces requêtes, celui qui a le meilleur rang est choisi EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 31
Soumission de jobs (ex. ) : ressources disponibles Enabling Grids for E-scienc. E $ edg-job-list-match --vo gilda helloworld. jdl Selected Virtual Organisation name (from --vo option): gilda Connecting to host grid 004. ct. infn. it, port 7772 ***************************** COMPUTING ELEMENT IDs LIST The following CE(s) matching your job requirements have been found: *CEId* ced-ce 0. datagrid. cnr. it: 2119/jobmanager-lcgpbs-infinite ced-ce 0. datagrid. cnr. it: 2119/jobmanager-lcgpbs-long ced-ce 0. datagrid. cnr. it: 2119/jobmanager-lcgpbs-short gilda-ce-01. pd. infn. it: 2119/jobmanager-lcgpbs-short grid-ce. bio. dist. unige. it: 2119/jobmanager-lcgpbs-infinite grid-ce. bio. dist. unige. it: 2119/jobmanager-lcgpbs-long grid-ce. bio. dist. unige. it: 2119/jobmanager-lcgpbs-short. . . EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 32
Soumission de jobs (ex. ) : info sur les ressources Enabling Grids for E-scienc. E $ lcg-infosites --vo gilda ce ******************************** These are the related data for gilda: (in terms of queues and CPUs) ******************************** #CPU Free Total Jobs Running Waiting Computing. Element -----------------------------36 36 0 0 0 grid 010. ct. infn. it: 2119/jobmanager-lcgpbs-long 14 14 0 0 0 grid 011 f. cnaf. infn. it: 2119/jobmanager-lcgpbs-long 6 6 0 0 0 ced-ce 0. datagrid. cnr. it: 2119/jobmanager-lcgpbs-long. . . EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 33
Merci Enabling Grids for E-scienc. E EGEE-II INFSO-RI-031688 David Bouvet - Soumission de jobs 34
- Slides: 34