1. Social media web e Smart Apps (A.A. 2011/2012) -Gianluigi Cogo
UNIVERSIT CAFOSCARI VENEZIA
Project work : CloudInfastrucure : Mattia Azzena
2. CloudInfastrucure
Il termine cloud 竪 stato usato come metafora per indicare Internet fin dallinizio delle prime
retiquando nei classici diagrammi questa rappresentava il network telefonico,fino ai giorni nostri,
nel quale rappresenta un insieme astratto di infrastrutture
Oggi, con la tecnologia in continua espansione, diversi servizi quali lo spostamento dei dati tra
diversi dispositivi e lutilizzo di applicazioni SaaS (Software as Service) gi possibili in smartphone
entry-level, hanno fatto crescere la necessit di poter accedere ovunque e in qualsiasi momento
alle proprie risorse, private o aziendali.
Nel privato, come capita spesso per le nuove tecnologie, questo servizio 竪 gi in una fase
esponenziale , mentre nel mondo aziendale non sempre si 竪 allo stesso passo. Quello che vorrei
evidenziare in quest articolo 竪 linsieme dei vantaggi che un infrastruttura realizzata nelcloud 竪 in
grado di fornire soprattutto in ambito aziendale gi alle PMI.
3. IaaSInfrastrucure
Come sappiamo il modello pi湛 basso nel cloudcomputing 竪 definito come lo IaaS(Infastrucureas a
Service) reso concreto gi dal 2006 tramite il lancio pubblico di AWS di Amazon (Amazon Web
Service) .
Nel 2011 tra le societ pi湛 potenti e competitive il mercato 竪 stato dominato da [CRN ANALYSIS]:
Generalmente il servizio offre computer ( o meglio computer virtuali), con storage senza limiti,
firewalls e sistemi Balance di risorse fisiche e di banda del network .
4. Questo servizio fornito dai provider IaaS竪 stato taggato come scalabile,veloce, zero-tolerance
fault, economico e sono tutte parole chiave che dovrebbero dare limpulso necessario anche alle
nostre aziende locali operanti nel settore, ma attualmente poche aziende italiane stanno
cambiando il loro modo di operare, perdendo cosi tutti i vantaggi possibili da questo sistema in the
cloud.
I Servers sono Software
La chiave di volta sta nella differenza tra i classici
sistemi di deployment offerti dalle aziende (ad
esempio tramite server dedicati, co-locati ecc) e i
sistemi offerti nel cloud , perch辿 iservers sono da
considerarsi come Software nel Cloud.
I vantaggi di un Server Software nel Cloud
Velocit e flessibilit
I server tradizionali generalmente richiedono lintervento umano per lattivazione e il settaggio
delle macchine hardware, che pu嘆 richiedere anche diversi giorni.
Inoltre le aziende che offrono le proprie strutture (se non la stessa azienda) hanno sempre una
struttura limitata, un determinato numero di macchine e risorse mentre il Software nel
Cloudbypassa questi limiti e gestir lui tutte queste situazioni scomode e non cosi tanto
occasionali evitando congestioni.
Per esperienza personale gi questo passaggio 竪
oneroso e frustrante. Io che gestisco diversi web
Server per applicativi web ho affrontato spesso il
problema denominato bottleneck, ovvero una
congestione nellutilizzo delle risorse del sistema.
E ho dovuto fare anche trasferimenti da macchina
a macchina perch辿 non esiste il concetto di scalabilit, specie se temporaneo.
5. Zero FaultTolerant e Scalabilit
Il servizio garantisce anche un sistema zero-fault tolerant
(sempre nei confini del probabile) che 竪 di facile comprensione
perch辿 lIaaS provider avr un servizio fisico delocalizzato e
decentralizzato.
Per evitare qualsiasi genere di imprevisto non dipendente
dalluomo (terremoti ecc) gli IaaS Provider hanno svariate Farm
in diversi parti del paese, in maniera da poter garantire come da SLA (Service Level Agreement) un
up-time tendente al 100%.
Inoltre 竪 un sistema molto flessibile nei picchi di richieste di risorse, che generalmente sono punti
deboli di un sistema classico. La possibilit di avere un monitoraggio automatico sulle richieste del
sistema permette una pre-allocazione di risorse da poter usufruire al momento cruciale.
Databases Server 2.0 : la killer application?
La tipica risorsa avida in un sistema di tipo Server 竪 la gestione dei dati in uno o pi湛 database.
Inserimento/ aggiornamento dei dati e query di ricerche full-textsono utilizzi quotidiani di molte
applicazioni e richiedono parecchie risorse al sistema.
Attraverso unequa divisione delle risorse si pu嘆 generare un sistema di database on-the-cloud con
server gi predisposti e ottimizzati per una precisa funzione.
La stessa compagnia di Facebook grazie a AvinashLakshman (uno degli autori
di Amazon Dynamo) fino al tardo 2010 [Wk] ha creato e utilizzato un sistema
decentralizzato di database (Apache Cassandra) per la ricerca dei messaggi
personali (InboxSearch), perch辿 questo 竪 un problema assai frequente specie
nelle piattaforme rivolte alluso Web. La decentralizzazione, quindi sistema zero-fault con scalabilit
anche rapida 竪 gi una soluzione concreta proposta dal modello on-th-cloud.
Nella mia piccola esperienza, collaborando con siti web parecchio trafficati [mininova.org], e
gestendo io stesso siti creati da me (presenti anche nella top #200 di AlexaRank IT) avevo gi
notato la difficolt nella gestione del database.LoadBalancer e sistemi di cache (quali Memcached)
gi dal 2004 sono state soluzioni buone ma complesse.
6. Tuttavia per sfruttare a pieno la potenzialit del cloud
bisognerebbe riprogrammare linterazione con il database
attraverso sistemi decentralizzati quali ad esempio BigTable di
Google.
Ma a livello economico?
Il vantaggio di avere uninfrastruttura nel cloud 竪 gi ben evidenziata ma cosa fondamentale 竪 che
anche il prezzo 竪 proporzionato alluso delle risorse del tuo sistema o della tua applicazione e
quindi generalmente il prezzo risulta pi湛 economico dei sistemi tradizionali.
Quindi in teoria il prezzo sar inferiore. Infatti il costo sar
proporzionato allutilizzo delle risorse, che andr via via aumentando
per eventuali flussi anomali di richieste, ma che verr ammortizzato in
tutto il resto del tempo in cui il Server sar in una fase idle.
Riportandoci a un esempio di quotidiana pendolarit: [Esker IT]
Prima di decidere se andare in ufficio con i mezzi pubblici oppure in
auto vale la pena pensare alla propria agenda: ufficio tutto il giorno o
visite allesterno? Dove? Non appena ci si rende conto di come dovremo trascorrere la giornata, la
scelta per li trasporto diventer praticamente automatica.
Inoltre lazienda non dovr pagare direttamente per le spese di manutenzione, corrente, sicurezza
per il datacenter come ad esempio avviene in un approccio On-Premise.
Infatti oltre allapproccio Cloud per la virtualizzazione dei Server , le aziende
hanno utilizzato e utilizzano due sistemi molto simili, con vantaggi simili o con
costi maggiori per tutelarsi.
7. Approccio On-Premise
Le stesse aziende utilizzano parte della loro struttura da
dedicare fisicamente alle macchine hardware, gestendo
internamente tutti i costi da essa derivati: personale,
manutenzione, consumo di energia elettrica, sicurezza.
E un sistema gi definito old-style anche se 竪 stato il pi湛
utilizzato fino al 2005, ma il suo punto di forza pu嘆 compensare i
costi: la sicurezza e la riservatezza dei dati sensibili.
E tipicamente un modello preferito da sistemi bancari, finanziari, ecc.. dove la richiesta di
determinate risorse sono controllate e gestite internamente.
Approccio Cloud
Le risorse delle aziende sono mantenute e sono accessibili online, sia in un cloud privato
(dedicato per luso di una sola azienda), sia in un cloud pubblico (dove le risorse del cloud sono
condivise tra diverse aziende). Il grande beneficio come gi descritto prima riguarda i costi
desercizio, che saranno inferiori ad un sistema On-premise e lazienda potr convertire le spese
dellIT in un modello pay per use.
Lo svantaggio principale nella soluzione Cloud 竪 che molte aziende
percepiscono un rischio di sicurezza molto alto, specie per le informazioni di
strategie aziendali, dati quasi sempre sensibili.
Richard Stallman(fondatore della Free Software Fondation e creatore del sistema operativo GNU)
citando una sua intervista [the guardian] afferma: makingextensive use of cloudcomputingis
"worsethanstupidity"becauseitmeant a loss of control of data.
8. Approccio Hybrid
Questo modello sfrutta i due modelli precedenti, sfruttando un eventuale data center installato
allinterno dellazienda e un servizio Cloud esterno, con diverse risorse utilizzabili per utenti
diversi. Per esempio unazienda potrebbe utilizzare il proprio data center per il personale della
sede e utilizzare un servizio Cloud per il personale che lavora fuori sede (in mobilit) che
necessitano di informazioni differenti. (CRM ecc)
Questo approccio offre un ottimo compromesso tra sicurezza e prezzo, e la stessa Microsoft
Corporation in una sua analisi dice di aver risparmiato oltre 500,000 dollari passando ad un
approccio Hybrid.
Pensiero finale e conclusione..
In generale le architetture che sfruttano il cloud dovrebbero
suddividere le loro operazioni, utilizzando Server distinti, in
modo da poter eseguirle separatamente e di poter terminarle
nel momento in cui non siano necessarie.
Se si riesce a raggiungere questo livello nella propria architettura basata sul Cloud, allora avrete
veramente un sistema di deployment pi湛 veloce, meno costoso, fault-toleranet e pi湛 sicuro.