Amazon Elastic Compute Cloud (traducibile in italiano come "nuvola di calcolo elastica di Amazon"), abbreviato in Amazon EC2, è una parte centrale della piattaforma di cloud computing Amazon Web Services (AWS) di Amazon, che permette agli utenti di affittare macchine virtuali sulle quali eseguire le proprie applicazioni.
EC2 permette l'implementazione di applicazione fornendo un servizio web attraverso il quale un utente può avviare un'Amazon Machine Image (AMI) per creare una macchina virtuale (chiamata da AWS "istanza"), che conterrà il software desiderato. Un utente può creare, lanciare, e chiudere istanze, pagando i server a ora, da cui l'aggettivo "elastica" nel nome del servizio.
EC2 fornisce agli utenti il controllo sulla collocazione geografica delle istanze che permettono un'ottimizzazione della latenza e alti livelli di ridondanza. A novembre 2010 Amazon ha spostato anche il proprio sito su EC2 e su AWS.
Storia L'infrastruttura di base di EC2 è stata concepita e sviluppata principalmente da un team di ingegneri con sede a Città del Capo, in Sudafrica, guidato da Chris Pinkham e Willem van Biljon. Fu Pinkham a delineare le linee guida architetturali iniziali, a costituire il gruppo di lavoro e a coordinare lo sviluppo del progetto. Il 25 agosto 2006, Amazon ha formalmente inaugurato la fase di test pubblico limitato (Limited Public Beta), concedendo l'accesso al servizio secondo il principio dell'ordine di arrivo.
A seguito di questa prima fase operativa, l'offerta infrastrutturale è stata ampliata il 16 ottobre 2007 con il debutto di due configurazioni ad alte prestazioni: le istanze Large ed Extra-Large. Successivamente, il 29 maggio 2008, sono state introdotte le famiglie High-CPU Medium e High-CPU Extra Large, ottimizzate per carichi di lavoro computazionali intensivi, portando il portafoglio delle istanze disponibili a un totale di dodici tipologie.
Il 27 marzo 2008 ha segnato un'importante svolta tecnica grazie all'introduzione simultanea di tre funzionalità chiave: gli indirizzi IP statici (Elastic IP), le Zone di Disponibilità (Availability Zones) e la possibilità di selezionare autonomamente il kernel del sistema operativo. Pochi mesi dopo, il 20 agosto 2008, è stato rilasciato il servizio di archiviazione a blocchi persistente Amazon Elastic Block Store (EBS), superando definitivamente il vincolo della volatilità dello storage che aveva caratterizzato le prime versioni del servizio.
Il 23 ottobre 2008, EC2 ha rimosso ufficialmente la dicitura "beta", entrando a pieno titolo nella fase di produzione commerciale. Contestualmente, Amazon ha annunciato il Service Level Agreement (SLA), il supporto in versione preliminare per gli ambienti operativi Microsoft Windows e Microsoft SQL Server, e ha presentato i piani per il rilascio della Console di Gestione AWS (AWS Management Console), del bilanciamento del carico (Elastic Load Balancing), della scalabilità automatica (Auto Scaling) e del monitoraggio centralizzato tramite CloudWatch; tali strumenti sono divenuti pienamente operativi il 18 maggio 2009. Archiviato dall'url originale del 10 maggio 2023. Architettura di virtualizzazione e classificazione delle istanze La piattaforma di cloud computing Amazon EC2 si fonda su una solida combinazione di tecnologie avanzate di virtualizzazione hardware e su un'ampia gamma di risorse di calcolo. Per ottimizzare prestazioni, sicurezza e scalabilità, AWS non solo perfeziona costantemente l'architettura di virtualizzazione sottostante, ma classifica anche le configurazioni dei server in gruppi specializzati, progettati per soddisfare con precisione le specifiche esigenze dei diversi carichi di lavoro aziendali reali.
La transizione da Xen al sistema Nitro Nelle sue fasi iniziali, l'infrastruttura di virtualizzazione di EC2 si basava esclusivamente sull'hypervisor Xen. Una transizione epocale si è compiuta il 6 novembre 2017 con l'annuncio della famiglia di istanze C5, fondata sul nuovo sistema AWS Nitro. Tale architettura hardware personalizzata, incentrata su un hypervisor derivato da KVM, scarica le operazioni critiche di virtualizzazione, networking e storage dall'host primario su schede dedicate, massimizzando le risorse di calcolo a disposizione dell'utente finale.
Ogni istanza virtuale agisce a tutti gli effetti come un Virtual Private Server (VPS). La potenza di elaborazione viene quantificata in "Elastic Compute Units" (ECU), sebbene le prestazioni tra macchine con specifiche omologhe possano evidenziare minime oscillazioni operative legate alle caratteristiche dei chip sottostanti. Il 28 novembre 2017, AWS ha esteso la propria offerta introducendo istanze "bare-metal", garantendo l'accesso diretto e senza intermediari all'hardware fisico sottostante, superando per la prima volta i vincoli di qualsiasi livello di virtualizzazione.
Tipologie e famiglie di istanze specializzate Le istanze EC2 sono categorizzate in famiglie progettate per soddisfare scenari di carico specifici:
Uso generale (General Purpose): Garantiscono un bilanciamento ideale tra risorse di calcolo, memoria volatile e prestazioni di rete, ideali per ambienti di sviluppo, web server e database di medie dimensioni (famiglie A1, T3, T2, M5, M5a, M4 e T3a).
Ottimizzate per il calcolo (Compute Optimized): Progettate per carichi ad alto assorbimento di CPU, come server di gioco, transcodifica video ed elaborazioni scientifiche (famiglie C4, C5, C5n, affiancate dalla serie C8gn, alimentata da processori Graviton4 con throughput di rete fino a 600 Gbit/s e un incremento prestazionale di circa il 30% rispetto alla serie C7gn).
Ottimizzate per la memoria (Memory Optimized): Pensate per gestire enormi dataset caricati direttamente nella RAM, come database relazionali complessi e memorie cache in-memory (famiglie R4, R5, R5a, X1, X1e, High Memory e z1d).
Calcolo accelerato (Accelerated Computing): Sfruttano la potenza parallela di GPU o chip programmabili (FPGA) per l'elaborazione grafica 3D, l'addestramento di modelli di machine learning e l'High-Performance Computing (famiglie P2, P3, G3, F1, nonché le istanze con partizionamento GPU G6f, in grado di allocare quote frazionarie di un ottavo, un quarto o metà di una GPU NVIDIA L4).
Ottimizzate per lo storage (Storage Optimized): Sviluppate per fornire altissimi livelli di throughput e latenze di I/O minime su unità flash NVMe integrate, ideali per architetture NoSQL, data warehouse e filesystem distribuiti (famiglie H1, I3 e D2).
Modelli tariffari e strategie di approvvigionamento Il modello finanziario di Amazon EC2 è concepito per offrire la massima flessibilità di budget, trasformando i costi da investimenti fissi in infrastrutture (CapEx) a spese operative variabili (OpEx). Combinando i costi basati sull'effettivo utilizzo delle risorse con diverse opzioni di impegno di pagamento, le aziende possono controllare facilmente la spesa e, al contempo, ottimizzare l'efficienza dei costi in ogni fase dello sviluppo del progetto.
Struttura dei costi e piano gratuito La spesa associata alle istanze EC2 è consultabile nel dettaglio per mezzo del report sui costi e sull'utilizzo (AWS Cost and Usage Report). I costi complessivi scaturiscono dall'aggregazione di più voci: la tariffazione oraria delle istanze, il traffico di rete in uscita, l'allocazione dei volumi EBS, la conservazione degli snapshot e il routing gestito dai gateway NAT.
I prezzi partono da importi minimi per le istanze t2.nano operanti su Linux o Windows (circa 0,0058 USD all'ora, pari a 4,176 USD mensili), fino a configurazioni per lo storage intensivo come le i3.16xlarge (4,992 USD l'ora) e nodi di calcolo estremi che raggiungono fatturazioni di 3.997,19 USD al mese. Il trasferimento di dati in ingresso (inbound) è interamente gratuito su tutta l'infrastruttura AWS, mentre il traffico uscente (outbound) è soggetto a scaglioni progressivi fino a 0,12 USD per gigabyte. Dal dicembre 2010, per agevolare l'adozione della piattaforma, è attivo il piano AWS Free Tier: un pacchetto promozionale valido per i primi 12 mesi che offre 750 ore mensili su istanze micro, 30 GB di storage a blocchi EBS e una quota base di larghezza di banda, con la clausola che i crediti non consumati non possono essere accumulati per i periodi successivi.
Modalità di acquisto delle risorse Per calibrare le spese in funzione delle esigenze operative, gli utenti possono optare tra quattro diverse metodologie contrattuali:
On-Demand: Modello flessibile in cui la tariffazione avviene su base oraria o al secondo per il tempo effettivo di accensione dell'istanza, senza vincoli temporali né obblighi contrattuali a lungo termine. Istanze Riservate (Reserved Instances - RI): Prevedono la sottoscrizione di un impegno della durata di uno o tre anni a fronte di uno sconto compreso tra il 35% e il 75% rispetto al prezzo On-Demand. Le formule di pagamento comprendono l'anticipo totale (All Upfront), l'anticipo parziale (Partial Upfront) o l'assenza di anticipo (No Upfront). Nel settembre 2016 sono state introdotte le istanze Convertibili e l'opzione "scope", mentre dall'ottobre 2017 è stata concessa la suddivisione modulare dei blocchi acquistati per consentire una rimodulazione dinamica della capacità. Istanze Spot (Spot Instances): Consentono di noleggiare la capacità computazionale in eccesso all'interno dei data center AWS con sconti fino al 90% rispetto al tariffario On-Demand. Questa tipologia non prevede SLA e può essere interrotta dal fornitore con un preavviso di soli due minuti qualora la domanda di mercato aumenti. Studi accademici condotti nel 2011 hanno evidenziato come il prezzo Spot sia influenzato da una soglia di riserva dinamica non dichiarata, portando fornitori terzi (come Spotinst) a utilizzare algoritmi predittivi di machine learning per stimare le interruzioni con circa 15 minuti di anticipo. Savings Plans: Introdotti nel novembre 2019 come alternativa semplificata e flessibile alle Istanze Riservate, richiedono un impegno di spesa oraria fissa su base annuale o triennale. I Compute Savings Plans assicurano piena libertà di cambiare tipologia di istanza, sistema operativo, regione geografica e consentono l'interscambio tra EC2 e AWS Fargate; gli EC2 Instance Savings Plans offrono risparmi maggiori, vincolando tuttavia l'impegno economico a una famiglia di istanze specifica all'interno di una determinata regione.
Ambienti operativi e servizi container La compatibilità software e il supporto per ambienti di distribuzione flessibili sono fattori chiave alla base della popolarità di Amazon EC2. Oltre a offrire un'ampia gamma di sistemi operativi — che spazia da soluzioni open source a quelle commerciali — AWS ha creato un ecosistema completo per la tecnologia dei container, consentendo agli sviluppatori di modernizzare facilmente le applicazioni e ottimizzare i flussi di lavoro per il rilascio del software nel cloud.
Supporto ai sistemi operativi Al debutto nel 2006, il servizio garantiva la compatibilità con le distribuzioni Linux, per poi estendersi alle varianti OpenSolaris e Solaris Express Community Edition di Sun Microsystems. Nell'ottobre 2008 sono stati integrati i sistemi Windows Server 2003 e 2008, seguiti nel marzo 2011 dal supporto alle AMI basate su NetBSD e nel novembre 2012 dalla compatibilità con Windows Server 2012.