37
Introduzione alle griglie computazionali - a.a. 2005-06 1 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking Job submission ntroduzione alle griglie computazionali ntroduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di Laurea in Informatica – III Anno

Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Embed Size (px)

Citation preview

Page 1: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 1

LEZIONELEZIONE N. 9

• WMS (Workload Management Service)• JDL (Job Description Language)• Matchmaking• Job submission

Introduzione alle griglie computazionali Introduzione alle griglie computazionali

Università degli Studi di Napoli Federico IICorso di Laurea in Informatica – III Anno

Page 2: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 2

Workload Management Service Workload Management Service (1/2)(1/2)

Lo scopo del WMS e’ lo scheduling distribuito dei job inambiente Grid

funzionalita’ offerte

• job submission• job execution• job status monitoring• output retrieve

Page 3: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 3

Workload Management Service Workload Management Service (2/2)(2/2)

componenti

• User interface (UI)punto di accesso a Grid per gli utenti

• Resource Broker (RB)servizio di scheduling distribuito

• Job Submission Service (JSS)servizio di job submission

• Logging and Bookkeeping Service (LB)servizio di job monitoring

Page 4: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 4

Job Description Language Job Description Language (1/8)(1/8)

informazioni da specificare per l’esecuzione di un Grid-job

• requirement fisici del job (spazio disco, memoria, ...)

• requirement logici del job (environment, ...)

• data requirement (logical file name, ...)

e’ possibile specificare questi parametri utilizzando il JDL(Job Description Language)

Page 5: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 5

Job Description Language Job Description Language (2/8)(2/8)

caratteristiche

• basato su Condor ClassAd (CLASSified ADvertisement language)

• un ClassAd e’ una sequenza di coppie (attributo, valore)

[attr1 = value1attr2 = value2...attrn = valuen

]

Page 6: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 6

Job Description Language Job Description Language (3/8)(3/8)

categorie di attributi

• job attributedefiniscono le caratteristiche del job

• resource attributecomputing resource attribute

specificano i requirement in termini di risorse di computingutilizzano il prefisso “other.”

storage resource attributespecificano i requirement in termini di risorse di storage(protocollo di accesso, logical file name, ...)

Page 7: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 7

Job Description Language Job Description Language (4/8)(4/8)

job attributes

• Executablenome del file che contiene il codice eseguibile

• Argumentsargomenti da fornire all’eseguibile

• StdInput, StdOutput, StdErrnomi dei file che conterranno standard input / output / error del job

• Environmentlista di attributi relativi all’environment

(segue)

Page 8: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 8

Job Description Language Job Description Language (5/8)(5/8)

job attributes

• InputSandboxlista di file locali (rispetto alla UI) necessari all’esecuzione del job

• OutputSandboxlista di file (generati dal job) da recuperare dopo l’esecuzione del job

Page 9: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 9

Job Description Language Job Description Language (6/8)(6/8)

computing resource attributes

• Requirements- requirement del job rispetto alle risorse di computing

- vengono specificati utilizzando i nomi degli attributi definiti nell’Information Service

• Rank- specifica una preferenza rispetto ad un insieme di risorse che soddisfano i requirement richiesti

- viene specificato utilizzando i nomi degli attributi definiti nell’Information Service

Page 10: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 10

Job Description Language Job Description Language (7/8)(7/8)

storage resource attributes

• InputDataPFN (Physical File Name) o LFN (Logical File Name)da utilizzare come input del job

• ReplicaCatalognome del Replica Catalog da utilizzare per la risoluzione PFN LFN

• DataAccessProtocolprotocollo da utilizzare per accedere al PFN

• OutputSEnome dello Storage Element da utilizzare per la copia dei file di output del job

Page 11: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 11

Job Description Language Job Description Language (8/8)(8/8)

esempio di JDL file

Executable = “gridTest”;StdError = “stderr.log”;StdOutput = “stdout.log”;InputSandbox = {“home/joda/test/gridTest”};OutputSandbox = {“stderr.log”, “stdout.log”};InputData = “LF:testbed0-00019”;ReplicaCatalog = “ldap://sunlab2g.cnaf.infn.it:2010/

lc=test, rc=WP2 INFN Test, dc=infn, dc=it”;

DataAccessProtocol = “gridftp”;Requirements = other.Architecture == “INTEL” &&

other.OpSys == “LINUX” && other.FreeCpus >= 4;

Rank = “other.MaxCpuTime”;

Page 12: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 12

Comandi della User InterfaceComandi della User Interface

• edg-job-list-matchlista delle risorse che soddisfano i requirement specificati nel file JDL(il RB effettua il matchmaking senza sottomettere il job)

• edg-job-submit

sottomette job su una delle risorse che soddisfano i requirement specificati nel file JDL• edg-job-cancel

cancellazione di un job• edg-job-status

visualizza lo stato di un job• edg-job-get-output

effettua lo stage-out dei file specificati tramite l’attributo OutputSandbox• edg-job-get-logging-info

visualizza la sequenza completa delle transizioni di stato di un job(utilizzato per debugging)

Page 13: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 13

Matchmaking Matchmaking (1/3)(1/3)

Resource Broker

• il suo compito e’ quello di individuare la risorsa di computing“migliore” su cui sottomettere il job dell’utente

• interagisce con Information Service e Data Management Service

• il Computing Element selezionato deve soddisfarei requirement specificati nella descrizione del job (JDL file)

• se piu’ Computing Element soddisfano i requirement alloraviene scelto il Computing Element con Rank piu’ alto

Page 14: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 14

Matchmaking Matchmaking (2/3)(2/3)

