104
Korištenje grid okolina CRO NGI i EGI Emir Imamagić Sveučilišni Računski Centar (Srce)

Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Korištenje grid okolina CRO NGI i EGI

Emir Imamagić

Sveučilišni Računski Centar (Srce)

Page 2: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Upravljanje poslovima Uvod

Korištenje grid okolina CRO NGI i EGI

Page 3: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Uvod

Korištenje grid okolina CRO NGI i EGI

Page 4: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Grid raspoređivanje poslova

• Korisnik opisuje i podnosi posao

• Raspoređivač dohvaća informacije od sustava za nadzor

• Raspoređivač odabire resurse

• Posao se izvodi korištenjem posredničkih sustava

Korištenje grid okolina CRO NGI i EGI

Page 5: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Izazovi

• Osvježavanje zastupničkih certifikata • dugotrajni poslovi i dugotrajno čekanje u redu poslova

• na CRO NGI riješeno s myproxy-manage-create

• Prijenos ulaznih i izlaznih podataka na CE čvorove • u opisu posla navode se sve ulazne i izlazne podataka

• moguće koristiti GridFTP za pripremu podataka

• Pouzdane informacije o dostupnim resursima • koriste se sustavi za nadzor (npr. BDII)

Korištenje grid okolina CRO NGI i EGI

Page 6: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Izazovi

• Veličina i lokacija ulaznih i izlaznih podataka • raspoređivanje prema podacima (engl. data-aware scheduling)

• Selidba poslova između sjedišta • poslovi čekaju u redu dok na drugim sjedištima ima dostupnih

resursa

• Otpornost na pogreške • najčešće ponovno raspoređivanje posla (engl. rescheduling)

Korištenje grid okolina CRO NGI i EGI

Page 7: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Izazovi

• Podržani grid posrednički sustavi • GRAM, gLite, ARC, UNICORE, …

• Podržani tipovi poslova • serijski, paralelni, paralelni na više klastera, workflow, polje poslova

• Integracija sa sigurnosnim sustavima • na kojim sjedištima se korisnik može autenticirati i autorizirati

Korištenje grid okolina CRO NGI i EGI

Page 8: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G Uvod

Korištenje grid okolina CRO NGI i EGI

Page 9: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G

• Komponenta sustava HTCondor

• Namijenjena za podnošenje poslova na grid • podržani posrednički sustavi ARC, UNICORE, Globus, gLite

• Red poslova • podnošenje i upravljanje poslovima slično računalnim klasterima

• Nije raspoređivač poslova • potrebno je navesti adresu sjedišta na koje se podnosi posao

Korištenje grid okolina CRO NGI i EGI

Page 10: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G

• Komponente • HTCondor Schedd

• Grid Manager

• HTCondor Schedd • upravlja redom poslova

• automatsko osvježavanje zastupničkih certifikata i slanje na udaljeno sjedište

• Grid Manager • upravlja poslovima

putem različitih posredničkih sustava (e.g. GRAM, WS-GRAM)

Korištenje grid okolina CRO NGI i EGI

Page 11: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G Matchmaker

• Dodana komponenta za povezivanje HTCondor-G Matchmaker sa sustavim za nadzor

• BDII

• Rad s poslovima jednak HTCondor-G

• Trenutačno neaktivna na CRO NGI-ju

• plan je zamijeniti s tehnologijom HTCondor-CE

Korištenje grid okolina CRO NGI i EGI

Page 12: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G Osnovni parametri poslova

Korištenje grid okolina CRO NGI i EGI

Page 13: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Trenutačno stanje - CRO NGI

Sjedište Adresa CE-a Broj čvorova

CPU jezgri

Spremište Klasterski sustav

MPI okolina

UNIOS-ETFOS ce.etfos.cro-ngi.hr 16 128 5,5 TB (scratch)

SGE MPICH2

UNIRI-GRADRI ce.gradri.cro-ngi.hr 16 128 880 GB (scratch)

SGE MPICH2

IRB ce.irb.cro-ngi.hr 13 260 5,5 TB (scratch)

SGE MPICH2

UNIZG-Srce ce.srce.cro-ngi.hr 39 896 200 TB SGE MVAPICH2

Ukupno 84 1412 200 TB

Korištenje grid okolina CRO NGI i EGI

Page 14: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Opisivanje poslova

• Što se treba izvesti? S kojim argumentima?

• Koji podaci su potrebni za izvođenje poslova?

• Gdje spremati privremene podatke i rezultate?

