CLIConfigurazioni di esempio per Fleet EC2 - Amazon Elastic Compute Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

CLIConfigurazioni di esempio per Fleet EC2

Puoi definire la configurazione EC2 della tua flotta in un JSON file e quindi fare riferimento a quel file con il AWS CLI comando create-fleet per creare la tua flotta, come segue:

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

Gli esempi seguenti illustrano le configurazioni di lancio per vari EC2 casi d'uso di Fleet. Per ulteriori informazioni sui parametri di configurazione, consulta create-fleet nel Command Reference.AWS CLI

Esempio 1: Avviare Istanze spot come opzione di acquisto predefinita

L'esempio seguente specifica i parametri minimi richiesti in un EC2 parco veicoli: un modello di lancio, una capacità target e un'opzione di acquisto predefinita. Il modello di avvio viene identificato dall'ID e dal numero di versione del modello di avvio. La capacità target per il parco istanze è di 2 istanze e l'opzione d'acquisto predefinita è spot; ne consegue che il parco istanze avvia 2 Istanze spot.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 2, "DefaultTargetCapacityType": "spot" } }

Esempio 2: Avviare Istanze on demand come opzione di acquisto predefinita

L'esempio seguente specifica i parametri minimi richiesti in una EC2 flotta: un modello di lancio, la capacità target e l'opzione di acquisto predefinita. Il modello di avvio viene identificato dall'ID e dal numero di versione del modello di avvio. La capacità target per il parco istanze è di 2 istanze e l'opzione d'acquisto predefinita è on-demand; ne consegue che il parco istanze avvia 2 Istanze on demand.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 2, "DefaultTargetCapacityType": "on-demand" } }

Esempio 3: Avviare Istanze on demand come capacità primaria

L'esempio seguente specifica la capacità di destinazione totale di 2 istanze per il parco istanze e una capacità di destinazione di 1 Istanza on demand. L'opzione di acquisto predefinita è spot. Il parco istanze avvia 1 Istanza on demand come indicato, ma deve avviare un'altra istanza per soddisfare la capacità target totale. L'opzione di acquisto per la differenza viene calcolata come TotalTargetCapacityOnDemandTargetCapacity = DefaultTargetCapacityType, ne consegue che il parco istanze avvia 1 istanza spot.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 2, "OnDemandTargetCapacity": 1, "DefaultTargetCapacityType": "spot" } }

Esempio 4: avvio di istanze On-Demand utilizzando più prenotazioni di capacità

È possibile configurare un parco istanze affinché utilizzi Prenotazioni di capacità on demand prima all'avvio Istanze on demand impostando la strategia di utilizzo per Prenotazioni di capacità su use-capacity-reservations-first. In questo esempio viene illustrato come il parco istanze seleziona la prenotazione della capacità da utilizzare quando sono presenti più prenotazioni della capacità di quelle necessarie per soddisfare la capacità obiettivo.

In questo esempio, la configurazione del parco istanze è la seguente:

  • Capacità obiettivo: 12 istanze on demand

  • Prenotazioni della capacità inutilizzate totali: 15 (più della capacità obiettivo del parco istanze di 12 istanze on demand)

  • Numero di prenotazioni della capacità per pool: 3 (m5.large, m4.xlarge e m4.2xlarge)

  • Numero di prenotazioni della capacità per pool: 5

  • Strategia di allocazione on demand: lowest-price (Quando sono presenti più prenotazioni della capacità inutilizzate in più pool di istanze, il parco istanze determina i pool in cui avviare le istanze on demand in base alla strategia di allocazione on demand).

    Tenere presente che è anche possibile utilizzare la strategia di allocazione prioritized invece della strategia di allocazione lowest-price.

Prenotazioni di capacità

L'account presenta i seguenti 15 Prenotazioni di capacità inutilizzati in 3 diversi pool. Il numero di Prenotazioni di capacità in ogni pool è indicato da AvailableInstanceCount.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount":5, "InstanceMatchCriteria": "open", "State": "active" }

Configurazione del parco istanze

La seguente configurazione del parco istanze mostra solo le configurazioni pertinenti per questo esempio. La capacità di destinazione totale è 12 e il tipo di capacità di destinazione predefinito è on-demand. La strategia di allocazione on demand è lowest-price. La strategia di utilizzo per la prenotazione della capacità è use-capacity-reservations-first.

In questo esempio, il prezzo istanza on demand è:

  • m5.large – 0,096 USD all'ora

  • m4.xlarge – 0,20 USD all'ora

  • m4.2xlarge – 0,40 USD all'ora

Nota

