LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  ·...

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

Transcript of LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  ·...

Page 1: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 1

LEZIONELEZIONE N. 7

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

Introduzione alle griglie Introduzione alle griglie computazionali computazionali

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

Page 2: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 2

WorkloadWorkload Management Management ServiceService (1/2)(1/2)

Lo scopo del WMS e’ la distribuzione dei job (scheduling) tra le risorse di calcolo disponibili in ambiente Grid

funzionalita’ offerte

• Assegnazione delle risorse ai job• Sottomissione dei job • monitoring dello stato• Recupero dell’output

Page 3: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 3

WorkloadWorkload Management Management ServiceService (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 4

Job Job DescriptionDescription LanguageLanguage (1/8)(1/8)

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

• requisiti “fisici” del job (spazio disco, memoria, ...)

• requisiti “logici” del job (sistema operativo, librerie, sw ...)

• Dati di input e output (logical file name, ...)

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

Page 5: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 5

Job Job DescriptionDescription LanguageLanguage (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 6

Job Job DescriptionDescription LanguageLanguage (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 7

Job Job DescriptionDescription LanguageLanguage (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 8

Job Job DescriptionDescription LanguageLanguage (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 9

Job Job DescriptionDescription LanguageLanguage (6/8)(6/8)

computing resource attributes

• Requirements- requirement del job rispetto alle risorse di computing

- vengono specificati utilizzando i nomi degli attributi definitinell’Information Service

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

i requirement richiesti

- viene specificato utilizzando i nomi degli attributi definitinell’Information Service

Page 10: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 10

Job Job DescriptionDescription LanguageLanguage (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 11

Job Job DescriptionDescription LanguageLanguage (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 12

Comandi della Comandi della UserUser InterfaceInterface• edg-job-submit xxx.jdl

sottomette il job descritto nel file JDL

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

• edg-job-cancelcancellazione di un job

• edg-job-statusvisualizza lo stato di un job

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

• edg-job-get-logging-infovisualizza la sequenza completa delle transizioni di stato di un job(utilizzato per debugging)

Page 13: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 13

MatchmakingMatchmaking (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 più Computing Element soddisfano i requirement alloraviene scelto il Computing Element con Rank più alto

Page 14: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 14

MatchmakingMatchmaking (2/3)(2/3)

scenari possibili

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

2. sottomissione di job senza requirement sullo storage - 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 più Computing Element soddisfano i requirement allora vienescelto il Computing Element con Rank più alto

(segue)

Page 15: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 15

MatchmakingMatchmaking (3/3)(3/3)

3. job submission con indicazione di risorse di storage

- 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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 16

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 17

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 18

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 19

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 20

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 21

Job Job submissionsubmission (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

scheduledInput Sandbox

running

StorageElement(SE)

Job Status

Page 22: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 22

Job Job submissionsubmission (7/10)(7/10)

UIJDL

LogginBookkeeping(LB)

g &

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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 23

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 24

Job Job submissionsubmission (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: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 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 Job submissionsubmission (10/10)(10/10)Job Status

Page 26: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 26

SUBMITTED

WAITING

READY

SCHEDULED

RUNNING

DONE(ok)DONE(failed)

OUTPUTREADY

CLEARED

ABORTEDDONE(cancelled)

Job statusJob status

Page 27: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 27

Job Job submissionsubmission (1/10)(1/10)

Page 28: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 28

Job Job submissionsubmission (2/10)(2/10)edg-job-submit myjob.jdl

myjob.jdlExecutable = "$(CMS)/exe/sum.exe";InputData = “lfn: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 8.x";Rank = other.FreeCPUs;

Page 29: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 29

Job Job submissionsubmission (3/10)(3/10)

Page 30: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 30

Job Job submissionsubmission (4/10)(4/10)

Page 31: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 31

Job Job submissionsubmission (5/10)(5/10)

Page 32: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 32

Job Job submissionsubmission (6/10)(6/10)

Page 33: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 33

Job Job submissionsubmission (7/10)(7/10)

Page 34: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 34

Job Job submissionsubmission (8/10)(8/10)

Page 35: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 35

Job Job submissionsubmission (9/10)(9/10)

Page 36: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 36

Job Job submissionsubmission (10/10)(10/10)

Page 37: LEZIONE N. 7people.na.infn.it/~merola/CORSO_GRID_2006-07/Lezione_07... ·  · 2007-05-15Introduzione alle griglie computazionali - a.a. 2006-07 1 LEZIONE N. 7 • WMS (Workload Management

Introduzione alle griglie computazionali - a.a. 2006-07 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