• Gdje je radni direktorij na čvorovima?

• Koliko procesora posao zahtjeva? Koju arhitekturu procesora?

• Koliko memorije, prostora na disku, vremena je potrebno?

Korištenje grid okolina CRO NGI i EGI

Page 15: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Opisivanje poslova

• Jezik Classads

• Nije osjetljiv na velika i mala slova

• Napomena: • jezik Classads ne podržava pisanje programa ljuske u opisu posla

• program ljuske se može navesti kao izvršna datoteka

Korištenje grid okolina CRO NGI i EGI

attribute = value

attribute = value

attribute = value

attribute = value

Page 16: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Izvršna datoteka

• Definicija izvršne datoteke

• Podrazumijevano HTCondor prenosi lokalnu datoteku

• ne mora biti puna putanja

• Za korištenje datoteke na sjedištu navesti

• u ovom slučaju se preporuča koristiti apsolutnu putanju

Korištenje grid okolina CRO NGI i EGI

executable = path

transfer_executable = false

Page 17: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Argumenti

• Argumenti aplikacije

• Oznaka “ se mora posebno navesti

Korištenje grid okolina CRO NGI i EGI

arguments = arg1 arg2 arg3

arguments = arg1 \"arg 2\" 'arg 3'

Page 18: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Standardni ulaz, izlaz i greška

• Standardni ulaz

• Standardni izlaz

• Standardna greška

• Izlaz i greška se prepisuju

• razlika u odnosu na SGE

Korištenje grid okolina CRO NGI i EGI

input = path

output = path

error = path

Page 19: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Prijenos datoteka

• Prijenos na udaljeno računalo

• Prijenos s udaljenog na lokalno računalu

• Datoteke se prenose u/iz direktorija iz kojeg se podnosi posao

Korištenje grid okolina CRO NGI i EGI

transfer_input_files="path","path"...

transfer_output_files="path","path"...

Page 20: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Prijenos datoteka

• Prijenos iste datoteke na udaljeno računalo i natrag • HTCondor prije prijenosa obriše sadržaj ulazne datoteke

• Koristi se parametar transfer_output_remaps

Korištenje grid okolina CRO NGI i EGI

transfer_input_files=test

transfer_output_files=test

transfer_output_remaps = "test=test.out"

Page 21: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Obavijesti

• Slanje obavijesti • moguće je navesti uvjete u kojim se šalju obavijesti

• Adresa korisnika

Korištenje grid okolina CRO NGI i EGI

notification = Always | Complete | Error | Never

notify_user = email@address

Page 22: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Atributi HTCondora

• Atribute Universe • mora biti postavljen na “grid”

• Dnevnik

• detaljne informacije o izvođenju posla

Korištenje grid okolina CRO NGI i EGI

universe=grid

log=<path>

Page 23: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Atributi HTCondora

• Broj zadataka • obavezan, navodi se iza svih ostalih atributa

• Koristi se za podnošenje polja poslova

Korištenje grid okolina CRO NGI i EGI

queue [<count>] [expr]

Page 24: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Adresa sjedišta – eksplicitno

• Potrebno je navesti adresu sjedišta

• Globus Toolkit

Korištenje grid okolina CRO NGI i EGI

grid_resource=<grid_type> <address> <parameters>

grid_resource=gt2 <gram_address>

Page 25: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Adresa sjedišta – eksplicitno

• GRAM

• za CE čvorove s Torque/Maui

• za CE čvorove sa SGE

• Sustavi na CE čvorovima • http://wiki.cro-ngi.hr/index.php/CRO_NGI_čvorovi#Stanje_2

Korištenje grid okolina CRO NGI i EGI

grid_resource=gt2 ce.fesb.cro-ngi.hr/jobmanager-pbs

grid_resource=gt2 ce.irb.cro-ngi.hr/jobmanager-sge

Page 26: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Podnošenje posla

• Naredba

• naredba ispisuje ID posla

Korištenje grid okolina CRO NGI i EGI

$ condor_submit <classadd_file>

Page 27: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Prikaz stanja poslova

• Naredba

• prikaz svih poslova

• korisnik ne mora spremati ID posla

• Opcije

Korištenje grid okolina CRO NGI i EGI

$ condor_q [-globus] [-long] [jobID] [username]

-globus prikaz sa specifičnim podacima od Globusa

-long detaljni podaci o poslu

(preporuča se koristiti sa jobID)

-hold detaljni podaci o razlogu zaustavljanja posla

Page 28: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Detalji o izvođenju posla

