cloud computing
TRANSCRIPT
Cloud Computing
Ing. Nelson FirmaniTeramo 04/01/2013
http://nelson-firmani.appspot.com/slide/index.html#/bored
Questo nuovo paradigma si basa sui concetti di:
● Utility computing
● Service Oriented Architecture (SOA)
● Virtualizzazione
● Autonomic computing
● Grid computing
Utility computing:
La potenza dei calcolatori e delle applicazioni
venduta secondo il modello economico dell'utilità
(diventando la quinta utility dopo acqua, luce,
gas e telefono). Modello di costo pay-per-use
Service Oriented Architecture (SOA):
Architettura software in grado di agevolare la
cooperazione tra applicazioni più o meno
eterogenee attraverso la costruzione di servizi
con caratteristiche ben specifiche orientate al
riutilizzo, interoperabilità, integrazione e
flessibilità.
Virtualizzazione:
La capacità di astrarre le componenti hardware
dei calcolatori al fine di renderle disponibili al
software in forma di risorsa virtuale.
Autonomic computing:
L'obiettivo è creare un ambiente in cui il sistema
si autogestisce si configura riconfigura per
svolgere varie attività critiche amministrative
senza intervento umano (il sistema è in grado di
operare ad alto livello mantenendo la
complessità invisibile all'utente finale).
Grid computing:
sistemi con un'infrastruttura di calcolo distribuita,
viene utilizzata una grande quantità di risorse sia
hardware che software, per l'utilizzo affidabile
coerente di capacità di calcolo e memorizzazione
Cloud computing Secondo il
National Institute of Standards
and Technology (NIST)
Il cloud computing
è un modello per abilitare un accesso conveniente e su richiesta a un
insieme condiviso di risorse computazionali configurabili (e.g. reti,
server, memoria di massa, applicazioni e servizi) che possono essere
rapidamente procurate e rilasciate con un minimo sforzo di gestione o di
interazione con il fornitore del servizio. Questo modello cloud promuove
la disponibilità ed è composto da cinque caratteristiche essenziali, tre
modelli di servizio e quattro modelli di infrastruttura.
Caratteristiche essenziali:
● On demand, self service
un utilizzatore può ricevere capacità di calcolo in modo automatico,
senza la necessità di interazione umana con un fornitore di servizi.
● Broad network access
le capacità fornite dal servizio sono disponibili sulla rete.
● Resource pooling
le risorse computazionali del fornitore di servizi sono messea
disposizione per servire molteplici utenti finali.
Caratteristiche essenziali:
● Rapid elasticity
le capacità di calcolo possono essere fornite e rilasciate
rapidamente consentendo una veloce scalabilità verso
l’alto e verso il basso.
● Measured Service
l’utilizzo delle risorse può essere monitorato, controllato e
riportato in modo trasparente sia per il fornitore del servizio
che per l’utilizzatore.
Modelli di servizio:
● Cloud Software as a Service (SaaS)
forniscono le applicazioni software eseguite nel Cloud come servizi. Esempi
di SaaS sono Google Drive, (GMail)
● Platform as a Service (PaaS)
forniscono come servizi le piattaforme per sviluppare le applicazioni Cloud e
lo spazio per ospitarle ed eseguirle. Esempi di PaaS sono Google App
Engine, Microsoft Azure.
● Cloud Infrastructure as a Service (IaaS)
forniscono spazio di storage e sistemi di elaborazione (server) come servizi
Cloud.
Modelli di infrastruttura:
● Privata
infrastruttura gestita totalmente da una singola impresa.
● Collettiva
condivisa tra differenti imprese con necessità simili (es: mission, requisiti di
sicurezza, ...
● Pubblica
infrastruttura resa disponibile al pubblico generico
● Ibrida
è una combinazione di due o più infrastrutture che rimangono entità uniche ma che
sono tenute insieme dalla stessa tecnologia che abilita la portabilità dei dati e delle
applicazioni.
Migrazione verso il cloud
computing Benefici rischi e
criticità
Benefici:
● Sviluppo di funzionalità avanzate per dispositivi
mobili (smartphone, tablet)
– Possibilità di accedere ai propri dati da tanti dispositivi mobili.
– Possibilità ai dispositivi mobili di acquisire dati in tempo reale
e di immagazzinarli sul cloud.
– Possibilità ai dispositivi mobili con ridotte capacità di calcolo
di eseguire applicazioni complesse spostando l’elaborazione
dei dati sul cloud.
Benefici:
● Quantita "infinita" di risorse di computazione
disponibile su richiesta:
– Possibilità di elaborare enormi quantità di
dati(virtualizzazione dell'hardware)
– Possibilità di parallelizzare il costo di elaborazione: l'utilizzo
della potenza di elaborazione del cloud è già supportata da
applicazioni come Matlab e Mathematica.
Benefici:
● Accessibilita anytime e anywhere
accesso basato su internet/Web
● Elasticità del servizio
costi ridotti in virtù del dimensionamento dinamico dell'hardware; le risorse
necessarie vengono fornite in base all’effettiva richiesta secondo il modello
pay-per-use nessun bisogno di pianificare in anticipo i picchi di traffico
● Gestione facile
relativi costi di gestione dell'hardware, versioning e aggiornamento del
software vengono eliminati.
Rischi e criticità:
● Disponibilità e continuità del servizio
quando e a quali condizioni il servizio viene reso disponibile.
Un eventuale malfunzionamento (out of service) causa danni ad un numero molto elevato di
persone contemporaneamente dato che questi sono servizi condivisi. Una interruzione della
connessione dovuta al proprio Internet Service Provider( ISP) determina la completa paralisi
delle attività. Studio del Service Level Agreement (SLA). Validità e durata dello SLA, modifiche o
sostituzioni dello SLA, Limiti di applicabilità dello SLA.
● Privacy
il cloud provider può/potrebbe accedere ai dati personali ai dati sensibili
ai dati strettamente confidenziali.
● Sicurezza
il cloud provider riesce a dominare i seguenti aspetti dei dati:
– Confidenzialità, Integrità, Disponibilità, Tracciamento, Autenticità, Autorizzazione,
Autenticazione e Non-Rifiuto.
– Efficienti schemi di backup e recovery al fine di prevenire la perdita di dati.
● Questioni politiche, legali e relative alla extraterritorialità
possono verificarsi quando i dati risiedono sono conservati fisicamente in
un paese diverso da quelli degli utenti del cloud provider
Rischi e criticità:
Cloud computing secondo
Il 7 Aprile 2008 al Google Campfire One
viene presentato
Google App Engine
Google App Engine
Google App Engine permette di realizzare
applicazioni web sulla stessa infrastruttura su cui
eseguono le applicazioni Google.
Google App Engine
L'idea base è di permettere agli sviluppatori di
concentrarsi sull'applicazione e di liberarli dalle
problematiche di configurazioni, monitoraggi,
mantenimenti, aggiornamenti, crash, scalabilità
dei server dell'infrastruttura sottostante che è
completamente gestito da Google.
Google App Engine
...
http://nelson-firmani.appspot.com/slide/index.html#/bored
Author: Ing. Nelson Firmani ([email protected])
Last update: 10/02/2013