domenica, giugno 15, 2008

Amazon EC2 e Oracle

Ho scoperto solo di recente gli Amazon Web Services e sono rimasto letteralmente folgorato.

In particolare mi ha colpito il servzio Elastic Compute Cloud (EC2). Si tratta sostanzialmente di un servizio di hosting basato sulla tecnologia di virtualizzazione XEN, che permette di far girare delle macchine virtuali tipicamente basate su Linux.

La cosa sconvolgente è la velocità con cui è possibile avere a disposizione delle risorse computazionali. Per attivare e disattivare una macchina virtuale, è sufficiente un'invocazione ad un webservice. Le risorse che occuperete vi verranno addebitate su carta di credito in base alle ore utilizzate, al traffico di rete generato, alla quantità di storage utilizzato. I costi poi sono irrisori, fatevi un giro sul sito di Amazon.

Per la mia esperienza, questo è veramente sconvolgente. Ad esempio, gli ambienti di produzione e certificazione del progetto su cui lavoro sono in hosting presso uno dei più importanti fornitori di servizi di questo tipo in Italia. Avere a disposizione una nuova macchina per il progetto vuol dire aspettare come minimo un mese (on demand?!?) dal momento dell'ordine. Il che sottintende anche la complessità burocratica della cosa (richiesta di offerta, relazione tecnica d'offerta, ordine, un milione di firme, etc.), e ovviamente i costi (considerate che l'ultima volta ho sentito che lo storage costa la bellezza di 32€ a GB!!! ...supersicuri e protetti... ma sono veramente un sacco di soldi).

Con EC2 basta essersi registrati sul sito di Amazon e aver inserito i dati della propria carta di credito. Dopodiché per avviare 10 web server che vi servono perché stasera parte la nuova campagna di marketing... basta una chiamata ad un webservice.

Dopo questa scoperta ho pensato a come calare sulle necessità del progetto su cui lavoro questo fantastico servizio. Il progetto è un CRM Analitico che include un database Oracle da 1.8TB, per molti aspetti è un'applicazione simile a un DWH.

E qui ho cominciato ad avere qualche dubbio. Come performeranno veramente queste macchine virtuali? Qual è il livello di servizio? Cosa succede in caso di failure dell'infrastruttura hardware? Tutti aspetti che in un modo o nell'altro possono essere risolti.

Ma poi mi sono chiesto: ma le licenze di Oracle, come le contiamo? Sul sito di Oracle non ho trovato nessuna informazione a riguardo.

Le macchine virtuali offerte da Amazon hanno caratteristiche diverse, si va da 1 processore virtuale a 20 processori virtuali. Questi processori virtuali sono paragonati ad uno Xeon 1.0Ghz. Visto che Oracle si licenzia tipicamente sulla base del numero di processori... se si dovesse licenziare per 20 processori equivalenti ad uno Xeon 1.0Ghz... beh, diventerebbe quantomeno poco conveniente. E ancora di più: ma se io la macchina virtuale la voglio usare solo per 1 ora al giorno nella configurazione da 20 processori?

Mi son fatto l'idea che gli AWS sono così innovativi che solo il mondo open source può stargli dietro al momento.

Comunque, poter pagare solamente 0,80$ all'ora per un server con 8CPU, 15GB RAM e 1.7TB di disco... beh, credo che è una cosa che farà venire l'acquolina in bocca a parecchi IT Manager... per cui occhio alla rivoluzione!

1 commento:

Anonimo ha detto...

Ottima recensione, grazie