scenari possibili

1. direct job submission- l’utente specifica il Computing Element su cui deve essere sottomesso il job- il Resource Broker non effettua il matchmaking

1. job submission senza requirement su storage resource- il Resource Broker effettua il matchmaking

interroga l’Information Service per ottenere l’elenco delle risorseche soddisfano i requirement e le credenziali dell’utente

se piu’ Computing Element soddisfano i requirement allora vienescelto il Computing Element con Rank piu’ alto

(segue)

Page 15: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 15

Matchmaking Matchmaking (3/3)(3/3)

1. job submission con requirement su storage resource

- il Resource Broker effettua il matchmaking

interroga il Data Management Service per ottenere l’elenco degliStorage Element che contengono i file richiesti

interroga l’Information Service per ottenere l’elenco delle risorseche soddisfano i requirement e le credenziali dell’utente

seleziona (dalla lista di Computing Element ottenuta) i ComputingElement “vicini” agli Storage Element ottenuti al passo 1

se il risultato della selezione consiste in piu’ Computing Element allora viene scelto il Computing Element con Rank piu’ alto

Page 16: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 16

Job submission Job submission (1/10)(1/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JSS)

StorageElement(SE)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

Page 17: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 17

Job submission Job submission (2/10)(2/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JSS)

StorageElement(SE)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

Job SubmitEvent

Input Sandbox

submitted

Job Status

Page 18: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 18

Job submission Job submission (3/10)(3/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JSS)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

submitted

waiting

StorageElement(SE)

Job Status

Page 19: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 19

Job submission Job submission (4/10)(4/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JSS)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

submitted

waiting

ready

StorageElement(SE)

Job Status

Page 20: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 20

Job submission Job submission (5/10)(5/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService(JSS)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

submitted

waiting

ready

BrokerInfo

scheduled

StorageElement(SE)

Job Status

Page 21: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 21

Job submission Job submission (6/10)(6/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JSS)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

submitted

waiting

ready

scheduled

Input Sandbox

running

StorageElement(SE)

Job Status

Page 22: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 22

Job submission Job submission (7/10)(7/10)

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JSS)

ComputingComputingElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

submitted

waiting

ready

scheduled

Job Status

running

StorageElement(SE)

Job Status

Page 23: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 23

Job submission Job submission (8/10)(8/10)

UIJDL

Logging &Bookkeeping

ResourceBroker

Job SubmissionService

StorageElement (SE)ComputingComputing

Element (CE)Element (CE)

Information Service

ReplicaCatalogue(RC)

submitted

waiting

ready

scheduled

running

Job Status

done

Job Status

Page 24: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 24

Job submission Job submission (9/10)(9/10)

UIJDL

Logging &Bookkeeping

ResourceBroker

Job SubmissionService

StorageElement (SE)ComputingComputing

Element (CE)Element (CE)

Information Service

ReplicaCatalogue(RC)

submitted

waiting

ready

scheduled

running

done

Job Status

outputready

Output Sandbox

Job Status

Page 25: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 25

UIJDL

Logging &Bookkeeping(LB)

ResourceBroker (RB)

Job SubmissionService (JS)

StorageElement(SE)

ComputeComputeElement (CE)Element (CE)

Information Service (IS)

ReplicaCatalogue(RC)

Output Sandbox

cleared

submitted

waiting

ready

scheduled

running

done

outputready

Job submission Job submission (10/10)(10/10)Job Status

Page 26: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 26

SUBMITTED

WAITING

READY

SCHEDULED

RUNNING

DONE(ok)DONE(failed)

OUTPUTREADY

CLEARED

ABORTEDDONE(cancelled)

Job statusJob status

Page 27: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 27

Job submission Job submission (1/10)(1/10)

Page 28: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 28

Job submission Job submission (2/10)(2/10)

dg-job-submit myjob.jdlMyjob.jdl

Executable = "$(CMS)/exe/sum.exe";InputData = "LF:testbed0-00019";ReplicaCatalog = "ldap://sunlab2g.cnaf.infn.it:2010/rc=WP2 INFN Test Replica Catalog,dc=sunlab2g, dc=cnaf, dc=infn, dc=it";DataAccessProtocol = "gridftp";InputSandbox = {"/home/user/WP1testC","/home/file*”, "/home/user/DATA/*"};OutputSandbox = {“sim.err”, “test.out”, “sim.log"};Requirements = other.Architecture == "INTEL"

&& other.OpSys== "LINUX Red Hat 6.2";Rank = other.FreeCPUs;

Page 29: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 29

Job submission Job submission (3/10)(3/10)

Page 30: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 30

Job submission Job submission (4/10)(4/10)

Page 31: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 31

Job submission Job submission (5/10)(5/10)

Page 32: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 32

Job submission Job submission (6/10)(6/10)

Page 33: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 33

Job submission Job submission (7/10)(7/10)

Page 34: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 34

Job submission Job submission (8/10)(8/10)

Page 35: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 35

Job submission Job submission (9/10)(9/10)

Page 36: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 36

Job submission Job submission (10/10)(10/10)

Page 37: Introduzione alle griglie computazionali - a.a. 2005-061 LEZIONE LEZIONE N. 9 WMS (Workload Management Service) JDL (Job Description Language) Matchmaking

Introduzione alle griglie computazionali - a.a. 2005-06 37

RiferimentiRiferimenti

“The European DataGrid User’s Guide” http://marianne.in2p3.fr

European DataGrid WP1 web site http://www.infn.it/workload-grid (WMS User & Admin Guide and JDL docs)

ClassAd http://www.cs.wisc.edu/condor/classad