• Dnevnik • parametar log

• Detaljan HTCondorov dnevnik • /var/log/condor/GridmanagerLog.<username>

Korištenje grid okolina CRO NGI i EGI

Page 29: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Vježbe

• $HOME/gworkshop/condorG

Korištenje grid okolina CRO NGI i EGI

hostname.jdl – izvođenje udaljenog programa

test.jdl – izvođenje programa smještenog na UI čvoru

stage.jdl – prijenos datoteka

Page 30: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G Napredni parametri poslova

Korištenje grid okolina CRO NGI i EGI

Page 31: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Globus parametri

• Moguće je posao opisati s Globusovim jezikom

• korisno za paralelne poslove i postavljanje resursa

Korištenje grid okolina CRO NGI i EGI

globusrsl=(<att>=<value>)(<att>=<value>)...

Page 32: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Paralelni poslovi

• Nisu izravno podržani

• Ostvaruju se korištenjem Globus parametara

• Primjeri (mpi.jdl)

• opis MPI posla koji zahtjeva 4 procesora

• nije potrebno navoditi mpirun u skripti

• proizvoljna paralelna aplikacija

• primjer Gaussian

Korištenje grid okolina CRO NGI i EGI

globusrsl = (jobType=mpi)(count=4)

globusrsl = (jobType=single)(count=4)

Page 33: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Paralelni poslovi

• Svi procesori na istom čvoru

Korištenje grid okolina CRO NGI i EGI

environment = "PE_MODE=single"

Page 34: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

MPI okolina

• Tri verzije • MPICH2 1.5 : mpich2-x86_64

• MVAPICH2 2.0 : mvapich2-x86_64

• MVAPICH2 2.0 s prevodiocima GNU 4.9 : mvapich2-gcc49-x86_64

• MVAPICH2 na UNIZG-Srce, na ostalima MPICH2

• Na pristupnom čvoru i skriptama potrebno odabrati naredbom

Korištenje grid okolina CRO NGI i EGI

module load <ime_modula>

Page 35: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Polja poslova

• Korištenjem parametra queue

• pokreće N neovisnih poslova

• Korisna varijabla u skripti

• $(Process) – jedinstveni identifikator pojedinog posla

• vrijednosti su 0 … N-1

Korištenje grid okolina CRO NGI i EGI

queue N

output = array.out.$(Process)

transfer_input_files = input.$(Process)

Page 36: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Polja poslova

• Pokretanje na više CE čvorova (job-array.jdl)

Korištenje grid okolina CRO NGI i EGI

executable = mojProg

output = ce.srce.out.$(Process)

error = ce.srce.err.$(Process)

grid_resource = gt2 ce.srce.cro-ngi.hr/jobmanager-sge

queue 2

output = ce.etfos.out.$(Process)

error = ce.etfos.err.$(Process)

grid_resource = gt2 ce.etfos.cro-ngi.hr/jobmanager-pbs

queue 2

Page 37: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

GPU poslovi

• Poslovi koji zahtijevaju grafičke procesore (GPU) • GPU-ovi su dostupni isključivo na sjedištu Srce

• Primjer (gpu.jdl)

Korištenje grid okolina CRO NGI i EGI

grid_resource=gt2 ce.srce.cro-ngi.hr/jobmanager-sge

environment = SGE_PE=gpu

Page 38: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

GPU okoline

• Dostupne su dvije GPU okoline: • CUDA 5.5: cuda-5-5

• CUDA 7.0: cuda-7-0

• Na pristupnom čvoru i skriptama potrebno odabrati naredbom

Korištenje grid okolina CRO NGI i EGI

module load <ime_modula>

Page 39: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dodatni zahtjevi na sjedištu Srce

• Moguće je birati: • vrstu radnog čvora (vendor)

• količinu memorije za potrebe jednog procesa u GB (memory)

• količinu diska za potrebe jednog procesa u GB (memory)

• Dostupne vrste čvorova: • Sun - Sun Fire x4600

• HP - HP ProLiant SL250s

• IBM - IBM NeXtScale nx360 M5

Korištenje grid okolina CRO NGI i EGI

Page 40: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dodatni zahtjevi na sjedištu Srce

• Primjer zahtjeva Sun čvora (srce.jdl)

• Primjer zahtjeva IBM čvora, pri čemu je za izvođenje potrebno 16 jezgri, 64 GB radne memorije i 256 GB diska

Korištenje grid okolina CRO NGI i EGI

globusrsl =