Il tipo di parco istanze deve essere di tipo instant. Altri tipi di parchi istanze non supportano use-capacity-reservations-first.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-abc1234567example", "Version": "1" } "Overrides": [ { "InstanceType": "m5.large", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.2xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 12, "DefaultTargetCapacityType": "on-demand" }, "OnDemandOptions": { "AllocationStrategy": "lowest-price" "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } }, "Type": "instant", }

Dopo aver creato il parco istanze instant utilizzando la configurazione precedente, vengono avviate le seguenti 12 istanze per soddisfare la capacità di destinazione:

  • 5 istanze on demand m5.large in us-east-1am5.large in us-east-1a è il prezzo più basso, e ci sono 5 prenotazioni della capacità m5.large disponibili inutilizzate

  • 5 istanze on demand m4.xlarge in us-east-1a – m4.xlarge in us-east-1a è il prezzo più basso successivo, e ci sono 5 prenotazioni della capacità m4.xlarge disponibili inutilizzate

  • 2 istanze on demand m4.2xlarge in us-east-1a – m4.2xlarge in us-east-1a è il terzo prezzo più basso, e ci sono 5 prenotazioni della capacità m4.2xlarge non utilizzate di cui solo 2 sono necessarie per soddisfare la capacità obiettivo

Dopo il lancio della flotta, puoi correre describe-capacity-reservationsper vedere quante prenotazioni di capacità non utilizzate sono rimaste. In questo esempio, dovresti vedere la seguente risposta, che mostra che sono state utilizzate tutte le prenotazioni della capacità m5.large e m4.xlarge, con 3 prenotazioni della capacità m4.2xlarge rimaste inutilizzate.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "AvailableInstanceCount": 3 }

Esempio 5: avvia le istanze On-Demand utilizzando le prenotazioni di capacità quando la capacità target totale supera il numero di prenotazioni di capacità non utilizzate

È possibile configurare un parco istanze affinché utilizzi Prenotazioni di capacità on demand prima all'avvio Istanze on demand impostando la strategia di utilizzo per Prenotazioni di capacità su use-capacity-reservations-first. In questo esempio viene illustrato come il parco istanze seleziona i pool di istanze in cui avviare le istanze on demand quando la capacità totale obiettivo supera il numero di prenotazioni della capacità inutilizzate disponibili.

In questo esempio, la configurazione del parco istanze è la seguente:

  • Capacità obiettivo: 16 istanze on demand

  • Prenotazioni della capacità inutilizzate totali: 15 (meno della capacità obiettivo del parco istanze di 16 istanze on demand)

  • Numero di prenotazioni della capacità per pool: 3 (m5.large, m4.xlarge e m4.2xlarge)

  • Numero di prenotazioni della capacità per pool: 5

  • Strategia di allocazione on demand: lowest-price. (Quando il numero di prenotazioni della capacità inutilizzate è inferiore alla capacità obiettivo on demand, il parco istanze determina i pool in cui avviare la capacità on demand rimanente in base alla strategia di allocazione on demand.)

    Tenere presente che è anche possibile utilizzare la strategia di allocazione prioritized invece della strategia di allocazione lowest-price.

Prenotazioni di capacità

L'account presenta i seguenti 15 Prenotazioni di capacità inutilizzati in 3 diversi pool. Il numero di Prenotazioni di capacità in ogni pool è indicato da AvailableInstanceCount.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount":5, "InstanceMatchCriteria": "open", "State": "active" }

Configurazione del parco istanze

La seguente configurazione del parco istanze mostra solo le configurazioni pertinenti per questo esempio. La capacità di destinazione totale è 16 e il tipo di capacità di destinazione predefinito è on-demand. La strategia di allocazione on demand è lowest-price. La strategia di utilizzo per la prenotazione della capacità è use-capacity-reservations-first.

In questo esempio, il prezzo istanza on demand è:

  • m5.large – $0,096 all'ora

  • m4.xlarge – $0,20 all'ora

  • m4.2xlarge – 0,40 USD all'ora

Nota

