IaaS e PaaS

  • View
    1.176

  • Download
    0

Embed Size (px)

Transcript

Alberto Zuinhttp://www.azns.italberto@azns.it

Cosa aspettarsi da questo seminario:

Un cloud un insieme di risorse hardware (server, storage, networking) ridondata e scalabile, sul quale possibile realizzare servizi a loro volta ridondati e scalabili attraverso del software adatto allo scopo.

Alberto Zuinhttp://www.azns.italberto@azns.it

Cosa aspettarsi da questo seminario:

Conoscenza degli elementi che compongono un cloud

Un cloud un insieme di risorse hardware (server, storage, networking) ridondata e scalabile, sul quale possibile realizzare servizi a loro volta ridondati e scalabili attraverso del software adatto allo scopo.

Alberto Zuinhttp://www.azns.italberto@azns.it

Cosa aspettarsi da questo seminario:

Conoscenza degli elementi che compongono un cloud

Conoscenza deglistrumenti aggiuntivi del cloud

Un cloud un insieme di risorse hardware (server, storage, networking) ridondata e scalabile, sul quale possibile realizzare servizi a loro volta ridondati e scalabili attraverso del software adatto allo scopo.

Alberto Zuinhttp://www.azns.italberto@azns.it

Cosa aspettarsi da questo seminario:

Conoscenza degli elementi che compongono un cloud

Conoscenza deglistrumenti aggiuntivi del cloud

Linee guida da seguire per realizzare una web application scalabile

Un cloud un insieme di risorse hardware (server, storage, networking) ridondata e scalabile, sul quale possibile realizzare servizi a loro volta ridondati e scalabili attraverso del software adatto allo scopo.

Alberto Zuinhttp://www.azns.italberto@azns.it

Cos' un cloud?

Un cloud un insieme di risorse hardware (server, storage, networking) ridondata e scalabile, sul quale possibile realizzare servizi a loro volta ridondati e scalabili attraverso del software adatto allo scopo.Queste risorse hardware sono ospitate remotamente e quindi saranno sfruttabli attraverso InternetIn un cloud queste risorse sono allocabili e rilasciabili rapidamente e senza l'intervento del gestore del cloud

Cos' un cloud?

Alberto Zuinhttp://www.azns.italberto@azns.it

Quando usare il cloud?

Quando usare il cloud:Quando si vogliono abbattere i costi per l'infrastruttura interna

Quando si ha la necessit di scalare in base alle necessit

Ottimo per le start-up non infrastrutturate

Quando usare il cloud?

Alberto Zuinhttp://www.azns.italberto@azns.it

Quando non usare il cloud?

Quando non usare il cloud:Quando si sa gi che la quantit di risorse necessarie sar cos elevata che il cloud potrebbe risultare antieconomico

Quando si ha la necessit del controllo diretto delle risorse Hardware

Quando si ha la necessit di usare software non studiato espressamente per lavorare su pi server contemporaneamente

Quando si ha la necessit di controllare direttamente il networking (es. BGP, Anycast, ecc.)

Quando non usare il cloud?

Scalabilit nel cloud:

Alberto Zuinhttp://www.azns.italberto@azns.it

La scalabilit di un sistema pu essere verticale (aumentare le risorse del server es. Aumentare la RAM, aggiungere CPU, ecc.) oppure orizzontale (pi server che lavorano assieme).In questo seminario, quando parleremo di scalabilit, intendiamo esclusivamente l'orizzontale, sebbene anche la verticale sia applicabile al cloud.

Scalabilit nel cloud:

Scalabilit nel cloud:

Alberto Zuinhttp://www.azns.italberto@azns.it

Verticale

La scalabilit di un sistema pu essere verticale (aumentare le risorse del server es. Aumentare la RAM, aggiungere CPU, ecc.) oppure orizzontale (pi server che lavorano assieme).In questo seminario, quando parleremo di scalabilit, intendiamo esclusivamente l'orizzontale, sebbene anche la verticale sia applicabile al cloud.

Scalabilit nel cloud:

Scalabilit nel cloud:

Alberto Zuinhttp://www.azns.italberto@azns.it

Orizzontale

La scalabilit di un sistema pu essere verticale (aumentare le risorse del server es. Aumentare la RAM, aggiungere CPU, ecc.) oppure orizzontale (pi server che lavorano assieme).In questo seminario, quando parleremo di scalabilit, intendiamo esclusivamente l'orizzontale, sebbene anche la verticale sia applicabile al cloud.

Scalabilit nel cloud:

Alberto Zuinhttp://www.azns.italberto@azns.it

Multi-Tenancy

La Multi-Tenancy la capacit di un software di assumere differenti aspetti per diversi clienti.Quindi non pi un software e un sistema dedicato ad ogni cliente, ma un unico software in grado di gestire al suo interno pi clienti simili

Multi-Tenancy

Alberto Zuinhttp://www.azns.italberto@azns.it

Da quali elementi composto?

Da quali elementi composto?

Alberto Zuinhttp://www.azns.italberto@azns.it