(jobType=single)(count=16)(memory=4)(vendor=IBM)

(scratch=16)

globusrsl = (vendor=Sun)

Page 41: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Filtriranje sjedišta

• Moguće je definirati uvjete koje sjedište mora ispuniti

• Koristiti naredbu za dohvat svih atributa

• Moguće primijeniti samo u okolini s HTCondor Matchmaking

Korištenje grid okolina CRO NGI i EGI

Requirements = <expr>

condor_status -l

Page 42: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Filtriranje sjedišta

• Primjer

• grid sjedište mora imati najmanje 2 procesora slobodna

• odabir dva sjedišta

Korištenje grid okolina CRO NGI i EGI

Requirements = TARGET.MaxMatches > 2

Requirements = TARGET.Name == “ce.irb.cro-ngi.hr”

|| TARGET.Name == “ce.fesb.cro-ngi.hr”

Page 43: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Filtriranje sjedišta

• Parametar za sjedišta koje prihvaćaju paralelne poslove

Korištenje grid okolina CRO NGI i EGI

Requirements = TARGET.ParallelOnly =?= 1

Page 44: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Ocjenjivanje sjedišta

• Sjedišta je moguće ocjenjivati opcijom

• Primjer

• posao preferira sjedišta s više slobodnih procesora

• Moguće primijeniti samo u okolini s HTCondor Matchmaking

Korištenje grid okolina CRO NGI i EGI

Rank = <expr>

Rank = TARGET.MaxMatches

Page 45: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Varijable

• HTCondor omogućava korištenje varijabli u opisu posla • mogu se koristiti u vrijednosti svih atributa

• format: $(ime_varijable)

• korisne za izradu jednostavnijih skripti

• Varijable sustava • $(Cluster) - identifikator posla

• $(Process) - identifikator pojedinih poslova u polju

• primjer korištenja za jedinstveno ime izlaza i greške

Korištenje grid okolina CRO NGI i EGI

Output = output.$(Cluster).$(Process)

Error = error.$(Cluster).$(Process)

Page 46: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Varijable

• Korisničke varijable • proizvoljan broj u opisu posla

• vrijednost se postavlja naredbom (customvar.jdl)

• vrijednost može biti postavljena naredbom queue (napredna polja poslova)

Korištenje grid okolina CRO NGI i EGI

moja = test

Page 47: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Napredna polja poslova

• Tri operatora za odabir indeksa: • in: navodi se konačan broj vrijednosti za jednu varijablu

• from: navodi se konačan broj vrijednosti za više varijabli u opisu posla ili izdvojenoj datoteci

• matching: koristi se popis datoteka i direktorija kao vrijednosti za jednu varijablu

• Primjer korištenja operatora in (job-array-in.jdl)

• pokreće 4 posla

• varijabla $(MyTask) u poslu ima vrijednosti 1…4

Korištenje grid okolina CRO NGI i EGI

queue MyTask in 1 2 3 4

Page 48: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Napredna polja poslova

• Primjer korištenja operatora matching (job-array-matching.jdl)

• pokreće onoliko poslova koliko ima datoteka test.* u direktoriju iz kojeg se pokreće posao

• varijabla $(MyTask) u poslu ima vrijednost imena pronađene datoteke

• Primjer korištenja operatora from • prikazan u primjeru aplikacije Gaussian

Korištenje grid okolina CRO NGI i EGI

queue MyTask matching test.*

Page 49: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Primjer posla Gaussian

• Primjer posla Gaussian (gaus.jdl)

• Optimizacija posla pomoću korisničkih varijabli (gaus-custom.jdl)

• parametri naziv ulazne datoteke, broj jezgri i sjedište

• kod pokretanja mijenja se samo na jednom mjestu

• Optimizacija posla pomoću naprednog polja poslova (gaus-job-array.jdl)

• parametri se navode u tekstualnoj datoteci (gaus_run)

• navođenjem više linija pokreće se više poslova jednom naredbom

Korištenje grid okolina CRO NGI i EGI

test230 10 srce

Page 50: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Problem prijenosa izlaznih datoteka

• Condor-G problem s izlaznim datotekama • datoteke definirane u atributu transfer_output_files

• Ako po završetku posla barem jedna datoteka ne postoji (hold-155.jdl)

• posao se postavlja u stanje Hold s opisom

• standardni izlaz, greška i sve ostale izlazne datoteke će biti obrisane

• Situacija najčešće uzrokovana zbog greške u izvođenju aplikacije