Il tipo di parco istanze deve essere instant. Altri tipi di parchi istanze non supportano use-capacity-reservations-first.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } "Overrides": [ { "InstanceType": "m5.large", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.2xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 16, "DefaultTargetCapacityType": "on-demand" }, "OnDemandOptions": { "AllocationStrategy": "lowest-price" "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } }, "Type": "instant", }

Dopo aver creato il parco istanze instant utilizzando la configurazione precedente, vengono avviate le seguenti 16 istanze per soddisfare la capacità di destinazione:

  • 6 istanze on demand m5.large in us-east-1am5.large in us-east-1a è il prezzo più basso, e ci sono 5 prenotazioni della capacità m5.large disponibili inutilizzate. Le prenotazioni della capacità vengono prima utilizzate per avviare 5 istanze on demand. Dopo che vengono utilizzate le rimanenti prenotazioni della capacità m4.xlarge e m4.2xlarge, per soddisfare la capacità obiettivo viene avviata un'ulteriore istanza on demand in base alla strategia di allocazione on demand, che in questo esempio è lowest-price.

  • 5 istanze on demand m4.xlarge in us-east-1am4.xlarge in us-east-1a è il prezzo più basso successivo, e ci sono 5 prenotazioni della capacità m4.xlarge disponibili inutilizzate

  • 5 istanze on demand m4.2xlarge in us-east-1am4.2xlarge in us-east-1a è il terzo prezzo più basso, e ci sono 5 prenotazioni della capacità m4.2xlarge disponibili inutilizzate

Dopo il lancio della flotta, puoi correre describe-capacity-reservationsper vedere quante prenotazioni di capacità non utilizzate sono rimaste. In questo esempio, dovresti vedere la seguente risposta, che mostra che tutti i Prenotazioni di capacità del pool sono stati utilizzati.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "AvailableInstanceCount": 0 }

Esempio 6: avvio di istanze On-Demand utilizzando prenotazioni di capacità mirate

È possibile configurare un parco istanze affinché utilizzi prima le prenotazioni della capacità on demand targeted prima all'avvio di istanze on demand impostando la strategia di utilizzo per le prenotazioni della capacità su use-capacity-reservations-first. In questo esempio viene illustrato come avviare istanze on demand in prenotazione della capacità targeted, in cui gli attributi della prenotazione della capacità sono gli stessi ad eccezione delle relative zone di disponibilità (us-east-1a e us-east-1b). Viene inoltre illustrato come il parco istanze seleziona i pool di istanze in cui avviare le istanze on demand quando la capacità totale obiettivo supera il numero di prenotazioni della capacità inutilizzate disponibili.

In questo esempio, la configurazione del parco istanze è la seguente:

  • Capacità obiettivo: 10 istanze on demand

  • Prenotazioni della capacità targeted inutilizzate totali: 6 (meno della capacità obiettivo on demand del parco istanze di 10 istanze on demand)

  • Numero di prenotazioni della capacità per pool: 2 (us-east-1a e us-east-1b)

  • Numero di prenotazioni della capacità per pool: 3

  • Strategia di allocazione on demand: lowest-price. (Quando il numero di prenotazioni della capacità inutilizzate è inferiore alla capacità obiettivo on demand, il parco istanze determina i pool in cui avviare la capacità on demand rimanente in base alla strategia di allocazione on demand.)

    Tenere presente che è anche possibile utilizzare la strategia di allocazione prioritized invece della strategia di allocazione lowest-price.

Per una spiegazione passo per passo delle procedure che è necessario eseguire per riprodurre questo esempio, consultare Tutorial: Avvio di Istanze on demand utilizzando le prenotazioni della capacità obiettivo.

Prenotazioni di capacità

L'account presenta le seguenti 6 prenotazioni della capacità inutilizzati in 2 diversi pool. In questo esempio, i pool differiscono per la zona di disponibilità. Il numero di Prenotazioni di capacità in ogni pool è indicato da AvailableInstanceCount.

{ "CapacityReservationId": "cr-111", "InstanceType": "c5.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 3, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-222", "InstanceType": "c5.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1b", "AvailableInstanceCount": 3, "InstanceMatchCriteria": "open", "State": "active" }

Configurazione del parco istanze

La seguente configurazione del parco istanze mostra solo le configurazioni pertinenti per questo esempio. La capacità obiettivo totale è 10 e il tipo di capacità obiettivo predefinito è on-demand. La strategia di allocazione on demand è lowest-price. La strategia di utilizzo per la prenotazione della capacità è use-capacity-reservations-first.

In questo esempio, il prezzo dell'istanza on demand per c5.xlarge in us-east-1 è 0,17 $ all'ora.

Nota

Il tipo di parco istanze deve essere instant. Altri tipi di parchi istanze non supportano use-capacity-reservations-first.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "c5.xlarge", "AvailabilityZone": "us-east-1a" }, { "InstanceType": "c5.xlarge", "AvailabilityZone": "us-east-1b" } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 10, "DefaultTargetCapacityType": "on-demand" }, "OnDemandOptions": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } }, "Type": "instant" }

