Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Introduzione alle griglie computazionali
Università degli Studi di Napoli Federico II Corso di Laurea in Informatica – III Anno LEZIONE N. 5 Caratterizzazione di un sistema di calcolo distribuito convenzionale Caratterizzazione di un sistema di calcolo Grid Grid middleware: GSI Introduzione alle griglie computazionali - a.a
2
Introduzione alle griglie computazionali - a.a. 2005-06
Concetto di “Computational Grids”: risorse di computing/storage accessibili facilmente (come avviene per l’utilizzo dell’energia elettrica) prospettiva di utility: utenti che ottengono accesso a delle risorse tramite un provider prospettiva di resource sharing: virtual organization condividono risorse per il raggiungimento di uno scopo comune Introduzione alle griglie computazionali - a.a
3
Introduzione alle griglie computazionali - a.a. 2005-06
Il concetto di resource sharing non e’ una novita’: printer sharing, RPC, networked file systems, ... Grid viene considerato il successore dei sistemi di calcolo distribuiti convenzionali tuttavia esistono diverse definizioni di Grid: high-performance distributed computing environment geographically distributed computing “Coordinated resource sharing and problem solving in dynamic , multi-institutional virtual organizations”. Introduzione alle griglie computazionali - a.a
4
Introduzione alle griglie computazionali - a.a. 2005-06
G R I D Introduzione alle griglie computazionali - a.a
5
Introduzione alle griglie computazionali - a.a. 2005-06
Metodologia per la caratterizzazione Applicazione distribuita numero (finito) di processi cooperativi che utilizzano risorse debolmente accoppiate (loosely coupled resources) La macchina virtuale su cui viene eseguita un’applicazione distribuita differisce nelle sue caratteristiche se consideriamo un sistema di calcolo distribuito convenzionale un sistema di calcolo Grid E’ possibile definire un sistema Grid caratterizzando la macchina virtuale Introduzione alle griglie computazionali - a.a
6
Introduzione alle griglie computazionali - a.a. 2005-06
Caratterizzazione di un sistema di calcolo distribuito convenzionale (1/2) L’applicazione distribuita assume l’esistenza di un pool di nodi di calcolo che implementano una macchina virtuale Il pool consiste in un insieme di PC, supercomputer, ... su cui ha accesso (login + password) l’utente che esegue l’applicazione distribuita L’operazione di login alla macchina virtuale consiste nella autenticazione su ciascun nodo. In generale assumiamo che l’utente autenticato su un nodo del pool viene automaticamente autorizzato all’utilizzo di tutti i nodi del pool Introduzione alle griglie computazionali - a.a
7
Introduzione alle griglie computazionali - a.a. 2005-06
Caratterizzazione di un sistema di calcolo distribuito convenzionale (2/2) L’utente di un sistema di calcolo distribuito convenzionale conosce le caratteristiche dei nodi a disposizione (sistema operativo, potenza del processore, spazio disco, ...) Inoltre, l’insieme di nodi e’ statico in quanto cambia molto raramente le sue caratteristiche Infine la dimensione di un sistema di calcolo distribuito convenzionale tipicamente non supera il centinaio nodi Introduzione alle griglie computazionali - a.a
8
Introduzione alle griglie computazionali - a.a. 2005-06
Application A2 nodo risorsa Virtual machine level Virtual pool level Physical level Introduzione alle griglie computazionali - a.a
9
Introduzione alle griglie computazionali - a.a. 2005-06
Caratterizzazione di un sistema di calcolo Grid (1/2) Un’applicazione distribuita assume l’esistenza di un pool di risorse (processori, memoria, disco, ...) distribuite su scala geografica La macchina virtuale, nel caso Grid, e’ costituita da un set di risorse del pool L’operazione di login alla macchina virtuale presuppone che l’utente possiede delle credenziali accettate dai proprietari delle risorse del pool. Un utente può essere autorizzato all’utilizzo di una risorsa senza avere un account sul nodo che ospita la risorsa. Introduzione alle griglie computazionali - a.a
10
Introduzione alle griglie computazionali - a.a. 2005-06
Caratterizzazione di un sistema di calcolo Grid (2/2) L’utente di un sistema di calcolo distribuito Grid non conosce le caratteristiche delle risorse a disposizione L’insieme di nodi e’ dinamico Infine la dimensione di un sistema di calcolo Grid può senza problemi essere di migliaia risorse Introduzione alle griglie computazionali - a.a
11
Introduzione alle griglie computazionali - a.a. 2005-06
Application A2 nodo risorsa Virtual machine level Virtual pool level Physical level Introduzione alle griglie computazionali - a.a
12
Sistemi di calcolo distribuito convenzionali Sistemi di calcolo Grid
Riepilogo e comparazione Sistemi di calcolo distribuito convenzionali Sistemi di calcolo Grid pool virtuale di nodi di calcolo pool virtuale di risorse l’utente ha accesso ai nodi del pool l’utente ha accesso al pool ma non ai nodi l’accesso al nodo implica l’utilizzo di tutte le risorse del nodo l’accesso ad una risorsa può essere ristretto l’utente e’ a conoscenza delle caratteristiche dei nodi l’utente non ha idea delle caratteristiche delle risorse i nodi appartengono ad un singolo dominio di gestione le risorse appartengono a piu’ domini di gestione elementi nel pool: , statici elementi nel pool: >> 100, dinamici Introduzione alle griglie computazionali - a.a
13
Introduzione alle griglie computazionali - a.a. 2005-06
Definizione di Grid Insieme di servizi che consentono il calcolo distribuito su risorse appartenenti a diversi domini di gestione e che fornisce: virtualizzazione degli utenti virtualizzazione delle risorse In base alla definizione e alla caratterizzazione di Grid e’ possibile determinare se un sistema di calcolo è “Grid-enabled” Introduzione alle griglie computazionali - a.a
14
Introduzione alle griglie computazionali - a.a. 2005-06
Introduzione al Grid Middleware Globus Project Sviluppato dal 1998, standard “de facto” per le tecnologie GRID. partner: Argonne NL (Chicago), USC/ISI (California), EPCC (Edimburgo) ... sviluppo open source del Globus Toolkit Globus Toolkit insieme di librerie e servizi “nucleo” dell’infrastruttura Grid” architettura a livelli modello modulare: bag of services Servizi Globus di base Introduzione alle griglie computazionali - a.a
15
Introduzione alle griglie computazionali - a.a. 2005-06
Globus Toolkit Servizi di base Sicurezza (GSI) Servizi Informativi (MDS) Gestione delle risorse (GRAM) Gestione dei dati (GASS, GridFTP) Resource Management Information Services Data Management security Introduzione alle griglie computazionali - a.a
16
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI (1/9) Grid Security Infrastucture Le entità in gioco sono utenti, programmi e computers Technical requirements multi-site authentication (verifica di identità) authorization (mappa l’entità ad un set di privilegi) message integrity non-repudiation message privacy delegation (proxy) users virtualization Users requirements simplicity Introduzione alle griglie computazionali - a.a
17
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI (2/9) Generalità Controllo locale e flessibile sulle politiche di accesso. Le credenziali di una entità (utente o server) sono fornite attraverso certificati digitali. utilizzo di certificati X.509 (modello gerarchico) Rilascio da parte di CA (Certification Authority) Soluzione basata su crittografia asimmetrica Introduzione alle griglie computazionali - a.a
18
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI (3/9) Rilascio del certificato Step 1 l’utente genera un certificato vuoto di richiesta: usercert_request.pem una chiave privata criptata: userkey.pem Step 2 l’utente invia il certificato vuoto alla propria CA e viene identificato (tramite una RA locale) Step 3 l’utente riceve il certificato compilato dalla CA - chiave pubblica dell'utente - vero nome dell'utente - data di scadenza del certicato - nome della Certication Autorithy - numero di serie del certicato - firma digitale della CA Introduzione alle griglie computazionali - a.a
19
Introduzione alle griglie computazionali - a.a. 2005-06
An X.509 Certificate contains: owner’s public key; identity of the owner; info on the CA; time of validity; Serial number; digital signature of the CA Public key Subject:C=IT, O=INFN, OU=Personal Certificate, L=NAPOLI CN=Alessandra Doria Issuer: C=IT, O=INFN, CN=INFN Certification Authority Expiration date: May 10 14:15: GMT Serial number: 080E CA Digital signature Structure of a X.509 certificate Introduzione alle griglie computazionali - a.a
20
Introduzione alle griglie computazionali - a.a. 2005-06
Certificato -----BEGIN CERTIFICATE----- MIIF1zCCBL+gAwIBAgICCA4wDQYJKoZIhvcNAQEEBQAwQzELMAkGA1UEBhMCSVQx DTALBgNVBAoTBElORk4xJTAjBgNVBAMTHElORk4gQ2VydGlmaWNhdGlvbiBBdXRo b3JpdHkwHhcNMDQwNTEwMTMxNTIyWhcNMDUwNTEwMTMxNTIyWjCBjzELMAkGA1UE BhMCSVQxDTALBgNVBAoTBElORk4xHTAbBgNVBAsTFFBlcnNvbmFsIENlcnRpZmlj YXRlMQ0wCwYDVQQHEwRDTkFGMRcwFQYDVQQDEw5EYW5pZWxlIENlc2luaTEqMCgG CSqGSIb3DQEJARYbZGFuaWVsZS5jZXNpbmlAY25hZi5pbmZuLml0MIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnEvVPBpTjKLA4F0K+Zgc8pWyEPGDnwLW glktBI6+mYTLuemPzgkZ4CTyrZL7bw5ywXUe717e1Rmg6wDfPANRLkxxRNKNaron kS19eNKjPYpklEKNq2gSGsK0/SsYB2YUG4kWLqtFC93x1Ffdc1Tz0xgrXH3kC0jq NqHImDrbpB7VtvAGC7/e/EJhy9MvlPA4W2vbUnwBocjMA/en3GXs2KY19tbFA3Tg jyIpCMbIeu3GlyTnbSJFoy3eeHkNLsf9c29RAJ5gWxMF7arM++NyURQ9qaEdMINj Cqb7dHJEj8E/AwSsYeWmWHfaPXnjj5aP23UlRTc31nSwh+5y0bMnFwIDAQABo4IC hjCCAoIwDAYDVR0TAQH/BAIwADAOBgNVHQ8BAf8EBAMCBPAwNgYDVR0fBC8wLTAr oCmgJ4YlaHR0cDovL3NlY3VyaXR5LmZpLmluZm4uaXQvQ0EvY3JsLmNybDAXBgNV HSAEEDAOMAwGCisGAQQB0SMKAQQwHQYDVR0OBBYEFCM+8mfoaenmQ76tHy+7hX+5 RKJ6MGsGA1UdIwRkMGKAFMoR710dBwSYqaW1WBpmTgoWK+BJoUekRTBDMQswCQYD VQQGEwJJVDENMAsGA1UEChMESU5GTjElMCMGA1UEAxMcSU5GTiBDZXJ0aWZpY2F0 -----END CERTIFICATE----- grid-cert-info -<option> -f cert_file.pem where <option> can be: -all -startdate -subject -enddate -issuer -help Introduzione alle griglie computazionali - a.a
21
Introduzione alle griglie computazionali - a.a. 2005-06
Nota: cifratura crittografia asimmetrica: A B Cifratura e decifratura sono fatte con chiavi diverse, A pubblica e B privata. Il mittente cifra con la chiave pubblica del ricevente, che sarà l’unico a poter decifrare. Quello che è criptato con la chiave A può essere decriptato solo con B e viceversa. Non si può mai ricavare A da B, né viceversa. Introduzione alle griglie computazionali - a.a
22
Introduzione alle griglie computazionali - a.a. 2005-06
Nota: firma digitale Da un messaggio di lunghezza variabile, una funzione produce una stringa di lunghezza fissa (HASH). L’hash viene criptato con la chiave privata del mittente e decriptato con la pubblica, verificando l’integrità A controllo sull’identita’ del mittente verifica dell’integrita’ del messaggio non ripudiabilita’ B Introduzione alle griglie computazionali - a.a
23
Sicurezza: GSI (4/9) Fasi dell’autenticazione
User certificate Verify CA signature Random phrase Encrypt with user private key Encrypted phrase Decrypt with user public key Compare with original phrase La richiesta è accompagnata dal certificato La CA deve essere “trusted” presso il ricevente se la stringa decriptata coincide, il ricevente non può rifiutare la richiesta Ogni transazione Grid è soggetta a mutua autenticazione Introduzione alle griglie computazionali - a.a
24
Sicurezza: GSI (5/9) Grid authentication user certificate file
private key user proxy certificate file grid-proxy-init Per evitare che un cerificato possa essere intercettato, viene creato un proxy (locale e temporaneo) delle credenziali utilizzato per tutte le operazioni. X.509 Proxy Certificate = estensione GSI di X.509 Ha durata molto inferiore al certificato originale (in genere 12 h) Introduzione alle griglie computazionali - a.a
25
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI (6/9) Delega delega = creazione remota di un proxy delle credenziali permette a un processo remoto di autenticarsi per conto dell’utente Immettendo una password l’utente firma il proxy con la propria chiave privata. I proxy hanno una propria coppia di chiavi. Introduzione alle griglie computazionali - a.a
26
Sicurezza: GSI (7/9) Delega
Si possono interrogare e cancellare i propri proxy: grid-proxy-info grid-proxy-destroy (non distrugge i proxy delegati) Un task Grid può durare più a lungo del proxy: Un myproxy server può rinnovare automaticamente i proxy di task ancora in corso che stanno per scadere. Introduzione alle griglie computazionali - a.a
27
Quali entità hanno bisogno di un certificato?
RLS BDII edg-job-submit RB User SE globus-job-run A Certificate is needed for: User RB CE SE CE To test user authentication on a farm we will use this command on the CE. WN Introduzione alle griglie computazionali - a.a
28
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI (8/9) Grid authorization – mapping Essere autenticato non dà diritti di esecuzione su una Grid. L’utente deve appartenere ad (almeno) un gruppo autorizzato all’uso delle risorse -> Virtual Organization Il proxy ottenuto con grid-proxy-init non contiene informazioni sulla VO. il grid-mapfile, gestito dall’amministratore locale, stabilisce i diritti di un utente su una specifica risorsa, in base alla sua VO di appartenenza. le entries del grid-mapfile mappano gli utenti della Grid autorizzati in utenti del sistema locale: "/C=IT/O=INFN/OU=Personal Certificate/L=Napoli/CN=Ale .gridit Introduzione alle griglie computazionali - a.a
29
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI (9/9) Grid authorization – VOMS Il servizio VOMS (Virtual Organization Membership Service) estende le informazioni del proxy con VO membership, gruppo, ruolo, privilegi. voms-proxy-init voms-proxy-destroy voms-proxy-info Non tutte le VO devono essere gestite con VOMS. Come il file gridmap, anche il VOMS deve essere configurato dal manager locale. Introduzione alle griglie computazionali - a.a
30
Introduzione alle griglie computazionali - a.a. 2005-06
Sicurezza: GSI schema generale Introduzione alle griglie computazionali - a.a
31
Introduzione alle griglie computazionali - a.a. 2005-06
Riferimenti “Characterizing Grids: Attributes, Definitions, and Formalism” Z. Németh, V. Sunderam Journal of Grid Computing 1, Kluwer Academic Publisher, “A National-Scale Authentication Infrastructure” R. Butler, V. Welch, D. Engert, I. Foster, S. Tuecke, J. Volmer, C. Kesselman IEEE Computer n.33, Globus Security: Introduzione alle griglie computazionali - a.a
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.