Korištenje grid okolina CRO NGI i EGI

Globus error 155: the job manager could not stage

out a file

Page 51: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Problem prijenosa izlaznih datoteka

• Preporučeno rješenje (hold-155-fix.jdl) • na početku skripte stvoriti sve izlazne datoteke naredbom touch

Korištenje grid okolina CRO NGI i EGI

touch izlaz1 izlaz2 izlaz3

Page 52: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Vježbe

• $HOME/gworkshop/condorG

Korištenje grid okolina CRO NGI i EGI

mpi.jdl – paralelni MPI posao

gpu.jdl – GPU posao

srce.jdl – dugotrajni posao s zahtjevom Sun čvora

job-array.jdl - polje poslova na dva sjedišta

customvar.jdl – HTCondor korisničke varijable

job-array-in.jdl - polje poslova s operatorom in

job-array-matching.jdl - polje poslova s operatorom matching

Page 53: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Vježbe

• $HOME/gworkshop/condorG

Korištenje grid okolina CRO NGI i EGI

gaus.jdl – posao Gaussian

gaus-custom.jdl – posao Gaussian s korisničkim varijablama

gaus-job-array.jdl - posao Gaussian kao polje poslova s operatorom from i definicijom parametara u datoteci

hold-155.jdl - posao koji završava greškom zbog izlazne datoteke koja nedostaje

hold-155-fix.jdl - rješenje problema izlaznih datoteka korištenjem naredbe touch

Page 54: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G Naredbe za upravljanje poslovima

Korištenje grid okolina CRO NGI i EGI

Page 55: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dohvat podataka

• Dodatne skripte za dohvat podataka tijekom izvođenja posla

• Moguće je dohvatiti • standardni izlaz i grešku

• pojedine datoteke

• sve datoteke

• Datoteke se spremaju u poddirektorij ./<jobid>

Korištenje grid okolina CRO NGI i EGI

Page 56: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dohvat podataka

• Dohvat liste datoteka u privremenom direktoriju

• Dohvat standardnog izlaza

• Dohvat standardne greške

• Dohvat datoteke

Korištenje grid okolina CRO NGI i EGI

$ remote-scratch-ls <jobID>

$ remote-scratch-get <jobID> stdout

$ remote-scratch-get <jobID> stderr

$ remote-scratch-get <jobID> filename

Page 57: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dohvat podataka

• Na sjedištu UNIZG-Srce moguće izravno pristupiti radnom direktoriju

• naredba vraća direktorij

• direktoriju je moguće izravno pristupiti na UI čvoru

Korištenje grid okolina CRO NGI i EGI

$ remote-scratch-pwd <jobID>

Page 58: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Stanje sjedišta grida

• Naredba

• lista dostupnih sjedišta

• Detaljan status

• Ispis GRAM adresa

Korištenje grid okolina CRO NGI i EGI

$ condor_status

$ condor_status -l

$ condor_status -l | grep grid_resource

Page 59: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Stanje sjedišta grida

• Dodatna naredba koja koristi SGE

• zahtjeva valjani korisnički certifikat

Korištenje grid okolina CRO NGI i EGI

$ grid-queue-status

Page 60: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Zaustavljanje posla

• Naredba

• Ukoliko je posao u stanju X ili H

Korištenje grid okolina CRO NGI i EGI

$ condor_rm <jobID>

$ condor_rm -forcex <jobID>

Page 61: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Povijest poslova

• Naredba

• ispis svih poslova koje je HTCondor izveo

• Ispis povijesti za posao

• Detaljan ispis povijesti posla

Korištenje grid okolina CRO NGI i EGI

$ condor_history

$ condor_history <id>

$ condor_history -l <id>

Page 62: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Ponovno izvođenje poslova

• Naredbe

• posao se zaustavlja i vraća u red poslova

• HTCondor automatski zaustavlja grid poslove u slučaju greške

• Nastavak izvođenja

Korištenje grid okolina CRO NGI i EGI

$ condor_hold <jobID>

$ condor_release <jobID>

Page 63: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Reference

• CRO NGI korisničke upute • http://wiki.cro-ngi.hr

• HTCondor • http://www.cs.wisc.edu/htcondor/

• HTCondor-G korisničke upute • http://research.cs.wisc.edu/htcondor/manual/v8.4/5_3Grid_Universe

.html

• HTCondor-G parametri za opisivanje poslova • http://research.cs.wisc.edu/htcondor/manual/v8.4/condor_submit.ht

ml