Dopo aver creato il parco istanze instant utilizzando la configurazione precedente, vengono avviate le seguenti 10 istanze per soddisfare la capacità obiettivo:

  • Le prenotazioni della capacità vengono prima utilizzate per avviare 6 istanze on demand nel modo seguente:

    • 3 istanze on demand vengono avviate in 3 prenotazioni della capacità c5.xlarge targeted in us-east-1a

    • 3 istanze on demand vengono avviate in 3 prenotazioni della capacità c5.xlarge targeted in us-east-1b

  • Per soddisfare la capacità obiettivo, vengono avviate 4 istanze on demand aggiuntive nella capacità on demand in base alla strategia di allocazione on demand che in questo esempio è lowest-price. Tuttavia, poiché i pool hanno lo stesso prezzo (poiché il prezzo è per Regione e non per zona di disponibilità), il parco istanze avvia le restanti 4 istanze on demand in uno dei pool.

Dopo il lancio della flotta, puoi correre describe-capacity-reservationsper vedere quante prenotazioni di capacità non utilizzate sono rimaste. In questo esempio, dovresti vedere la seguente risposta, che mostra che tutti i Prenotazioni di capacità del pool sono stati utilizzati.

{ "CapacityReservationId": "cr-111", "InstanceType": "c5.xlarge", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-222", "InstanceType": "c5.xlarge", "AvailableInstanceCount": 0 }

Esempio 7: configura il ribilanciamento della capacità per avviare istanze Spot sostitutive

L'esempio seguente configura la EC2 flotta per lanciare un'istanza Spot sostitutiva quando Amazon EC2 emette una raccomandazione di ribilanciamento per un'istanza Spot del parco istanze. Per configurare la sostituzione automatica delle istanze spot, per ReplacementStrategy, specificare launch-before-terminate. Per configurare il ritardo temporale dal momento in cui vengono avviate le nuove istanze spot sostitutive a quando le vecchie istanze spot vengono eliminate automaticamente, per termination-delay, specificare un valore in secondi. Per ulteriori informazioni, consulta Opzioni di configurazione.

Nota

Si consiglia di utilizzare launch-before-terminate solo se è possibile prevedere il tempo necessario per il completamento delle procedure di arresto dell'istanza in modo che le vecchie istanze vengano terminate solo dopo il completamento di queste procedure. Saranno addebitati i costi per entrambe le istanze durante la loro esecuzione.

L'efficacia della strategia di ribilanciamento della capacità dipende dal numero di pool di capacità Spot specificati nella richiesta del parco veicoli. EC2 Si consiglia di configurare il parco istanze con un insieme diversificato di tipi di istanza e zone di disponibilità e per AllocationStrategy, specificare capacity-optimized. Per ulteriori informazioni sugli aspetti da considerare durante la configurazione di un EC2 parco veicoli per il ribilanciamento della capacità, consulta. Utilizza il ribilanciamento della capacità in Fleet e Spot EC2 Fleet per sostituire le istanze Spot a rischio

{ "ExcessCapacityTerminationPolicy": "termination", "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "LaunchTemplate", "Version": "1" }, "Overrides": [ { "InstanceType": "c3.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } }, { "InstanceType": "c4.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } }, { "InstanceType": "c5.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 5, "DefaultTargetCapacityType": "spot" }, "SpotOptions": { "AllocationStrategy": "capacity-optimized", "MaintenanceStrategies": { "CapacityRebalance": { "ReplacementStrategy": "launch-before-terminate", "TerminationDelay": "720" } } } }

Esempio 8: avvio di istanze Spot in un parco istanze ottimizzato in termini di capacità

L'esempio seguente mostra come configurare una EC2 flotta con una strategia di allocazione Spot che ottimizza la capacità. Per ottimizzare la capacità, è necessario impostare AllocationStrategy su capacity-optimized.

Nell'esempio seguente, le tre specifiche di avvio specificano tre pool di capacità spot. La capacità obiettivo è di 50 Istanze spot. The EC2 Fleet tenta di avviare 50 istanze Spot nel pool di capacità Spot con una capacità ottimale per il numero di istanze in fase di avvio.

