Tutorial: Configura il parco istanze EC2 per usare la ponderazione dell'istanza - Amazon Elastic Compute Cloud

Tutorial: Configura il parco istanze EC2 per usare la ponderazione dell'istanza

In questo tutorial viene utilizzata una società fittizia chiamata Example Corp per illustrare il processo di richiesta di un parco istanze EC2 con l'utilizzo della ponderazione dell'istanza.

Obiettivo

Example Corp, una società farmaceutica, vuole utilizzare la potenza di calcolo di Amazon EC2 per lo screening di composti chimici che potrebbero essere utilizzati per combattere il cancro.

Pianificazione

Prime analisi Example Corp Best Practice Spot. Poi, Example Corp stabilisce i requisiti seguenti per EC2 Fleet.

Tipi di istanza

Example Corp dispone di un'applicazione ad alta intensità di calcolo e di memoria che offre le migliori prestazioni con almeno 60 GB di memoria e otto CPU virtuali (vCPU). Il suo scopo è massimizzare tali risorse per l'applicazione al prezzo più basso possibile. Example Corp stabilisce che uno dei seguenti tipi di istanza EC2 soddisfa le proprie esigenze:

Tipo di istanza Memoria (GiB) vCPU

r3.2xlarge

61

8

r3.4xlarge

122

16

r3.8xlarge

244

32

Capacità di destinazione in unità

Con la ponderazione d'istanza, la capacità di destinazione può corrispondere a un numero di istanze (predefinito) o a una combinazione di fattori, come core (vCPU), memoria (GiB) e archiviazione (GB). Considerando la base per la loro applicazione (60 GB di RAM e otto vCPU) come un'unità, Example Corp decide che 20 volte questa quantità soddisferebbe le proprie esigenze. Dunque, la società imposta la capacità target della propria richiesta del parco istanze EC2 a 20 unità.

Pesi dell'istanza

Dopo aver stabilito la capacità di destinazione, Example Corp calcola i pesi dell'istanza. Per calcolare il peso dell'istanza per ogni tipo di istanza, la società stabilisce le unità di ogni tipo di istanza necessarie al raggiungimento della capacità di destinazione come segue:

  • r3.2xlarge (61,0 GB, 8 vCPU) = 1 unità da 20

  • r3.4xlarge (122,0 GB, 16 vCPU) = 2 unità da 20

  • r3.8xlarge (244,0 GB, 32 vCPU) = 4 unità da 20

Pertanto, Example Corp assegna pesi di istanza di 1, 2 e 4 alle rispettive configurazioni di avvio nella propria richiesta di EC2 Fleet.

Prezzo all'ora per unità

Example Corp utilizza il prezzo on demand all'ora per istanza come punto di partenza per il proprio prezzo. La società può anche utilizzare i prezzi Spot recenti o una combinazione dei due. Per calcolare il prezzo all'ora per unità, la società divide il prezzo iniziale all'ora per istanza per il peso. Ad esempio:

Tipo di istanza prezzo on demand Peso dell'istanza Prezzo all'ora per unità

r3.2xLarge

0,7 $

1

0,7 $

r3.4xLarge

1,4 $

2

0,7 $

r3.8xLarge

$2,8

4

0,7 $

Example Corp può utilizzare un prezzo globale di 0,7 $ all'ora per unità ed essere competitiva per tutti e tre i tipi di istanza. Potrebbero anche utilizzare un prezzo globale di 0,7 USD per unità ora e un prezzo specifico di 0,9 USD per unità ora nella specifica di avvio r3.8xlarge.

Verificare le autorizzazioni

Prima di creare un parco istanze EC2, Example Corp verifica che abbia un ruolo IAM con le autorizzazioni necessarie. Per ulteriori informazioni, consulta Prerequisiti di parco istanze EC2.

Creazione di un modello di avvio

Successivamente, Example Corp crea un modello di avvio. L'ID del modello di avvio viene utilizzato nella fase seguente. Per ulteriori informazioni, consulta Creare un modello di avvio Amazon EC2.

Creazione del parco istanze EC2

Example Corp crea un file, config.json, con la configurazione seguente per il proprio parco istanze EC2. Nell'esempio seguente sostituire gli identificatori di risorsa con i propri identificatori di risorsa.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-07b3bc7625cdab851", "Version": "1" }, "Overrides": [ { "InstanceType": "r3.2xlarge", "SubnetId": "subnet-482e4972", "WeightedCapacity": 1 }, { "InstanceType": "r3.4xlarge", "SubnetId": "subnet-482e4972", "WeightedCapacity": 2 }, { "InstanceType": "r3.8xlarge", "MaxPrice": "0.90", "SubnetId": "subnet-482e4972", "WeightedCapacity": 4 } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 20, "DefaultTargetCapacityType": "spot" } }

Example Corp crea EC2 Fleet utilizzando il comando create-fleet seguente.

aws ec2 create-fleet --cli-input-json file://config.json

Per ulteriori informazioni, consulta Creazione di un parco istanze EC2.

Compimento

La strategia di allocazione stabilisce da quali pool di capacità spot provengono le istanze spot.

Con la strategia lowest-price (ovvero la strategia predefinita), le Istanze spot provengono dal pool con il prezzo per unità più basso al momento dell'elaborazione. Per fornire 20 unità di capacità, EC2 Fleet avvia 20 istanze r3.2xlarge (20 diviso 1), 10 istanze r3.4xlarge (20 diviso 2) o 5 istanze r3.8xlarge (20 diviso 4).

Se Example Corp utilizzasse la strategia diversified, le Istanze spot proverrebbero da tutti e tre i pool. Il parco istanze EC2 avvierebbe 6 istanze r3.2xlarge (per ottenere 6 unità), 3 istanze r3.4xlarge (per ottenere 6 unità) e 2 istanze r3.8xlarge (per ottenere 8 unità), per un totale di 20 unità.