Korištenje grid okolina CRO NGI i EGI

Page 64: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

EGI

Korištenje grid okolina CRO NGI i EGI

Page 65: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Uvod

• engl. European Grid Initiative

• Nastavak projekata EGEE

• Uspostava održive grid okoline za potrebe znanstvenika

• gridifikacija aplikacija iz određenih znanstvenih područja

• Grid sastavljen od nacionalnih grid infrastruktura (NGI) • NGI-jevi potpuno neovisni

• sukladno NREN (engl. National Research and Educational Networks) u računalnim mrežama

• Trenutno najveći svjetski grid

Korištenje grid okolina CRO NGI i EGI

Page 66: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Uvod

• 42 države (službeno povezane)

• 310 sjedišta

• Preko 480 000 procesorskih jezgri

• Gotovo 300 PB diskovnog prostora

• Preko 200 PB tračnog prostora

• 1,5 milijuna poslova dnevno

• Posrednički sustavi gLite, ARC, UNICORE, Globus

Korištenje grid okolina CRO NGI i EGI

Page 67: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Arhitektura

• Grid sjedišta • sjedišta sadrže različite vrste čvorova

• Vrste čvorova • CE, SE, MyProxy – ista svrha kao i na CRO NGI-ju

• sadrže veći skup servisa

• BDII – središnji informacijski servisi

• WMS – središnji servisi sustava za upravljanje poslovima

• LFC (engl. LCG File Catalog) – središnji katalog datoteka

• FTS (engl. File Transfer Service) – servisi za upravljanje prijenosom podataka

• VOMS (engl. Virtual Organization Membership Service) – središnji servis za upravljanje VO-ovima

Korištenje grid okolina CRO NGI i EGI

Page 68: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Hrvatska u EGI

• Sudjeluje od druge faze EGEE-II (2006.) • operativne i networking aktivnosti

• Uspostavljena tri sjedišta • financirana od strane MZOS-a

• SRCE CA prihvaćeno u EUGridPMA (IGTF)

Korištenje grid okolina CRO NGI i EGI

Page 69: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Hrvatska u EGI

• Ostale aktivnosti • nacionalne operacijske aktivnosti SA1 – održavanje središnjih

servisa i podrška sjedištima

• globalne operacijske aktivnosti u suradnji s CERN-om i GRNetom

• vođenje nadzorne aktivnosti Infrastructure for Grid Management Overview (SA1.4)

• razvojne aktivnosti JRA1 – sudjelovanje u razvoju sustava za nadzor grid servisa

• vođenje interoperacijske aktivnosti (SA1.3) – dodatni resursi

Korištenje grid okolina CRO NGI i EGI

Page 70: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Sigurnost Uvod

Korištenje grid okolina CRO NGI i EGI

Page 71: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Virtualne organizacije

• Specifična područja primjene • LHC VO-ovi (npr. alice, atlas), biomed

• Regionalni VO-ovi • Hrvatska je dio CE regije

• svi korisnici imaju pravo pristupa VOCE VO-u

• Pojedini VO-ovi imaju zasebna sučelja za prijavu

Korištenje grid okolina CRO NGI i EGI

Page 72: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Virtualne organizacije

• Operations Portal • http://operations-portal.egi.eu/vo/search

• pregled dostupnih VO-ova

• zahtjeva certifikat u pregledniku

• link VO Information / List

• VO Cards • detaljne informacije o pojedinim VO-ovima

Korištenje grid okolina CRO NGI i EGI

Page 73: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Katalog aplikacija

• Web sučelje s popisom dostupnih aplikacija

• https://appdb.egi.eu/

Korištenje grid okolina CRO NGI i EGI

Page 74: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Sigurnost Praktične vježbe

Korištenje grid okolina CRO NGI i EGI

Page 75: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Postavljanje gLite okoline na CRO NGI UI čvoru

• Trenutno podržani VO-ovi • dteam, cms, alice, atlas, ops, lhcb, voce, biomed

• obratite se na [email protected] za dodavanje drugih

Korištenje grid okolina CRO NGI i EGI

Page 76: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Stvaranje zastupničkog certifikata

• Ulazak na grid

• unijeti lozinku

• zastupnički certifikat se sprema u datoteku /tmp/x509_up<userid>

Korištenje grid okolina CRO NGI i EGI

$ voms-proxy-init –voms <VO>

Page 77: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Upravljanje zastupničkim certifikatom

• Dohvat informacija o certifikatu

Korištenje grid okolina CRO NGI i EGI

