[Gulli] cheap cloud

Andrea Dell'Amico adellam-lists@sevenseas.org
Sab 6 Lug 2013 11:45:07 CEST


On Jul 6, 2013, at 9:34 AM, Fabrizio Carrai <fabrizio.carrai@gmail.com> wrote:

> Sebbene mi sia (abbastanza) chiaro il concetto di Cloud Computing [1], potete farmi un esempio del tipo "Hello World" di cosa può fare un SERVIZIO già esistente come Amazon * (S3 o Glacier) ?
> 
> 	• Potrei crearmi un servizio "alla Dropbox" privato ? Se si come  ACCEDO allo spazio disco ?
> 	• Potrei aumentare il tempo di risposta delle visite del mio sito web dividendo i carichi ? La mia applicazione web deve essere già avere una architettura per fare questo o ho un supporto dal trasporto di questa su Amazon ?
> 	• Ho una applicazione CPU intensive ? Che supporto ho dal cloud di Amazon per dividere il carico sulle risorse del Cloud ?

Premessa: cloud computing assume significati diversi a seconda del tipo di ambiente, comprende soluzioni nuove e vecchie soluzioni in cerca di un problema che vengono riciclate da anni con nomi diversi. Il grid computing, ad esempio. La voce italiana di wikipedia è abbastanza imprecisa e semplifica troppo creando confusione, anche se la descrizione degli aspetti "moderni" è accettabile.

Quindi, per prima cosa sarebbe utile capire quale dev'essere il tuo campo d'utilizzo.
Vuoi un bidone nel quale depositare i tuoi file, stile dropbox? le soluzioni amazon non sono adatte, sono framework che prevedono lo sviluppo di applicazioni per poter essere utilizzate. Soluzioni analoghe a dropbox (o google drive) utilizzabili in privato sono oggetti tipo sparkleshare - comodo per utilizzi specifici, specie se sei uno sviluppatore - o owncloud (quando funzionerà in maniera affidabile).

Vuoi svincolare la tua applicazione dall'uso del disco locale o di uno storage tradizionale tipo NFS? un servizio in stile amazon S3 è l'ideale. Dovrai modificare la tua applicazione in modo da farle usare le API S3, fatto questo potrai moltiplicare i tuoi frontend dimenticandoti dei problemi di conflitti nell'accesso alle risorse.

Hai bisogno di fare calcolo distribuito? in questo caso, sempre che il problema lo permetta, l'accesso ad una struttura che ti dia la possibilità di attivare/disattivare quantità di macchine - virtuali - a richiesta, può fare molto comodo. Questo tipo d'uso è più simile a quello fornito da Amazo AWS, ed anche in questo caso esistono diverse soluzioni alternative se vuoi costruirti una architettura del genere in privato. OpenStack e CloudStack, ad esempio. La prima è più diffusa (si fa per dire), e da quando Red Hat ha cominciato ad investirci è stato razionalizzato anche il ciclo di sviluppo e rilascio. Che attualmente è di sei mesi, sono pochissimi, ma il software è ancora molto poco maturo e va bene così.

Hai bisogno di un po' di tutto quanto appena descritto, vuoi realizzartelo nel tuo data center? Sempre OpenStack o CloudStack, magari integrati da storage distribuiti come ceph o gluster. Una soluzione del genere, quando e se funziona, ti permette di avere un ambiente con servizi su macchine virtuali "permanenti" associato a servizi che possono sfruttare la possibilità di creare/distruggere macchine virtuali con poco sforzo. Offre un'interfaccia di gestione ed anche API e possibilità di provisioning esterno, ad esempio per creare decine di macchine virtuali ed eseguirne la configurazione tramite strumenti tipo chef, puppet o ansible. Questi strumenti rendono anche disponibili storage compatibili con le API S3 di Amazon, quindi volendo puoi spostare i tuoi dati da un sistema all'altro in modo completamente trasparente.

Non qualcosa che puoi pensare di realizzare su un server casalingo se non per giocare, e nemmeno una cosa che puoi pensare di metterti in azienda se hai solo tre/quattro server fisici. L'architettura è complicata, è ancora fragile, i file system distribuiti aggiungono strati di inefficienza e questo significa che per avere le stesse prestazioni che prima avevi gestendo i servizi con strumenti a più basso livello, hai bisogno di più hardware e più potente

> A presto!
> Fabrizio


> [1] http://it.wikipedia.org/wiki/Cloud_computing

Ciao,
andrea
-- 
Andrea Dell'Amico
http://adellam.sevenseas.org/



Maggiori informazioni sulla lista Gulli