Download - 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

Transcript
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