{ "SpotOptions": { "AllocationStrategy": "capacity-optimized", }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2a" }, }, { "InstanceType": "m4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, }, { "InstanceType": "c5.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 50, "DefaultTargetCapacityType": "spot" } }

Esempio 9: avvio di istanze Spot in un parco istanze con priorità ottimizzate in termini di capacità

L'esempio seguente dimostra come configurare un EC2 parco veicoli con una strategia di allocazione Spot che ottimizzi la capacità utilizzando al contempo la priorità con il massimo impegno.

Quando si utilizza la strategia di allocazione capacity-optimized-prioritized, è possibile utilizzare il parametro Priority per specificare le priorità dei pool di capacità spot, dove a un numero inferiore corrisponde la priorità più alta. È inoltre possibile impostare la stessa priorità per diversi pool di capacità spot, se si preferisce non applicare priorità differenti. Se non si imposta una priorità per un pool, il pool verrà considerato ultimo in termini di priorità.

Per assegnare priorità ai pool di capacità spot, è necessario impostare AllocationStrategy su capacity-optimized-prioritized. EC2Fleet ottimizzerà innanzitutto la capacità, ma rispetterà le priorità con il massimo impegno (ad esempio, se il rispetto delle priorità non influirà in modo significativo sulla capacità di EC2 Fleet di fornire una capacità ottimale). Questa è una buona opzione per i carichi di lavoro in cui è necessario ridurre al minimo la possibilità di interruzioni e la preferenza per determinati tipi di istanza è importante.

Nell'esempio seguente, le tre specifiche di avvio specificano tre pool di capacità spot. Ogni pool ha una priorità, dove a un numero inferiore corrisponde la priorità più alta. La capacità obiettivo è di 50 Istanze spot. EC2Fleet tenta di inserire 50 istanze Spot nel pool di capacità Spot con la massima priorità e con il massimo impegno, ma prima ottimizza la capacità.

{ "SpotOptions": { "AllocationStrategy": "capacity-optimized-prioritized" }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Priority": 1, "Placement": { "AvailabilityZone": "us-west-2a" }, }, { "InstanceType": "m4.2xlarge", "Priority": 2, "Placement": { "AvailabilityZone": "us-west-2b" }, }, { "InstanceType": "c5.2xlarge", "Priority": 3, "Placement": { "AvailabilityZone": "us-west-2b" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 50, "DefaultTargetCapacityType": "spot" }

Esempio 10: avviare istanze Spot in un parco istanze price-capacity-optimized

L'esempio seguente dimostra come configurare una EC2 flotta con una strategia di allocazione Spot che ottimizzi sia la capacità che il prezzo più basso. Per ottimizzare la capacità tenendo conto del prezzo, è necessario impostare la AllocationStrategy spot su price-capacity-optimized.

Nell'esempio seguente, le tre specifiche di avvio specificano tre pool di capacità spot. La capacità obiettivo è di 50 Istanze spot. The EC2 Fleet tenta di avviare 50 istanze Spot nel pool di capacità Spot con una capacità ottimale per il numero di istanze in fase di avvio, scegliendo anche il pool con il prezzo più basso.

{ "SpotOptions": { "AllocationStrategy": "price-capacity-optimized", "MinTargetCapacity": 2, "SingleInstanceType": true }, "OnDemandOptions": { "AllocationStrategy": "lowest-price" }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2a" }, }, { "InstanceType": "m4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, }, { "InstanceType": "c5.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 50, "OnDemandTargetCapacity":0, "SpotTargetCapacity":50, "DefaultTargetCapacityType": "spot" }, "Type": "instant" }

Esempio 11: configurare la selezione del tipo di istanza basata sugli attributi

L'esempio seguente mostra come configurare un EC2 Fleet per utilizzare la selezione del tipo di istanza basata sugli attributi per identificare i tipi di istanza. Per specificare gli attributi di istanza richiesti, specifica gli attributi nella struttura InstanceRequirements.

Nell'esempio precedente, vengono specificati due attributi di istanza:

  • VCpuCount— È specificato un minimo di 2. vCPUs Poiché non è specificato alcun massimo, non esiste un limite massimo.

  • MemoryMiB: viene specificato un minimo di 4 MiB di memoria. Poiché non è specificato alcun massimo, non esiste un limite massimo.

Verranno identificati tutti i tipi di istanza con 2 o più vCPUs e 4 MiB o più di memoria. Tuttavia, la protezione dei prezzi e la strategia di allocazione potrebbero escludere alcuni tipi di istanze quando EC2Fleet rifornisce la flotta.

Per un elenco e le descrizioni di tutti i possibili attributi che puoi specificare, InstanceRequirementsconsulta Amazon EC2 API Reference.

{ "SpotOptions": { "AllocationStrategy": "price-capacity-optimized" }, "LaunchTemplateConfigs": [{ "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [{ "InstanceRequirements": { "VCpuCount": { "Min": 2 }, "MemoryMiB": { "Min": 4 } } }] }], "TargetCapacitySpecification": { "TotalTargetCapacity": 20, "DefaultTargetCapacityType": "spot" }, "Type": "instant" }