Networking

Networking: connessione verso Internet ad elevate prestazioni di banda, ridondata (pi connessioni blianciate e ridondate attraverso il protocollo di routing BGP). In alcuni casi, possibile avere ridondanza multidatacenter attraverso Anycast (indirizzi IP annunciati in diversi datacenter)

Networking

Alberto Zuinhttp://www.azns.italberto@azns.it

Networking

Capacit computazionale

Capacit computazionale: pi server dotati di quantit importanti di CPU e RAM con un Hypervisor (VMWare, XEN o KVM) in grado di gestire istanze virtualizzate

Capacit computazionale

Alberto Zuinhttp://www.azns.italberto@azns.it

Networking

Capacit computazionale

Storage

Storage: un sistema di storage scalabile ove risiedono le immagini delle VM istanziate sull'Hypervisor e/o i dati gestiti dalle VM. E' possibile trovare storage di tre tipi:SAN: poco scalabili ma veloci costi elevati per l'utente

Cluster di commodity computer: molto scalabili ma pi lenti soprattutto in scrittura costi limitati per l'utente

Storage dedicati per specifiche applicazioni (es. Amazon RDS Relational Database Server)e

Storage

Alberto Zuinhttp://www.azns.italberto@azns.it

Networking

Capacit computazionale

Storage

Cloud controller

Sistema di controllo del cloud, con API per l'interfacciamento verso l'esterno

Cloud controller

Alberto Zuinhttp://www.azns.italberto@azns.it

Differenza tra IaaS, PaaS e SaaS

Differenza tra IaaS, PaaS e SaaS

Alberto Zuinhttp://www.azns.italberto@azns.it

Ottimizzazione

Flessibilit

SaaSPaaSIaaS

Differenza tra IaaS, PaaS e SaaS

Alberto Zuinhttp://www.azns.italberto@azns.it

IaaS:

Infrastructure as a Service

IaaS (Infrastructure as a Service): Servizio composto dalle mere risorse Hardware (CPU, RAM, spazio su disco, connettivit). Business model a consumo: si fissa una quota massima di utilizzo ma si paga solo ci che si consuma realmente.Ci sono delle API per connettersi al servizio e scalare in caso di necessit. Le API permettono di aprire/chiudere istanze; la logica di funzionamento dell'applicazione quando si usano pi istanze e il software in grado di comandare l'apertura/chiusura di istanze compito del PaaS e/o del SaaS.

IaaS:

Infrastructure as a Service

Alberto Zuinhttp://www.azns.italberto@azns.it

PaaS: Platform as a Service

PaaS: Platform as a Service. La piattaforma di pacchetti software che si integrano con l'hardware (IaaS) su cui realizzare un servizio SaaS. E' sostanzialmente il livello intermedio tra IaaS e SaaS e comprende il web server/load balancer, i linguaggi/framework per lo sviluppo del servizio SaaS, il datastore (database/filesystem), sistemi di cache, sistemi di gestione delle code.Il PaaS si integra con il IaaS sottostante per far scalare automaticamente il sistema in caso di necessit.

PaaS: Platform as a Service

Alberto Zuinhttp://www.azns.italberto@azns.it

SaaS: Software as a Service

SaaS (Software as a Service): il livello pi elevato della catena.Il SaaS il servizio (al 99% una web application) che utilizza l'utente finale e che si integra con il PaaS sottostante.Sono SaaS, ad esempio:- I social network (Twitter, Facebook, Linkedin...)- I servizi di prenotazione online (Expedia, Trivago...)- I servizi pagamento (Google Checkout, Paypal...)- ......

SaaS: Software as a Service

Alberto Zuinhttp://www.azns.italberto@azns.it

Differenza tra struttura virtualizzata e Cloud Computing

vs.

L'infrastruttura virtualizzata sostanzialmente un Hypervisor (VMWare, Xen, KVM...) su cui creare Virtual Machine.Il cloud una infrastruttura virtualizzata con molto altro: l'Hypervisor un componente a cui si associano uno o pi sistemi di storage e un controller che espone delle API per la gestione del cloud stesso.

Differenza tra struttura virtualizzata e Cloud Computing

Alberto Zuinhttp://www.azns.italberto@azns.it

Differenza tra Cloud Computing e Grid Computing

vs.

La differenza molto sottile e difficilimente percettibile.Nel grid computing abbiamo X server (con X un numero di server prefissato) che lavorano parallelamente per eseguire un applicativo. I server sono per lo pi server fisici in quanto il processo deve poter sfruttare appieno le potenzialit dell'hardware.Il cloud computing un grid computing in cui si ha un numero X di server virtualizzati che lavorano parallelamente per eseguire un applicativo. Il numero X di server viene gestito per lo pi dinamicamente (dipende da come sono realizzati PaaS/SaaS) in base al carico di lavoro effettivo dell'applicativo, istanziando e disistanziando Virtual Machine attraverso le API del IaaS.

Differenza tra Cloud Computing e Grid Computing

Alberto Zuinhttp://www.azns.