$ voms-proxy-info -all

subject : /C=IT/O=GILDA/OU=Personal

Certificate/L=ZAGREB/CN=ZAGREB01/CN=proxy

...

=== VO gilda extension information ===

VO : gilda

...

attribute : /gilda/Role=NULL/Capability=NULL

attribute : /gilda/grelc/Role=NULL/Capability=NULL

attribute : /gilda/grelc/das/Role=NULL/Capability=NULL

attribute :

/gilda/grelc/das/grid009.ct.infn.it/Role=NULL/Capability=NULL

attribute :

/gilda/grelc/das/grid009.ct.infn.it/sakila/Role=NULL/Capability=NULL

timeleft : 11:41:42

Page 78: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Upravljanje zastupničkim certifikatom

• Brisanje zastupničkog certifikata

Korištenje grid okolina CRO NGI i EGI

$ voms-proxy-destroy

Page 79: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Automatsko osvježavanje

• Periodičko osvježavanje VO zastupničkog certifikata • dodatna komponenta na CRO NGI-ju

• Prijava zastupničkog certifikata

• unijeti lozinku korisničkog certifikata

• osvježavanje će se obavljati definirani broj dana

• 24h prije isteka korisnik će primiti email obavijest

Korištenje grid okolina CRO NGI i EGI

$ myproxy-manage-create -v <VO> –m –d <dana>

Page 80: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Nadzor

Korištenje grid okolina CRO NGI i EGI

Page 81: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

GSTAT

• Nadzor EGI grida

• Podaci prikupljeni od servisa BDII

• Web sučelje • http://gstat.egi.eu

Korištenje grid okolina CRO NGI i EGI

Page 82: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Ostali alati

• SAM (engl. Service Availability Monitoring) • središnji nadzor stanja grid servisa

• http://grid-monitoring.egi.eu/myegi/

• Accounting • korištenje resursa od strane pojedinih VO-ova

• http://accounting.egi.eu

• Većina VO-ova ima vlastita sučelja za nadzor • primjer: Dashboard http://dashboard.cern.ch/

Korištenje grid okolina CRO NGI i EGI

Page 83: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Upravljanje poslovima

Korištenje grid okolina CRO NGI i EGI

Page 84: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Workload Management System

Korištenje grid okolina CRO NGI i EGI

Page 85: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Opis poslova

• Jezik sličan HTCondor-G

Korištenje grid okolina CRO NGI i EGI

attribute = value;

attribute = value;

attribute = value;

attribute = value;

Page 86: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Opis poslova

• Definicija izvršne datoteke

• Podrazumijevano se koristi datoteka na sjedištu

• Za korištenje lokalne datoteke potrebno eksplicitno navesti prijenos

Korištenje grid okolina CRO NGI i EGI

Executable = “path”;

Page 87: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Argumenti

• Argumenti aplikacije

Korištenje grid okolina CRO NGI i EGI

Arguments = “arg1 arg2 arg3”;

Page 88: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Standardni ulaz, izlaz i greška

• Standardni ulaz

• Standardni izlaz

• Standardna greška

• Potrebno eksplicitno definirati prijenos datoteka

Korištenje grid okolina CRO NGI i EGI

StdInput = “path”;

StdOutput = “path”;

StdError = “path”;

Page 89: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Prijenos datoteka

• Potrebno eksplicitno definirati prijenos svih datoteka

• Prijenos na udaljeno računalo

• Prijenos s udaljenog na lokalno računalu

• Datoteke se prenose iz direktorija iz kojeg se podnosi posao

• Izlazne datoteke potrebno dohvatiti na završetku posla

Korištenje grid okolina CRO NGI i EGI

InputSandbox = {" path", " path", ...};

OutputSandbox = {" path", " path", ...};

Page 90: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Filtriranje sjedišta

• Moguće je definirati uvjete koje sjedište mora ispuniti

• Koriste se atributi dohvaćeni od servisa BDII

• koristiti naredbu lcg-info

• Primjer

• grid sjedište mora imati najmanje 2 procesora slobodna

Korištenje grid okolina CRO NGI i EGI

Requirements = <expr>;

Requirements = other.GlueCEStateFreeCPUs > 2;

Page 91: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Ocjenjivanje sjedišta

• Sjedišta je moguće ocjenjivati opcijom

• Primjer

• posao preferira sjedišta s više slobodnih procesora

Korištenje grid okolina CRO NGI i EGI

Rank = <expr>;

