Comandi di Globus Daniele D'Agostino
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
Comandi di Globus Daniele D’Agostino 1
Globus Toolkit Esistono varie versioni del Globus Toolkit GT2.4 e GT3.2.1 sono le ultime Verra’ trattato nello specifico GT2.4 si basa su quattro moduli • Security • Resource Management • Information Service • Data Management 2
Security Requisiti di sicurezza di una GRID Realizzare comunicazioni sicure (autenticate e spesso confidenziali) Non contrastare la politica locale di sicurezza • Data l’eterogeneità delle varie organizzazioni che fanno parte della GRID si vuole lasciare a esse la massima autonomia per quanto riguarda i sistemi per la sicurezza utilizzati al loro interno Single sign-on • Il singolo utente si deve autenticare alla GRID una ed una sola volta al momento del primo accesso • Delegation: si delegano tutte le richieste di autenticazione future ad un proxy agent COME FA GLOBUS A RISPONDERE A QUESTI REQUISITI? Global Security Infrastructure (GSI) Modulo relativo alla sicurezza, fornisce servizi agli altri tre Basato su crittografia a chiave pubblica, certificati X.509 e protocollo di comunicazione SSL Politica di sicurezza configurabile associando utenti Grid a utenti locali (gridmap-file) Creazione di proxy agent di durata limitata per ogni utente 3
Security (Certification Authority) Per ottenere i certificati X.509 bisogna: Generare la richiesta di certificati per host, MDS e user: • grid-cert-request –ca (selezianare uan CA dalla lista) Spedire la richiesta via e-mail alla CA scelta Una volta ricevuti i certificati copiarli in ~/.globus/ della macchina usata come client quelli utente, in /etc/grid-security quelli della macchina (da root) Esiste la possibilita’ di creare una propria CA L’autenticazione è delegata al proxy che risiede sulla macchina. Per attivarlo: • grid-proxy-init 4
Resource Management Si occupa della gestione delle risorse ed è composto da: GRAM (Globus Resource Allocation Manager) • È il componente di più basso livello del modulo • Permette di eseguire programmi su risorse remote DUROC • Co-allocatore di richieste (ad esempio processi paralleli) GASS • Accesso semplice a file remoti 5
Resource Management (GRAM) CLIENT Creazione proxy Job submit (linguaggio RSL-RSL2) Comandi: • Globusrun, Globus-job-run, Globus-job-submit Esempio di comando unix “ls -la” • globusrun -o -r tulipano.ima.ge.cnr.it &(executable=/bin/ls)(arguments=la)’ • globus-job-run tulipano.ima.ge.cnr.it /bin/ls –la • globus-job-submit tulipano.ima.ge.cnr.it /bin/ls –la 6
Resource Management (GRAM) SERVER Gatekeeper • Processo demone con privilegi di root in attesa di richieste – Mutua autenticazione con il proxy del client – Mappa client in un utente locale (gridmap-file) – Istanzia Job-manager con diritti utente locale – Passa argomenti necessari per allocazione dei processi Job Manager • Avvia processi del job interfacciandosi con il sistema locale e comunica lo stato dei processi all’esterno – Parsing RSL – Interfacciamento con il sistema locale – Comunicazione diretta con il client per stato dei processi 7
Resource Management (DUROC) + Co-allocatore di richieste ( &(resourceManagerContact=“cluster.ima.ge.cnr.it") Si usa con il comando (count=16) globusrun (jobtype=mpi) (label="subjob 0") La richiesta è fatta in RSL (environment=(GLOBUS_DUROC_SUBJOB_INDEX 0) (LD_LIBRARY_PATH /usr/local/globus/lib/)) Scompone in (directory="/home/globus ") sottorichieste (Job (executable="/home/globus/mpi_test") Managers) ) Si occupa di riassemblare ( &(resourceManagerContact=“cluster.dibe.unige.it") il risultato. (count=9) Esempio script RSL (jobtype=mpi) Lo script a fianco lancia (label="subjob 1") un programma MPI con (environment=(GLOBUS_DUROC_SUBJOB_INDEX 1) 16+9 processi su due (LD_LIBRARY_PATH /usr/local/globus/lib/)) cluster (directory="/home/globus") (executable="/home/globus/mpi_test") ) Nota: per utilizzare MPI bisogna installare la versione Grid Enabled MPICH-G2 8
Resource Management (GASS) Permette di accedere a file remoti in maniera semplice Semplifica la scrittura delle richieste del job e velocizza l'esecuzione del programma. Esempio di comando: globusrun -s -r tulipano.ima.ge.cnr.it '&(executable=$(GLOBUSRUN_GASS_URL)/home/globus/sonar/cSVM)(arguments=sonar) (file_stage_in=($(GLOBUSRUN_GASS_URL)/home/globus/sonar/sonar.txt $(HOME)/sonar.txt) ($(GLOBUSRUN_GASS_URL)/home/globus/sonar/sonar.svm $(HOME)/sonar.svm) ($(GLOBUSRUN_GASS_URL)/home/globus/sonar/sonarval.txt $(HOME)/sonarval.txt)) (file_stage_out=($(HOME)/sonar.aaa $(GLOBUSRUN_GASS_URL)/home/globus/sonar/sonar.aaa) ($(HOME)/sonar.val $(GLOBUSRUN_GASS_URL)/home/globus/sonar/sonar.val)) (file_clean_up=/home/sp3/dibe/sonar.txt /home/sp3/dibe/sonarval.txt /home/sp3/dibe/sonar.svm /home/sp3/dibe/sonar.aaa /home/sp3/dibe/sonar.val)‘ 9
Information Service (MDS) E’ basato sullo standard x.509 e usa LDAP Catena gerarchica di server LDAP 10
Information Service (componenti principali) GRIS (grid resource information service) Database LDAP che risiede su ciascuna risorsa e provvede a raccogliere tutte le caratteristiche dinamiche e permanenti di una griglia. GIIS (grid index information service) mette assieme diversi GRIS offrendo una immagine coerente agli utenti e alle applicazioni grid. Per noi è tulipano. IP (information provider) Componente che risiede sulla risorsa e tiene traccia di un aspetto particolare di essa (memoria, CPU, ecc..); viene consultato da un GRIS per ottenere tali informazioni; puo’ essere personalizzato, ne può essere creato uno nuovo… La consultazione puo’ avvenire attraverso un semplice browser LDAP o attraverso il comando grid-info-search -x (-x = ricerca anonima, senza proxy) Esempio: informazioni sul tipo e numero di processori, GRIS locale o GIIS: grid-info-search –x Mds-Device-Group-name=processors grid-info-search –x –h tulipano -b “Mds-Vo-Name=gema, o=Grid” Mds-Device-Group-name=processors 11
Data Management Esistono due applicativi fondamentali per la gestione dei dati GRID-FTP protocollo basato su FTP, con funzionalita’ aggiuntive • Trasferimento dei dati tra due host remoti • Canali di trasferimento multipli per trasferimenti paralleli • Trasferimenti parziali dei dati • Sicurezza sui canali di controllo e trasmissione dati • Autenticazione dei canali di trasmissione Il comando principale per la trasmissione dei dati e’ globus-url-copy • Ci sono 3 tipi di trasferimento possibili: – in/da locale: file:// in/da remoto: gsiftp:// in/da http: https:// globus-url-copy file://prova.txt gsiftp://tulipano.ima.ge.cnr.it/tmp/prova.txt REPLICA SERVICES Strumenti utilizzabili per mantenere cataloghi replicati di insiemi di dati Velocizzano l'accesso ai dati e sono utilizzati soprattutto su grid di grandi dimensioni Possono lavorare in cooperazione con GRID-FTP 12
Puoi anche leggere