Guida definitiva ai tipi di istanze di EC2
Amazon ti consente di eseguire diversi tipi di istanze di Amazon EC2 nel cloud AWS, offrendoti la flessibilità di cui hai bisogno. Puoi selezionare l’istanza di EC2 che meglio soddisfa i tuoi requisiti al prezzo giusto. Tuttavia, effettuare questa scelta può risultare complesso, poiché in AWS sono disponibili circa 50 tipi diversi. Ciascun tipo, a sua volta, offre diverse opzioni di capacità hardware a prezzi diversi. Questo articolo del blog illustra i tipi e le categorie di istanze di Amazon EC2 e fornisce alcuni consigli per aiutarti a prendere la decisione giusta quando devi eseguire un’istanza nel cloud di Amazon.
Classificazione dei tipi di istanze AWS EC2
A prima vista, i nomi delle istanze AWS EC2 possono sembrare poco chiari. I tipi di istanze AWS EC2 sono rappresentati da una combinazione di lettere e cifre. Tuttavia, esiste una logica alla base della convenzione di denominazione delle istanze AWS EC2 e il nome contiene le specifiche dell’istanza.
Le istanze di Amazon EC2 sono VM in esecuzione su server fisici nei data center di Amazon. I server dispongono di diverse configurazioni hardware e le istanze di EC2 possono utilizzare diverse quantità di capacità hardware. Queste caratteristiche si riflettono nei tipi e nei nomi delle istanze.
Un tipo di istanza di EC2 è costituito da diversi parametri:
- Famiglia di istanze
- Generazione di istanze
- Funzionalità aggiuntive
- Dimensione dell’istanza
Analizziamo la denominazione delle istanze utilizzando l’esempio dell’istanza R5d.xlarge .
Famiglia di istanze
Una famiglia o classe di istanze di EC2 rappresenta istanze con uno scopo simile. Identifica inoltre il rapporto tra i componenti hardware (come processore, memoria e storage) nelle specifiche dell’istanza. R è la famiglia o classe di istanze nel nostro esempio. Si tratta di una famiglia generica per istanze ottimizzate per la memoria.
Ogni famiglia offre le proprie funzioni basate sull’hardware. Un tipo di istanza può contenere una o più famiglie. Una famiglia di istanze può appartenere a un solo tipo di istanza di EC2.
Generazione di istanze
Una generazione di istanze rappresenta le istanze della stessa famiglia in esecuzione su server di diverse generazioni hardware in AWS. Si può notare che molte famiglie di istanze hanno più generazioni (più recenti e più vecchie). Ciò vale per le famiglie di istanze che sono disponibili ormai da molto tempo. Man mano che Amazon effettua l’implementazione di nuovi server nei propri data center per fornire le risorse necessarie all’esecuzione di un maggior numero di istanze da parte dei clienti, questi nuovi server dispongono di un hardware di nuova generazione che solitamente è migliore rispetto a quello delle generazioni precedenti.
Di solito sono disponibili le ultime due o tre generazioni. Nel nostro esempio, 5 è la generazione dell’istanza R5d.xlarge . A febbraio 2022, la 6 è l’ultima generazione disponibile per le istanze della famiglia R , mentre sono ancora disponibili anche le generazioni 4 e 5.
In generale, è consigliabile utilizzare l’ultima generazione per le proprie istanze, poiché offre i prezzi più vantaggiosi e la massima efficienza. Ha senso ricorrere a una generazione precedente solo se è necessario eseguire istanze di EC2 su server con hardware specifico. Attualmente, l’intervallo di generazione per le istanze di EC2 va da 1 a 6, ma le generazioni 1, 2 e 3 potrebbero non essere più disponibili per molti tipi di istanza.
Funzionalità aggiuntiva
La funzionalità aggiuntiva rappresenta funzioni hardware supplementari per i tipi di macchina AWS. Le lettere utilizzate nel nome dell’istanza e le proprietà associate sono spiegate nella tabella sottostante. Le lettere in grassetto possono aiutarti a ricordare le associazioni.
| Nome | Proprietà |
a |
AMD processore |
d |
Locale NVMe SSD storage |
e |
Extra capacità |
g |
Graviton processore (ARM) |
n |
Ad alta velocità networking |
z |
Ad alta frequenza |
.
Nella nostra R5d.xlarge istanza, d rappresenta la funzionalità aggiuntiva. Ciò significa che questa istanza utilizza un’archiviazione locale su unità a stato solido (SSD) Non-Volatile Memory Express (NVMe), che fornisce le massime prestazioni del sottosistema di storage per l’istanza.
Un tipo di istanza di EC2 può includere più funzionalità aggiuntive, ad esempio p3dn.24xlarge.
Dimensione dell’istanza
La dimensione dell’istanza AWS EC2 indica il numero di risorse hardware (capacità) assegnate all’istanza. Dimensioni diverse delle istanze AWS possono utilizzare lo stesso hardware, ma su scale diverse. A volte istanze di dimensioni diverse possono essere eseguite su hardware diverso, ad esempio utilizzando dispositivi di storage SSD o HDD. Un semplice esempio è la quantità di memoria. La dimensione dell’istanza più bassa contiene la quantità minima di memoria, mentre le dimensioni più grandi delle istanze di EC2 contengono proporzionalmente più memoria.
Per maggiore chiarezza, esaminiamo quattro dimensioni di istanze di EC2 per le istanze R5d e visualizziamole nell’immagine sottostante.
xlargeè l’istanza più piccola nel nostro confronto tra istanze di EC2 utilizzato in questo esempio, e questa dimensione di istanza occupa l’area più piccola di un rettangolo.2xlargeoccupa un’area doppia all’interno del rettangolo rispetto all’istanzaR5d.xlarge.4xlargeè quattro volte più grande diR5d.xlargee due volte più grande diR5d.2xlarge.8xlargeha una capacità pari a otto istanzeR5d.xlarge, quattro istanzeR5d.2xlargeo due istanzeR5d.4xlarge.
Come si può notare, ogni dimensione dell’istanza più grande dispone del doppio di CPU, memoria e storage. Anche il prezzo aumenta in modo proporzionale ed è doppio per ogni istanza di dimensioni maggiori rispetto alla sua “vicina” più piccola. Per ulteriori dettagli, consultare la tabella sottostante.
| vCPU | RAM (GB) | Storage (GB) | Rete (Gbit/s) | Larghezza di banda EBS | Prezzo USD/h (% di aumento) | |
r5d.xlarge |
4 | 32 | 1 x 150 | Fino a 10 | Fino a 4750 | 0,288 |
r5d.2xlarge |
8 | 64 | 1 x 300 | Fino a 10 | Fino a 4750 | 0,576 (+100%) |
r5d.4xlarge |
16 | 128 | 2 x 300 | Fino a 10 | 4750 | 1,152 (+100%) |
r5d.8xlarge |
32 | 256 | 2 x 600 | 10 | 6800 | 2,304 (+100%) |
.
Si noti che possono esserci dimensioni intermedie, ad esempio r5d.12xlarge, che si colloca tra r5d.8xlarge e r5d.16xlarge. La famiglia di istanze R5d contiene anche dimensioni inferiori a R5d.xlarge e superiori a R5d.16.xlarge. Il numero di dimensioni disponibili per i sistemi operativi a 32 bit è limitato durante l’implementazione di un’istanza da un’Amazon Machine Image (AMI).
In base a questi parametri (famiglia, generazione, funzionalità aggiuntive e dimensione), i diversi tipi di istanze di EC2 sono ottimizzati per diversi casi d’uso e offrono diverse combinazioni di risorse di processore, memoria, storage e grafica. È possibile selezionare il tipo di istanza con la combinazione più adatta alle proprie esigenze.
Quali sono i diversi tipi di istanze di EC2?
Le istanze di EC2 sono suddivise in diverse categorie denominate “tipi di istanza”. Ciascun tipo è ottimizzato per casi d’uso specifici.
Esistono 5 tipi di istanze di EC2:
- Uso generico
- Ottimizzate per l’elaborazione
- Ottimizzate per la memoria
- Ottimizzate per lo storage
- Elaborazione accelerata
Come accennato in precedenza, ogni tipo di istanza di EC2 comprende diverse famiglie di istanze ed è disponibile in diverse dimensioni di istanza AWS. In questa sezione tratteremo i dettagli dei tipi di istanza, delle famiglie di istanze e delle loro funzioni principali. Forniremo inoltre esempi di istanze e informazioni utili per aiutarti a ricordare il principio di denominazione.
Tipo di istanza per uso generico
Le istanze per uso generico possono essere utilizzate in diversi scenari e offrono un equilibrio tra CPU (unità di elaborazione centrale), RAM (memoria ad accesso casuale) e risorse di rete. Questo tipo di istanza può essere utilizzato per applicazioni che consumano queste risorse in proporzioni uguali. Le istanze di EC2 di questo tipo possono essere utilizzate per eseguire un server web o distribuire un repository di codice, oppure in altri scenari di hosting standard, ecc.
Il tipo di istanza di EC2 per uso generico comprende quattro famiglie (ovvero sottoclassi o tipi di istanza specifici): M, T, A e Mac.
-
MFamiglia di istanze (Generic)
I vantaggi della famiglia di istanze M sono l’affidabilità, buone prestazioni di base e un equilibrio tra prestazioni e prezzo. L’utilizzo delle istanze M rappresenta la soluzione ottimale per database di piccole e medie dimensioni. Le istanze M sono più stabili rispetto alle istanze T . Si tratta di una buona scelta quando si sta appena iniziando a lavorare con AWS EC2.
Si può iniziare eseguendo un’istanza M5 . Le istanze M5 utilizzano il processore Intel Xeon (3,1 GHz) con un nuovo set di istruzioni Advanced Vector Extension e sono sufficienti per svolgere la maggior parte delle attività comuni. Le istanze M5a e M6a utilizzano processori AMD. Le istanze M6g sono basate su processori ARM (AWS Graviton 2).
Aiuto sulla memoria: M come nell’elaborazione principale
Esempi: m4.large, m5.2xlarge, m5n.2xlarge, m5zn.12xlarge, m5zn.metal, m5n.large, m5n.24xlarge, m5n.metal, m6i.16xlarge, m5a.8xlarge, m6a.48xlarge, m6g.medium
Che cos’è M5 metal (come nell’esempio dell’istanza m5zn.metal sopra riportato)? L’istanza AWS EC2 metal è quella di dimensioni maggiori, dopo 6xlarge e 12xlarge, per la famiglia M5zn . Metal si riferisce ai server bare metal di AWS che offrono le massime prestazioni e un sistema operativo installato direttamente sull’hardware.
-
TLa famiglia di istanze (Burstable)
T viene solitamente utilizzata per eseguire applicazioni con requisiti stabili, ma che a volte possono presentare picchi di attività. Un esempio può essere un sito web, dove si verificano picchi di attività quando il sito registra un numero elevato di visitatori. La funzione di bursting consente a un sito di far fronte a picchi di richiesta senza interrompere i servizi forniti né arrestare l’istanza. La maggior parte delle istanze T viene eseguita su processori Intel.
Esiste un interessante modello di tariffazione basato sui crediti CPU. Quando un’istanza è inattiva (opera al di sotto della soglia di base), vengono accumulati crediti CPU. Quando si verifica un picco di prestazioni (l’istanza funziona al di sopra del valore di riferimento), vengono utilizzati quei crediti CPU. Le istanze
T3 e T3a sono oggi esempi comuni di questa sottoclasse. Il valore di riferimento per la frequenza della CPU è di 2,5 GHz, ma è possibile aumentare le prestazioni della CPU per un breve periodo quando il software richiede maggiori risorse CPU. Questa funzione consente a un’istanza di ottenere risorse aggiuntive su richiesta. Le istanze T3a funzionano con processori AMD (a - AMD). I tipi di macchina T4g sono basati su processori ARM (AWS Graviton 2).
Casi d’uso: esecuzione di microservizi, ambienti di sviluppo, siti web, applicazioni a bassa latenza, applicazioni generiche, ecc. È inoltre possibile utilizzare le istanze T2 e T3 per eseguire Software di backup per AWS EC2.
Supporto per la memoria: T come in transient, tiny o turbo
Esempi: t2.nano, t3.micro, t3a.small, t4g.medium
Qual è la differenza tra EC2 T2 e T3?
T2 Le istanze tornano alla linea di base delle prestazioni di calcolo di base se i crediti CPU per il burst si esauriscono. Questa modalità è denominata “modalità standard”.
T3 Le istanze continuano a funzionare in modalità burst se non sono disponibili crediti CPU e se tale modalità è obbligatoria per le applicazioni in esecuzione sull’istanza Amazon. Questa modalità è denominata “modalità illimitata”. Tuttavia, in questo caso sono previsti costi aggiuntivi. T3 Le istanze utilizzano hardware di nuova generazione per l’esecuzione.
-
AFamiglia di istanze
Le istanze della famiglia A sono basate su processori ARM (processori AWS Graviton con core Neoverse a 64 bit). Si consiglia di evitare l’uso di questa famiglia di istanze per attività ordinarie. I processori ARM presentano svantaggi in termini di prestazioni rispetto ai tradizionali processori x86-64 a causa della loro architettura. Utilizzare le istanze A in scenari specifici in cui è necessario utilizzare esclusivamente processori ARM per determinate attività, come lo sviluppo di applicazioni per una piattaforma ARM. Attualmente, la famiglia di istanze A1 è disponibile per il tipo di istanza di EC2 per uso generico solo nella generazione 1.
Aiuto sulla memoria: A come in ARM
Esempi: a1.large, a1.4xlarge, a1.metal.
-
Macfamiglia di istanze
Le istanze AWS EC2 Mac si basano sui computer Apple Mac Mini con processori Intel Core i7 (3,2 GHz / 4,6 GHz Turbo). Queste istanze sono alimentate dal sistema AWS Nitro, una combinazione di hardware e hypervisor. La famiglia di istanze Mac consente di eseguire Mac OS nel cloud e di utilizzare l’istanza per lo sviluppo e il test di applicazioni per macOS, Safari, Apple TV, ecc. I sistemi operativi disponibili sono macOS 10.14, 10.15, 11 e 12 per le corrispondenti Amazon Machine Image. Al momento della stesura di questo documento, esiste una sola istanza in questa famiglia.
Esempio: mac1.metal
Tipo di istanza ottimizzata per il calcolo
Il tipo di istanza di Amazon EC2 ottimizzata per il calcolo è pensato per l’esecuzione di attività ad alta intensità di calcolo che richiedono molte risorse CPU ma non presentano elevati requisiti di memoria e storage. Questo tipo di istanza di EC2 offre l’accesso a numerosi processori virtuali ad alte prestazioni. La frequenza dei processori va da 3,6 GHz a 3,9 GHz.
Il tipo di istanza ottimizzata per l’elaborazione viene utilizzato per il calcolo ad alte prestazioni, i server web, l’analisi dei dati, l’apprendimento automatico, la modellazione scientifica, il rendering video e la transcodifica multimediale. Potrebbe essere necessario archiviare grandi quantità di dati utilizzati per questi scopi in un’altra ubicazione (un’altra istanza di Amazon EC2 con un sistema di storage produttivo e ad alta capacità, un bucket Amazon S3, ecc.). Tuttavia, è possibile creare un’istanza di Amazon EC2 con storage SSD e una rete da 100 Gbit utilizzando le istanze c5n (n - network) o c5d (d – disk, SSD).
Qual è la migliore istanza di Amazon EC2 per un carico CPU elevato? Si consiglia di utilizzare una delle istanze del tipo EC2 ottimizzato per l’elaborazione.
Il tipo di istanza Amazon EC2 ottimizzato per l’elaborazione comprende due famiglie: C e Hpc.
-
Cfamiglia di istanze
Nella famiglia di istanze C6i, C5, C4C5a sono disponibili diverse istanze dotate di potenti processori Intel Xeon () e AMD EPYC (C). C5n è l’istanza con prestazioni di rete avanzate rispetto a C5. È possibile utilizzare questa istanza per distribuire router, firewall e altre applicazioni sottoposte a carico elevato che elaborano grandi quantità di traffico di rete. C6g, C6gn e C7g sono basate su processori ARM e sono destinate a compiti specifici.
Nota sulla memoria: C come nel calcolo
Esempi: c4.large, c5.xlarge, c5n.2xlarge, c5a.16xlarge, c6i.32xlarge, c6gn.medium, c6g.16xlarge
-
HpcLa famiglia di istanze
Hpc è la famiglia dedicata al calcolo ad alte prestazioni che appartiene al tipo di istanza AWS EC2 ottimizzata per il calcolo, destinata a carichi di lavoro ad alta intensità di calcolo. Hpc6a è l’istanza di questa famiglia basata su processori AMD Epic 7003 (frequenza fino a 3,6 GHz). È possibile utilizzare fino a 96 core virtuali, 384 GB di memoria, una larghezza di banda di rete di 25 Gbit e una rete EFA (Elastic Fiber Adapter) da 100 Gbit per prestazioni ultra-elevate. Aiuto mnemonico: Hpc come nel calcolo ad alte prestazioni
Esempio: Hpc6a.48xlarge (questa è l’unica istanza Hpc disponibile)
Tipo di istanza ottimizzata per la memoria
Il tipo di istanza AWS EC2 ottimizzata per la memoria è progettato per fornire una maggiore quantità di memoria rispetto ad altri parametri hardware. La RAM è importante per le applicazioni, ma alcune richiedono più RAM e un’elevata velocità di I/O (Input/Output). In questo caso, è possibile utilizzare istanze di EC2 ottimizzate per la memoria. Rispetto agli altri tipi di istanze di EC2 di AWS, il tipo ottimizzato per la memoria è consigliato per l’elaborazione di grandi quantità di dati in tempo reale, nonché per database relazionali e non relazionali.
Esempi di applicazioni con elevati requisiti di memoria sono Apache Spark, MS SQL Server, SQLite, Oracle Database e altri server di database. È persino possibile ospitare un database nella RAM per ottenere prestazioni estremamente elevate, se la dimensione del database lo consente. Tuttavia, è necessario considerare lo storage e dove salvare i dati del database, poiché la RAM viene svuotata quando si spegne l’istanza di Amazon EC2. Amazon offre la maggior parte dei tipi di macchina AWS ottimizzati per la memoria con archiviazione SSD, ma esistono istanze senza archiviazione persistente. In questo caso, è necessario salvare i dati su un’altra istanza di EC2 tramite la rete. Si consideri anche Backup delle istanze AWS EC2.
I tipi di AWS EC2 ottimizzati per la memoria comprendono tre famiglie di istanze: R, X e Z.
-
Rfamiglia di istanze
La famiglia R è una famiglia generica del tipo di istanza di EC2 ottimizzata per la memoria. È possibile configurare fino a 768 GB di RAM. Sono disponibili diverse configurazioni delle istanze R, tra cui processori Intel, processori AMD e funzionalità di rete avanzate, che consentono di selezionare quella più adatta ai propri requisiti: R6i, R5, R5a, R5b, R5n e R4.
Le istanze delle serie R5 e R6 possono essere utilizzate per l’analisi dei big data in tempo reale.
Sono disponibili istanze R6g per chi necessita dell’architettura ARM.
Nota sulla memoria: R come nella RAM
Esempi: r4.2xlarge, r5.large, r5a.16xlarge, r5ad.24xlarge, r5b.16xlarge, r5n.4xlarge, r5dn.2xlarge, r6i.16xlarge, r6gd.medium
-
Xfamiglia di istanze
La famiglia X offre un rapporto di memoria più elevato, mentre le istanze X consentono di eseguire applicazioni più esigenti in termini di memoria per l’elaborazione dei dati rispetto alla famiglia di istanze R . È possibile utilizzare fino a 3,9 TB di RAM per le istanze X del tipo EC2 ottimizzato per la memoria. I processori Intel Xeon garantiscono elevate prestazioni della CPU. Aiuto mnemonico: X come in Xtreme RAM
Esempi: x1e.xlarge, x1e.32xlarge, x1.16xlarge
-
Zfamiglia di istanze
Le istanze della famiglia Z offrono un’elevata capacità di CPU oltre a un’ampia capacità di memoria e funzionano su processori Intel Xeon con una frequenza fino a 4,0 GHz e fino a 384 GB di RAM.
La funzione distintiva di questa istanza è lo storage SSD locale basato su NVMe. I dischi sono fisicamente collegati al server host per garantire prestazioni migliori per lo storage a blocchi utilizzato da questo tipo di istanza di EC2 della famiglia Z . È disponibile fino a 1,8 TB di spazio di archiviazione SSD. Questo tipo di istanza può essere ottimale per le applicazioni in cui il costo della licenza per core è elevato.
Z1d è l’unica istanza disponibile per questa famiglia, ma è disponibile in diverse dimensioni.
Guida alla memoria: Z come in zippy
Famiglia di istanze High Memory
Le istanze di EC2 High Memory offrono la massima capacità di memoria e consentono di utilizzare fino a 24 TB di RAM per istanza. Le capacità di rete sono potenziate (100 Gbit/s), mentre la larghezza di banda di storage arriva fino a 38 Gbit/s. Viene utilizzata la piattaforma a 8 socket con processori Intel Xeon (Cascade Lake). È possibile utilizzare le istanze Amazon ad alta memoria per i database in memoria SAP HANA.
Esempi: u-6tb1.metal, u-24tb1.metal, u-12tb1.112xlarge, u-6tb1.56xlarge
Tipo di istanza ottimizzata per lo storage
Il tipo di istanza di Amazon EC2 ottimizzata per lo storage offre le migliori capacità di archiviazione per le istanze Amazon. È prassi comune tra gli utenti Amazon collegare un bucket S3 a un’istanza di Amazon EC2 e utilizzare tale bucket come spazio di archiviazione. I bucket rappresentano un’opzione interessante grazie al loro prezzo vantaggioso rispetto ai volumi EBS. I bucket S3 sono un sistema di storage a oggetti, mentre i volumi EBS sono di tipo block storage. I bucket vengono utilizzati per archiviare grandi quantità di dati in cui la velocità di trasferimento non è fondamentale, ad esempio i backup. Gli SSD non vengono utilizzati per l’archiviazione S3. Se non è possibile utilizzare i bucket S3 a causa di requisiti o limitazioni tecniche, è consigliabile ricorrere ai volumi EBS con la configurazione necessaria.
Scegliendo le istanze ottimizzate per l’archiviazione tra gli altri tipi di istanze AWS EC2, si ottengono ampie opzioni di archiviazione con la possibilità di utilizzare sia l’archiviazione a blocchi basata su SSD che su HDD per le proprie istanze Amazon. Le prestazioni di input/output (I/O) sono elevate sia per i dischi rigidi (HDD) che per gli SSD, tenendo conto delle capacità di ciascuna tecnologia di disco.
Il tipo di istanza di EC2 ottimizzata per lo storage è ideale per applicazioni che eseguono attività ad alta intensità di storage e hanno requisiti di accesso sequenziale e casuale in lettura/scrittura a grandi insiemi di dati su storage locale. Queste istanze funzionano con potenti processori Intel Xeon e non sono dotate di processori ARM. Le istanze di questo tipo AWS EC2 garantiscono una bassa latenza per le operazioni su disco.
È possibile utilizzare le istanze ottimizzate per lo storage per il data warehousing, i file system distribuiti, i database relazionali, la cache per i database in memoria, le carghe di lavoro di analisi dei big data e altre operazioni a bassa latenza che richiedono un uso intensivo del disco.
Esistono tre famiglie (classi) di tipi di istanze di EC2 ottimizzate per lo storage: D, I e H. La famiglia di istanze
-
D
D (dense) offre fino a 48 TB di spazio di storage su HDD per istanza. È possibile creare volumi di grandi dimensioni e utilizzarli per archiviare dati. La famiglia di istanze D include le istanze D2, D3 e D3en . Le istanze D3 offrono interessanti opzioni di storage su HDD con il costo più basso rispetto a tutte le altre famiglie di istanze di EC2. È possibile utilizzare le istanze D per l’implementazione di HDFS e altri file system distribuiti.
Guida sulla memoria: D come in densità, file system distribuiti
Esempi: d2.xlarge, d2.8xlarge, d3.8xlarge
-
ILa famiglia di istanze
I offre i parametri I/O più elevati. I parametri I/O più elevati e la latenza più bassa sono funzioni delle unità SSD NVMe utilizzate per le istanze di questo tipo. Le istanze della famiglia I sono ideali per operazioni su disco con elevato I/O casuale.
Nota sulla memoria: I come in input/output
Esempi: famiglia di istanze i3.2xlarge, i3.metal, i3en.24xlarge, i4i.4xlarge
-
HLe istanze
H del tipo di istanze di EC2 ottimizzate per lo storage offrono le migliori prestazioni per i dischi rigidi magnetici (HDD) a un prezzo contenuto. Vengono garantiti un rapporto prestazioni/prezzo equilibrato, un elevato accesso sequenziale I/O su disco e un elevato throughput del disco. Lo spazio di archiviazione su HDD è locale e questo fatto ha un impatto positivo sulle prestazioni del disco (rispetto all’utilizzo di uno spazio di archiviazione collegato a un server tramite rete). H Le istanze supportano fino a 14 TB di spazio di archiviazione locale.
Le istanze di EC2 della famiglia H offrono inoltre maggiori quantità di RAM per terabyte di spazio su disco e processori più potenti rispetto ad altre famiglie (D e I) del tipo di istanza EC2 ottimizzata per lo storage.
H1 è l’unico membro della famiglia di istanze H . Le istanze H1 girano su server con processori Intel Xeon E5 2686 E4 (2,3 GHz). Le istanze delle dimensioni maggiori supportano una frequenza di 2,7 GHz per tutti i core e di 3,0 GHz per tutti i core in modalità Turbo. La velocità di rete arriva fino a 25 Gbit/s, il che garantisce funzionalità di rete potenziate per il trasferimento di grandi quantità di dati.
Guida alla memoria: H come nell’HDD
Esempi: h1.2xlarge, h1.16xlarge
Tipo di istanza per elaborazione accelerata
Il tipo di istanza di EC2 per elaborazione accelerata offre funzionalità avanzate di accelerazione video. I tipi di istanza AWS EC2 illustrati in precedenza offrono diverse opzioni relative a processore, memoria e storage, ma senza funzionalità di accelerazione video. Alcune attività richiedono una scheda video per funzionare in modo più efficiente. Le istanze di calcolo accelerato sono dotate di potenti schede video e unità di elaborazione grafica (GPU) per eseguire attività specifiche quali rendering 3D, elaborazione video, analisi dei big data, intelligenza artificiale (AI), apprendimento automatico (ML), elaborazione parallela e altri carichi di lavoro grafici e di calcolo GPU (attività con elevati requisiti in termini di scheda grafica). Le istanze di EC2 per l’elaborazione accelerata (chiamate anche istanze AWS GPU) offrono CPU ad alte prestazioni, memoria, storage e opzioni di rete.
Esistono quattro famiglie per il tipo di istanza EC2 per l’elaborazione accelerata: P, G, F e infl1.
-
Pfamiglia di istanze
P Le istanze sono offerte con più interfacce di rete con una velocità fino a 400 Gbit/s e sono ideali per attività di elaborazione parallela e calcolo ad alte prestazioni. Le istanze della famiglia P sono dotate di GPU NVIDIA e processori Intel Xeon. Sono disponibili tre generazioni: P2, P3 e P4.
Supporto alla memoria: P come nel calcolo parallelo
Esempi: p2.8xlarge, p3.16xlarge, p3dn.24xlarge, p4d.24xlarge
-
Gfamiglia di istanze
G sono destinate a carichi di lavoro ad alta intensità grafica, ad esempio la visualizzazione 3D. È possibile utilizzare un’istanza G come workstation remota per eseguire queste attività. Le istanze G sono inoltre ottimizzate per attività di machine learning. Una larghezza di banda di rete fino a 100 Gbit/s e dispositivi di storage NVMe consentono di ottenere prestazioni elevate.
È possibile selezionare l’istanza necessaria con processori Intel Xeon o AMD EPYC. Le istanze che riportano la dicitura “g” nel nome sono basate su processori ARM. Le istanze disponibili della famiglia G sono G3, G4ad, G4dn, G5g e G5. Aiuto mnemonico: G come nei carichi di lavoro ad alta intensità grafica
Esempi: g3s.xlarge, g3.4xlarge, g4ad.2xlarge, g4dn.16xlarge, g5.48xlarge, g5g.2xlarge
-
Ffamiglia di istanze
F Le istanze offrono la possibilità di utilizzare l’accelerazione hardware personalizzabile con i Field Programmable Gate Array (FPGA). È possibile utilizzare l’hardware programmabile per l’accelerazione delle applicazioni. La F famiglia include esclusivamente F1 istanze dotate di un processore Intel Xeon E5-2686 v4 (Broadwell) ad alta frequenza, connettività di rete potenziata e storage SSD NVMe per ottenere prestazioni complessive eccellenti.
Sono disponibili kit di sviluppo FPGA e hardware per gli sviluppatori di software che utilizzano ambienti diversi. Gli sviluppatori possono programmare funzioni logiche e implementarle in circuiti integrati specifici per l’applicazione. È possibile creare un’immagine Amazon FPGA (AFI) quando la configurazione di un’istanza F1 termina e distribuire tale immagine su un’altra istanza F1 .
I casi d’uso più comuni delle istanze F1 sono l’analisi dei big data, l’elaborazione genomica, la scienza complessa, l’elaborazione video in tempo reale, ecc.
Aiuto mnemonico: F come in “field”, F1 come in “Formula 1”.
Esempi: f1.2xlarge, f1.4xlarge, f1.16xlarge.
-
Infl1La famiglia di istanze
Infl1 è ottimizzata per il machine learning ad alte prestazioni a un prezzo interessante. Gli sviluppatori possono utilizzare le API di deep learning e l’AWS Neuron SDK con framework di machine learning quali MXNet, PyTorch e TensorFlow. Per le istanze della famiglia Infl1 vengono utilizzati fino a 16 chip AWS Inferentia, abbinati a potenti processori Intel Xeon.
Supporto di memoria: Inf come in Inferentia
Esempi: inf1.xlarge, inf1.24xlarge
-
Trn1La famiglia di istanze
Trn1 è adatta all’addestramento di deep learning, che richiede ingenti risorse hardware GPU, e garantisce prestazioni elevate per l’esecuzione efficiente delle attività. Rispetto alle soluzioni precedenti, è possibile raggiungere la stessa efficienza nell’apprendimento automatico implementando un numero inferiore di istanze di EC2. Trn1 Le istanze utilizzano chip Trainium sviluppati da Amazon. Sono disponibili fino a 16 acceleratori AWS Trainium con supporto per ampie opzioni di scalabilità. L’elevata larghezza di banda di rete EFA raggiunge gli 800 Gbit/s. Le funzioni di questa famiglia di istanze consentono di risolvere attività di addestramento di intelligenza artificiale (AI) più complesse rispetto alle precedenti famiglie di GPU tradizionali. Come ricordarlo: “ Trn ” (come in “training”)
-
Famiglia di istanze DL1
La famiglia DL1 è una delle più recenti famiglie di istanze di EC2 di AWS per il calcolo accelerato, destinate all’addestramento di modelli di machine learning. Le istanze della famiglia DL1 non si basano sulle GPU tradizionali come in passato. Le istanze di questa famiglia utilizzano gli acceleratori Gaudi di Habana Labs, società di proprietà di Intel. È disponibile supporto per un numero massimo di 8 acceleratori Gaudi e una larghezza di banda di rete di 400 Gbit.
Esempio: dl1.24xlarge (questa è l’unica istanza di questa famiglia)
-
VT1famiglia di istanze
Le istanze AWS VT1 sono destinate alla transcodifica video in tempo reale con risoluzione 4K (3840×2160) a 50 fotogrammi al secondo (FPS) e alle trasmissioni video in diretta a un prezzo accessibile. La famiglia di istanze di EC2 VT1 supporta la transcodifica di un massimo di 64 flussi video simultanei con risoluzione 1920×1080 e 60 FPS. È possibile trasmettere l’output video in più risoluzioni contemporaneamente.
La principale funzione hardware dei server che eseguono istanze VT1 è l’utilizzo delle schede acceleratrici multimediali Xilinx Alveo U30 (schede PCI Express installate nei server). È possibile utilizzare fino a 8 di queste schede acceleratrici. Ogni acceleratore contiene due chip XCU30. La configurazione hardware massima comprende 96 vCPU, 192 GB di RAM e una larghezza di banda di rete di 25 Gbit/s. La larghezza di banda EBS è di 19 Gbit/s. È possibile utilizzare FFMPEG con Xilinx Video SDK.
I dispositivi XCU30 supportano la codifica video hardware con i seguenti parametri:
- Codec video H.264/AVC e H.265/HEVC
- Bitrate video costante, bitrate variabile e parametro di quantizzazione costante
- Spazio colore YCbCr 4:2:0, 8 bit per canale
- Scansione progressiva
Per le trasmissioni televisive è disponibile il supporto per le modalità picture-in-picture, side-by-side e di transizione. Maggiori dettagli su tutti i parametri supportati sono disponibili sui siti web di AWS e Xilinx.
L’approccio che prevede l’uso degli FPGA (Field-Programmable Gate Array) di Xilinx si differenzia dall’uso tradizionale di CPU e GPU per la codifica video.
Attualmente sono disponibili tre dimensioni per le istanze VT1 .
Esempi: vt1.3xlarge, vt1.6xlarge, vt1.24xlarge
Supporto alla memoria: VT come nella transcodifica video
Come scegliere il tipo giusto di istanza di EC2?
Ora, dopo aver illustrato i tipi di istanze di EC2 e i relativi casi d’uso, è possibile valutare quale di esse possa soddisfare i propri requisiti. Tuttavia, prima di scegliere il tipo di istanza di EC2, è opportuno tenere in considerazione le opzioni di prezzo relative ai tipi di istanza AWS oltre alle caratteristiche hardware.
Quali sono le opzioni di prezzo disponibili con EC2?
Esistono quattro tipi di tariffazione AWS EC2:
On-demand . Questo modello di tariffazione consente di allocare tutte le risorse necessarie in qualsiasi momento. Il modello di tariffazione on-demand è diffuso e semplice, ma è anche uno dei più costosi.
Istanze spot . È possibile fare un’offerta per le risorse EC2 inutilizzate nel cloud di Amazon ed eseguire istanze a prezzi inferiori rispetto a quelli standard delle istanze di Amazon EC2. È possibile utilizzare solo le risorse disponibili in quel momento. Lo svantaggio è che Amazon può sospendere e persino terminare le istanze spot entro 2 minuti dalla visualizzazione di un’avvertenza, qualora fosse necessario fornire risorse hardware ai clienti che utilizzano istanze on-demand o riservate. Utilizza Amazon Spot Instance Advisor per selezionare un’istanza spot disponibile. Tenete conto della frequenza delle interruzioni e della tolleranza alle interruzioni delle vostre applicazioni.
Eseguire il backup delle istanze di Amazon EC2 per proteggere i dati delle vostre istanze spot EC2 in caso di chiusura. Le istanze spot possono essere utilizzate per lo sviluppo e il collaudo di applicazioni, nonché per attività meno critiche.
Istanze riservate . Si tratta di un altro modello di tariffazione che consente di ridurre i prezzi delle istanze di EC2. È possibile riservare una capacità hardware definita per l’istanza necessaria per il periodo selezionato (1 o 3 anni). Non si ottiene la stessa flessibilità nel consumo delle risorse rispetto alle istanze on-demand, ma è previsto uno sconto significativo. Se le vostre applicazioni utilizzano una quantità prevedibile e stabile di capacità hardware e prevedete di eseguirle a lungo termine, potete ricorrere alle istanze riservate. Le istanze riservate possono essere considerate come un programma di sconti per le istanze on-demand.
Host dedicati . Si ottiene il controllo su un server fisico dedicato su cui è possibile eseguire le proprie istanze di EC2 (che sono VM) con opzioni avanzate di gestione delle VM. Non è necessario disporre di hardware fisico su cui installare un sistema operativo, poiché il software di virtualizzazione Xen o Nitro Hypervisor è preinstallato. In generale, Amazon adotta l’approccio multi-tenant e le istanze di EC2 di diversi clienti possono essere eseguite su un unico host, pur essendo logicamente isolate. Quando si eseguono istanze su un host dedicato, non si condivide tale host con altri clienti Amazon (tenant). I prezzi delle istanze di EC2 di AWS per gli host dedicati sono elevati, ma a volte l’utilizzo di questo modello di tariffazione può essere giustificato, ad esempio a causa di fattori legati alle licenze software, quando una licenza è vincolata all’hardware fisico (socket CPU, core CPU, ecc.). Un altro motivo è rappresentato dalle normative di conformità che richiedono l’uso di hardware dedicato per le organizzazioni mediche e altre organizzazioni con attività mission-critical (come alternativa avanzata all’utilizzo di un’istanza dedicata).
Non confondere un host dedicato con un’istanza dedicata. Un’istanza dedicata gira su hardware dedicato senza che su quell’hardware vengano eseguite istanze di EC2 di altri clienti (tenant), ma si ha meno visibilità e meno opzioni di controllo su un’istanza dedicata rispetto a un host dedicato.
Se avete bisogno di hardware fisico (bare metal) per eseguire il vostro sistema operativo, prendete in considerazione l’utilizzo di un’istanza EC2 della dimensione metal per il tipo di macchina AWS EC2 obbligatorio.
Raccomandazioni sui prezzi di AWS EC2
Tenete conto delle seguenti raccomandazioni quando dovete eseguire un’istanza EC2:
- I nuovi utenti AWS possono iniziare utilizzando il modello di tariffazione on-demand per eseguire le istanze.
- Stimare le risorse hardware necessarie per eseguire un’istanza di EC2.
- Tra i tipi di istanze di EC2 di AWS, selezionare quella che soddisfa al meglio i requisiti delle proprie attività. I nuovi utenti possono iniziare utilizzando istanze di EC2 per uso generico.
- Selezionare la dimensione dell’istanza più adatta tra quelle disponibili su AWS. Evitare un sovradimensionamento per risparmiare sui costi.
- È preferibile selezionare l’ultima generazione per i tipi di AWS EC2.
- Tieni conto del tipo di ambiente e delle relative carghe di lavoro (sviluppo, test, produzione) quando selezioni un modello di tariffazione per la tua istanza.
Utilizza Calcolatore dei prezzi AWS e Calcolatore mensile AWS per stimare il prezzo delle istanze di EC2.
Qual è l’istanza di EC2 più diffusa?
Un tipo di istanza di EC2 per uso generico è il più diffuso tra i clienti grazie alla configurazione bilanciata di CPU, RAM e storage, ottimale per l’esecuzione di attività comuni e regolari. È sempre possibile iniziare utilizzando un’istanza di EC2 per uso generico, poiché in seguito è possibile modificare il tipo di istanza, la dimensione e la generazione senza alcun impatto negativo sui dati. Tuttavia, a tal fine è necessario pianificare lo spegnimento dell’istanza.
Per quanto riguarda le dimensioni delle istanze di EC2, quelle di piccole dimensioni sono le più popolari.
Nota: Riducete i tempi di inattività e prevenite la perdita di dati eseguendo regolarmente il backup di AWS EC2, indipendentemente dal tipo di istanza utilizzata. Scarica il white paper su Confronto tra snapshot e backup su AWS per scoprire di più sulle funzioni di backup di EC2.
Conclusione
Amazon mette a disposizione un gran numero di istanze di EC2 che appartengono a cinque principali tipi di istanze di Amazon EC2, in base alle attività per cui sono state progettate. Ora conosci il principio alla base della loro denominazione e classificazione, che dovrebbe aiutarti a selezionare l’istanza di EC2 più adatta ai tuoi requisiti. Scegliere l’istanza di EC2 ottimale per le vostre attività vi consente di lavorare in modo efficiente e di ottimizzare i costi. Si consiglia di confrontare le opzioni tariffarie prima di avviare un’istanza di EC2 e di valutare il livello di criticità dei carichi di lavoro, la stabilità del consumo delle risorse hardware e la durata prevista per l’esecuzione dell’istanza.