Rank = other.GlueCEStateFreeCPUs;

Page 92: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Podnošenje posla

• Naredba

• naredba ispisuje ID posla

• Bitno: potrebno je zapamtiti ID posla • nema mogućnosti dohvata aktivnih poslova

• gubitak ID-ja znači gubitak posla

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-submit -a <classadd_file>

Page 93: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Podnošenje posla

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-submit -a <classadd_file>

Connecting to the service https://glite-

rb3.ct.infn.it:7443/glite_wms_wmproxy_server

====================== glite-wms-job-submit Success

======================

The job has been successfully submitted to the WMProxy

Your job identifier is:

https://glite-rb3.ct.infn.it:9000/3J_assjCOjNiWBOYfCRahg

============================================================

==============

Page 94: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Prikaz stanja posla

• Naredba

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-status <jobID>

Page 95: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Prikaz stanja posla

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-status https://glite-

rb3.ct.infn.it:9000/3J_assjCOjNiWBOYfCRahg

************************************************************

*

BOOKKEEPING INFORMATION:

Status info for the Job : https://glite-

rb3.ct.infn.it:9000/3J_assjCOjNiWBOYfCRahg

Current Status: Done (Success)

Exit code: 0

Status Reason: Job terminated successfully

Destination: iceage-ce-01.ct.infn.it:2119/jobmanager-

lcgpbs-long

Submitted: Thu May 15 14:48:10 2008 CEST

...

Page 96: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Zaustavljanje poslova

• Datoteke navedene u OutputSandbox potrebno dohvatiti:

• spremaju se u poseban direktorij

• naredba ispisuje putanju do direktorija

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-output <jobID>

Page 97: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dohvat izlaznih datoteka

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-output https://glite-

rb3.ct.infn.it:9000/3J_assjCOjNiWBOYfCRahg

Connecting to the service https://glite-

rb3.ct.infn.it:7443/glite_wms_wmproxy_server

============================================================

====================

JOB GET OUTPUT OUTCOME

Output sandbox files for the job:

https://glite-rb3.ct.infn.it:9000/3J_assjCOjNiWBOYfCRahg

have been successfully retrieved and stored in the

directory:

/tmp/jobOutput/eimamagi_3J_assjCOjNiWBOYfCRahg

============================================================

====================

Page 98: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Zaustavljanje poslova

• Naredba

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-cancel <jobID>

Page 99: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Dohvat informacija o poslu

• Naredba

Korištenje grid okolina CRO NGI i EGI

$ glite-wms-job-logging-info <jobID>

Page 100: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Vježba

• $HOME/gworkshop/wms

Korištenje grid okolina CRO NGI i EGI

hostname.jdl – izvođenje udaljenog programa

test.jdl – izvođenje programa smještenog na UI čvoru

req.jdl – primjer filtriranja CE čvorova

rank.jdl – primjer ocjenjivanja CE čvorova

Page 101: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G

Korištenje grid okolina CRO NGI i EGI

Page 102: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

HTCondor-G

• HTCondor-G podržava posredničke sustave ne EGI • ARC, CREAM, UNICORE

• Potreban je važeći VO zastupnički certifikat

• Primjer podnošenja na CREAM (cream.jdl)

• Ostali parametri su standardni

Korištenje grid okolina CRO NGI i EGI

grid_resource = cream ce.fesb.egi.cro-ngi.hr:8443/cream-pbs-sunx2200

Page 103: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Reference

• CRO NGI korisničke upute • http://wiki.cro-ngi.hr

• EGI • http://www.egi.eu

• EMI • https://www.eu-emi.eu

• Operations portal • https://operations-portal.egi.eu

Korištenje grid okolina CRO NGI i EGI

Page 104: Korištenje grid okolina CRO NGI i EGI - unizg.hr · arguments = arg1 \"arg 2\" 'arg 3' Standardni ulaz, izlaz i greška •Standardni ulaz •Standardni izlaz •Standardna greška

Srce politikom otvorenog pristupa široj javnosti

osigurava dostupnost i korištenje svih rezultata rada

Srca, a prvenstveno obrazovnih i stručnih informacija

i sadržaja nastalih djelovanjem i radom Srca.

Ovo djelo je dano na korištenje pod licencom

Creative Commons Imenovanje-Nekomercijalno

4.0 međunarodna.

www.srce.unizg.hr creativecommons.org/licenses/by-nc/4.0/deed.hr www.srce.unizg.hr/otvoreni-pristup

Hvala na pažnji!

Pitanja?