Utilizzo del parco istanze spot - 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à.

Utilizzo del parco istanze spot

Per iniziare a utilizzare un parco istanze spot, puoi creare una richiesta di istanze spot che includa la capacità target, la parte on demand facoltativa, una o più specifiche di avvio per le istanze e il prezzo massimo che sei disposto a pagare. La richiesta del parco deve includere una specifica di avvio che indichi le informazioni di cui il parco istanze ha bisogno per avviare un'istanza, come un'AMI, un tipo di istanza, una sottorete o una zona di disponibilità e uno o più gruppi di sicurezza.

Se il parco istanze include Istanze spot, Amazon EC2 può tentare di mantenere la capacità di destinazione del parco istanze al variare dei prezzi Spot.

Non è possibile modificare la capacità target di una richiesta una tantum dopo che essa è stata inviata. Per modificare la capacità target, annullare la richiesta e inviarne una nuova.

Una richiesta di parco istanze spot rimane attiva fino a quando non scade o fino a quando non la si annulla. Quando annulli una richiesta di parco istanze, puoi specificare se l'annullamento della richiesta interrompe le istanze spot nel rispettivo parco istanze.

Stati della richiesta di parco istanze spot

Una richiesta di parco istanze spot può avere uno dei seguenti stati:

  • submitted - La richiesta della serie di istanze spot è in fase di valutazione e Amazon EC2 si sta preparando ad avviare il numero di istanze previsto. Se la tua richiesta supera il limite della serie di istanze spot, viene annullata immediatamente.

  • active - La richiesta della serie di istanze spot è stata convalidata e Amazon EC2 sta tentando di mantenere il numero previsto di istanze spot in esecuzione. La richiesta rimane in questo stato finché non viene modificata o annullata.

  • modifying - La richiesta della serie di istanze spot è in fase di modifica. La richiesta rimane in questo stato finché la modifica non viene completamente elaborata o il parco istanze spot non viene annullato. Una request una tantum non può essere modificata e questo stato non è valido per tali richieste Spot.

  • cancelled_running - La serie di istanze spot viene annullato e non avvia istanze spot aggiuntive. Le sue Istanze spot esistenti continuano a essere eseguite finché non vengono interrotte o terminate. La richiesta rimane in questo stato finché tutte le istanze non vengono interrotte o terminate.

  • cancelled_terminating - La serie di istanze spot viene annullato e le istanze spot vengono terminate. La richiesta rimane in questo stato finché tutte le istanze non vengono terminate.

  • cancelled - La serie di istanze spot viene annullato e non ha istanze spot in esecuzione. La richiesta di parco istanze spot viene eliminata due giorni dopo che le sue istanze sono state terminate.

Controlli dell'integrità del parco istanze spot

Il parco istanze spot controlla lo stato di integrità delle istanze nel parco istanze ogni due minuti. Lo stato di un'istanza è healthy o unhealthy.

Il parco istanze spot determina lo stato di integrità un'istanza utilizzando i controlli dello stato forniti da Amazon EC2. Un'istanza viene determinata come unhealthy quando lo stato del controllo dello stato dell'istanza o del controllo dello stato del sistema è impaired per tre controlli di integrità consecutivi. Per ulteriori informazioni, consulta Verifiche dello stato delle istanze.

È possibile configurare il parco istanze per sostituire le Istanze spot non integre. Dopo avere abilitato la sostituzione del controllo di integrità, un'istanza spot viene sostituita quando viene segnalata come unhealthy. Durante la sostituzione di un'istanza spot non integra, il parco istanze può scendere al di sotto della sua capacità obiettivo.

Requisiti
  • La sostituzione del controllo dello stato è supportata solo per i Parchi istanze spot che mantengono una capacità target (parchi istanza del tipo maintain) e non per i Parchi istanze spot una tantum (ossia del tipo request).

  • La sostituzione del controllo dello stato è supportata solo per Istanze spot. Questa funzionalità non è supportata per Istanze on demand.

  • È possibile configurare il parco istanze spot per sostituire le istanze non integre solo al momento della sua creazione.

  • Gli utenti possono utilizzare la sostituzione del controllo dell'integrità solo se hanno l'autorizzazione a chiamare l'operazione ec2:DescribeInstanceStatus.

Console
Per configurare un parco istanze spot per sostituire le istanze spot non integre utilizzando la Console
  1. Seguire i passaggi per creare un parco istanze spot. Per ulteriori informazioni, consulta Creare una richiesta di parco istanze spot utilizzando parametri definiti (console).

  2. Per configurare il parco al fine di sostituire le istanze spot non integre, per Health check (Controllo integrità) scegliere Replace unhealthy instances (Sostituisci istanze non integre). Per abilitare questa opzione, è necessario innanzitutto scegliere Maintain target capacity (Mantieni capacità target).

AWS CLI
Per configurare una serie di istanze spot per sostituire le istanze spot non integre utilizzando AWS CLI
  1. Seguire i passaggi per creare un Parco istanze spot. Per ulteriori informazioni, consulta Crea una flotta Spot utilizzando il AWS CLI.

  2. Per configurare il parco in modo da sostituire le Istanze spot non integre, per ReplaceUnhealthyInstances, immettere true.

Autorizzazioni del parco istanze spot

Se gli utenti IAM creano o gestiscono una serie di istanze spot, occorre concedere loro le autorizzazioni richieste.

Se utilizzi la console Amazon EC2 per creare una serie di istanze spot, viene creato un ruolo collegato ai due servizi denominato AWSServiceRoleForEC2SpotFleet e AWSServiceRoleForEC2Spot e un ruolo denominato aws-ec2-spot-fleet-tagging-role che concede al serie di istanze spot le autorizzazioni per richiedere, avviare, terminare e assegnare tag alle risorse per tuo conto. Se utilizzi AWS CLI o un'API, devi assicurarti che questi ruoli esistano.

Utilizzare le istruzioni seguenti per concedere le autorizzazioni necessarie e creare i ruoli.

Concessione di autorizzazioni a un utente per la serie di istanze spot

Se gli utenti creano o gestiscono una serie di istanze spot, assicurati di concedere loro le autorizzazioni richieste.

Per creare una policy per la serie di istanze spot
  1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione, selezionare Policies (Policy), quindi Create policy (Crea policy).

  3. Nella pagina Crea policy scegliere JSON e sostituire il testo con il seguente.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateTags", "ec2:RequestSpotFleet", "ec2:ModifySpotFleetRequest", "ec2:CancelSpotFleetRequests", "ec2:DescribeSpotFleetRequests", "ec2:DescribeSpotFleetInstances", "ec2:DescribeSpotFleetRequestHistory" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/aws-ec2-spot-fleet-tagging-role" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:ListRoles", "iam:ListInstanceProfiles" ], "Resource": "*" } ] }

    La policy di esempio precedente concede a un utente le autorizzazioni richieste dalla maggior parte dei casi d'uso della serie di istanze spot. Per limitare l'utente a operazioni API specifiche, specificare solo tali operazioni API.

    EC2 e API IAM obbligatorie

    Le API seguenti devono essere incluse nella policy:

    • ec2:RunInstances - Obbligatorio per avviare istanze in una serie di istanze spot

    • ec2:CreateTags - Obbligatorio per applicare tag alla richiesta della serie di istanze spot, alle istanze o ai volumi

    • iam:PassRole - Obbligatorio per specificare il ruolo della serie di istanze spot

    • iam:CreateServiceLinkedRole - Obbligatorio per creare il ruolo collegato ai servizi

    • iam:ListRoles - Obbligatorio per enumerare i ruoli IAM esistenti

    • iam:ListInstanceProfiles - Obbligatorio per enumerare i profili delle istanze esistenti

    Importante

    Se specifichi un ruolo per il profilo dell'istanza IAM nella specifica di avvio o nel modello di avvio, devi concedere all'utente l'autorizzazione per passare il ruolo al servizio. A tale scopo, nella policy IAM includere "arn:aws:iam::*:role/IamInstanceProfile-role" come risorsa per l'operazione iam:PassRole. Per ulteriori informazioni, consulta Concedere a un utente le autorizzazioni per passare un ruolo a un AWS servizio nella Guida per l'utente IAM.

    API della serie di istanze spot

    Aggiungere le operazioni API del parco istanze spot seguenti alla policy, se necessario:

    • ec2:RequestSpotFleet

    • ec2:ModifySpotFleetRequest

    • ec2:CancelSpotFleetRequests

    • ec2:DescribeSpotFleetRequests

    • ec2:DescribeSpotFleetInstances

    • ec2:DescribeSpotFleetRequestHistory

    API IAM opzionali

    (Facoltativo) Per consentire a un utente di creare ruoli o profili delle istanze utilizzando la console IAM, è anche necessario aggiungere le operazioni seguenti alla policy:

    • iam:AddRoleToInstanceProfile

    • iam:AttachRolePolicy

    • iam:CreateInstanceProfile

    • iam:CreateRole

    • iam:GetRole

    • iam:ListPolicies

  4. Scegliere Review policy (Esamina policy).

  5. Nella pagina Review policy (Rivedi policy), immettere un nome policy e una descrizione, poi selezionare Create policy (Crea policy).

  6. Per fornire l'accesso, aggiungi autorizzazioni ai tuoi utenti, gruppi o ruoli:

    • Utenti e gruppi in: AWS IAM Identity Center

      Crea un set di autorizzazioni. Segui le istruzioni riportate nella pagina Create a permission set (Creazione di un set di autorizzazioni) nella Guida per l'utente di AWS IAM Identity Center .

    • Utenti gestiti in IAM tramite un provider di identità:

      Crea un ruolo per la federazione delle identità. Segui le istruzioni riportate nella pagina Creating a role for a third-party identity provider (federation) (Creazione di un ruolo per un provider di identità di terze parti [federazione]) nella Guida per l'utente di IAM.

    • Utenti IAM:

      • Crea un ruolo che l'utente possa assumere. Per istruzioni, consulta la pagina Creating a role for an IAM user (Creazione di un ruolo per un utente IAM) nella Guida per l'utente di IAM.

      • (Non consigliato) Collega una policy direttamente a un utente o aggiungi un utente a un gruppo di utenti. Segui le istruzioni riportate nella pagina Aggiunta di autorizzazioni a un utente (console) nella Guida per l'utente di IAM.

Ruolo collegato al servizio per il parco istanze spot

Amazon EC2 utilizza ruoli collegati ai servizi per le autorizzazioni di cui ha bisogno per eseguire chiamate ad altri servizi AWS per tuo conto. Un ruolo collegato al servizio è un tipo unico di ruolo IAM collegato direttamente a un AWS servizio. I ruoli collegati ai servizi forniscono un modo sicuro per delegare le autorizzazioni ai AWS servizi perché solo il servizio collegato può assumere un ruolo collegato al servizio. Per ulteriori informazioni, consulta Utilizzo di ruoli collegati a servizi nella Guida per l'utente di IAM .

Amazon EC2 utilizza il ruolo collegato al servizio denominato AWSServiceRoleForEC2SpotFleetper avviare e gestire le istanze per tuo conto.

Importante

Se specifichi un'AMI crittografata o uno snapshot Amazon EBS crittografato nella tua flotta Spot, devi concedere al AWSServiceRoleForEC2SpotFleetruolo l'autorizzazione a utilizzare la CMK in modo che Amazon EC2 possa avviare istanze per tuo conto. Per ulteriori informazioni, consulta Concessione dell'accesso alle CMK per l'uso con le AMI crittografate e gli snapshot EBS.

Autorizzazioni concesse da AWSServiceRoleForEC2SpotFleet

Amazon EC2 utilizza AWSServiceRoleForEC2SpotFleetper completare le seguenti azioni:

  • ec2:RequestSpotInstances – Richiesta di Istanze spot

  • ec2:RunInstances - Avviare istanze

  • ec2:TerminateInstances - Terminare istanze

  • ec2:DescribeImages - Descrivere le immagini Amazon Machine (AMI) per le istanze

  • ec2:DescribeInstanceStatus - Monitorare lo stato delle istanze.

  • ec2:DescribeSubnets - Descrivere le sottoreti per le istanze

  • ec2:CreateTags - Aggiungere tag alla richiesta della serie di istanze spot, alle istanze e ai volumi

  • elasticloadbalancing:RegisterInstancesWithLoadBalancer - Aggiungere le istanze specificate al load balancer specificato

  • elasticloadbalancing:RegisterTargets - Registrare le destinazioni specificate nel gruppo di destinazioni specificato

Creazione del ruolo collegato ai servizi

In gran parte dei casi, non è necessario creare manualmente un ruolo collegato ai servizi. Amazon EC2 crea il ruolo AWSServiceRoleForEC2SpotFleetcollegato ai servizi la prima volta che crei una flotta Spot utilizzando la console.

Se hai ricevuto una richiesta Spot Fleet attiva prima di ottobre 2017, quando Amazon EC2 ha iniziato a supportare questo ruolo collegato al servizio, Amazon EC2 ha creato il ruolo nel tuo account. AWSServiceRoleForEC2SpotFleet AWS Per ulteriori informazioni, consulta A new role appeared in my AWS account nella IAM User Guide.

Se utilizzi AWS CLI o un'API per creare una flotta Spot, devi prima assicurarti che questo ruolo esista.

Per creare AWSServiceRoleForEC2SpotFleet utilizzando la console
  1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione, seleziona Roles (Ruoli).

  3. Selezionare Create role (Crea ruolo).

  4. Nella pagina Seleziona un'entità attendibile, esegui le operazioni seguenti:

    1. Per Tipo di entità attendibile, scegli Servizio AWS .

    2. In Caso d'uso, per Servizio o caso d'uso, scegli EC2.

    3. Per Caso d'uso, scegli EC2 - Spot Fleet.

    4. Scegli Next (Successivo).

  5. Nella pagina Add permissions (Aggiungi autorizzazioni), scegli Next (Successivo).

  6. Nella pagina Nomina, rivedi e crea scegli Crea ruolo.

Per creare AWSServiceRoleForEC2SpotFleet utilizzando AWS CLI

Utilizza il comando create-service-linked-role come riportato di seguito.

aws iam create-service-linked-role --aws-service-name spotfleet.amazonaws.com

Se non hai più bisogno di utilizzare Spot Fleet, ti consigliamo di eliminare il AWSServiceRoleForEC2SpotFleetruolo. Dopo che questo ruolo è stato eliminato dall'account, Amazon EC2 creerà di nuovo il ruolo se viene richiesto un parco istanze spot utilizzando la console. Per ulteriori informazioni, consulta Eliminazione del ruolo collegato al servizio nella Guida per l'utente di IAM.

Concessione dell'accesso alle CMK per l'uso con le AMI crittografate e gli snapshot EBS

Se specifichi un AMI crittografato o uno snapshot Amazon EBS crittografato nella tua richiesta Spot Fleet e utilizzi una chiave gestita dal cliente per la crittografia, devi concedere al AWSServiceRoleForEC2SpotFleetruolo l'autorizzazione a utilizzare la CMK in modo che Amazon EC2 possa avviare istanze per tuo conto. Per farlo, occorre aggiungere una concessione alla chiave CMK, come mostrato nella procedura seguente.

Nel processo di assegnazione delle autorizzazioni, le concessioni rappresentano un'alternativa alle policy delle chiavi. Per ulteriori informazioni, consulta Utilizzo delle concessioni e Utilizzo delle policy delle chiavi in AWS KMS nella Guida per gli sviluppatori di AWS Key Management Service .

Per concedere al AWSServiceRoleForEC2SpotFleet ruolo le autorizzazioni per utilizzare la CMK
  • Utilizzate il comando create-grant per aggiungere una concessione alla CMK e per specificare il principale (il ruolo AWSServiceRoleForEC2SpotFleetcollegato al servizio) a cui viene concessa l'autorizzazione per eseguire le operazioni consentite dalla concessione. La CMK è specificata dal parametro key-id e dal relativo ARN. Il principale è specificato dal grantee-principal parametro e dall'ARN del ruolo collegato al AWSServiceRoleForEC2SpotFleetservizio.

    aws kms create-grant \ --region us-east-1 \ --key-id arn:aws:kms:us-east-1:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab \ --grantee-principal arn:aws:iam::111122223333:role/AWSServiceRoleForEC2SpotFleet \ --operations "Decrypt" "Encrypt" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "CreateGrant" "DescribeKey" "ReEncryptFrom" "ReEncryptTo"

Ruolo collegato ai servizi per le istanze spot

Amazon EC2 utilizza il ruolo collegato al servizio denominato AWSServiceRoleForEC2Spotper avviare e gestire le istanze Spot per tuo conto. Per ulteriori informazioni, consulta Ruolo collegato ai servizi per le richieste di istanza spot.

Ruolo IAM per l'assegnazione di tag a un parco istanze spot

Il ruolo IAM aws-ec2-spot-fleet-tagging-role concede l'autorizzazione al serie di istanze spot per assegnare tag alla richiesta, alle istanze e ai volumi della serie di istanze spot. Per ulteriori informazioni, consulta Assegnare tag a un parco istanze spot.

Importante

Se scegli di applicare tag alle istanze nel parco istanze e scegli anche di mantenere la capacità obiettivo (la richiesta della serie di istanze spot è di tipo maintain), le differenze nelle autorizzazioni impostate per l'utente e il IamFleetRole potrebbero generare un comportamento incoerente nell'assegnazione di tag alle istanze nel parco istanze. Se l'autorizzazione CreateTags IamFleetRole non include, alcune delle istanze lanciate dal parco istanze potrebbero non essere taggate. Mentre stiamo lavorando per risolvere questa incoerenza, per garantire che tutte le istanze lanciate dal parco istanze siano taggate, si consiglia di utilizzare il ruolo aws-ec2-spot-fleet-tagging-role per IamFleetRole. In alternativa, per utilizzare un ruolo esistente, collega la AmazonEC2SpotFleetTaggingRole AWS Managed Policy al ruolo esistente. In caso contrario, è necessario aggiungere manualmente l'autorizzazione CreateTags alla policy esistente.

Per creare il ruolo IAM per l'assegnazione di tag a un parco istanze spot
  1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione, seleziona Roles (Ruoli).

  3. Selezionare Create role (Crea ruolo).

  4. Nella pagina Select trusted entity (Seleziona entità attendibile) in Trusted entity type (Tipo di entità attendibile), scegli AWS service (Servizio ).

  5. In Caso d'uso, da Casi d'uso per altri AWS servizi, scegli EC2, quindi scegli EC2 - Spot Fleet Tagging.

  6. Scegli Next (Successivo).

  7. Nella pagina Add permissions (Aggiungi autorizzazioni), scegli Next (Successivo).

  8. Nella pagina Name, review, and create (Nome, revisione e creazione), per Role name (Nome ruolo) inserisci un nome per il ruolo (ad esempio aws-ec2-spot-fleet-tagging-role).

  9. Rivedi le informazioni presenti nella pagina, quindi scegli Create role (Crea ruolo).

Prevenzione del confused deputy tra servizi

Il problema confused deputy è un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire un'azione può costringere un'entità maggiormente privilegiata a eseguire l'azione. Si consiglia di utilizzare le chiavi di contesto delle condizioni globali aws:SourceArn e aws:SourceAccount nelle policy di attendibilità aws-ec2-spot-fleet-tagging-role per limitare le autorizzazioni con cui la serie di istanze spot fornisce un altro servizio alla risorsa.

Per aggiungere le chiavi aws: SourceArn e aws: SourceAccount condition alla policy di fiducia aws-ec2-spot-fleet-tagging-role
  1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione, seleziona Ruoli.

  3. Individuare la policy aws-ec2-spot-fleet-tagging-role creata in precedenza e scegliere il collegamento (non la casella di controllo).

  4. In Summary (Riepilogo), scegliere la scheda Trust relationships (Relazioni di attendibilità), quindi scegliere Edit trust policy (Modifica policy di attendibilità).

  5. Nell'istruzione JSON, aggiungere un elemento Condition contenente le proprie chiavi di contesto delle condizioni globali aws:SourceAccount e aws:SourceArn per prevenire il problema del “deputy confused”, come segue:

    "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:ec2:us-east-1:account_id:spot-fleet-request/sfr-*" }, "StringEquals": { "aws:SourceAccount": "account_id" }
    Nota

    Se si utilizzano entrambe le chiavi di contesto delle condizioni globali e il valore aws:SourceArn contiene l'ID account, il valore aws:SourceAccount e l'account nel valore aws:SourceArn devono utilizzare lo stesso ID account quando viene utilizzato nella stessa dichiarazione di policy.

    La policy di attendibilità finale sarà la seguente:

    { "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "spotfleet.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:ec2:us-east-1:account_id:spot-fleet-request/sfr-*" }, "StringEquals": { "aws:SourceAccount": "account_id" } } } }
  6. Scegli Aggiorna policy.

La tabella seguente fornisce valori potenziali affinché aws:SourceArn limiti l'ambito di aws-ec2-spot-fleet-tagging-role secondo diversi gradi di specificità.

Operazione API Servizio chiamato Ambito aws:SourceArn
RequestSpotFleet AWS STS (AssumeRole) Limita la AssumeRole funzionalità aws-ec2-spot-fleet-tagging-role spot-fleet-requests all'account specificato. arn:aws:ec2:*:123456789012:spot-fleet-request/sfr-*
RequestSpotFleet AWS STS (AssumeRole) Limita la AssumeRole capacità aws-ec2-spot-fleet-tagging-role spot-fleet-requests all'account e alla regione specificati. Questo ruolo non sarà utilizzabile in altre regioni. arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-*
RequestSpotFleet AWS STS (AssumeRole) Limita la capacità di AssumeRole in aws-ec2-spot-fleet-tagging-role alle sole operazioni che interessano il parco istanze sfr-11111111-1111-1111-1111-111111111111. Questo ruolo potrebbe non essere utilizzabile per altre serie di istanze spot. Inoltre, questo ruolo non può essere utilizzato per lanciare nuove flotte Spot tramiterequest-spot-fleet. arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-11111111-1111-1111-1111-111111111111

Creare una richiesta di parco istanze spot

Utilizzando AWS Management Console, crea rapidamente una richiesta Spot Fleet scegliendo solo l'applicazione o l'attività di cui hai bisogno e le specifiche di calcolo minime. Amazon EC2 configura un parco istanze più appropriato alle tue esigenze e segue le best practice Spot. Per ulteriori informazioni, consulta Creare rapidamente una richiesta di parco istanze spot (console). In caso contrario, puoi modificare le impostazioni predefinite che preferisci. Per ulteriori informazioni, consulta Creare una richiesta di parco istanze spot utilizzando parametri definiti (console) e Crea una flotta Spot utilizzando il AWS CLI.

Creare rapidamente una richiesta di parco istanze spot (console)

Per creare rapidamente una richiesta di parco istanze spot, segui la procedura descritta di seguito.

Per creare una richiesta di parco istanze spot utilizzando le impostazioni consigliate (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Se è la prima volta che viene utilizzato lo Spot, verrà visualizzata una pagina di benvenuto; selezionare Get started (Inizia). Altrimenti, selezionare Request Istanze spot (Richiedi Istanze spot).

  4. Sotto Launch parameters (Parametri di avvio), scegliere Manually configure launch parameters (Configura manualmente i parametri di avvio).

  5. Per AMI, scegliere un'AMI.

  6. Sotto Target capacity (Capacità di destinazione), per Total target capacity (Capacità di destinazione totale), specificare il numero di unità da richiedere. Per il tipo di unità, è possibile scegliere Instances (Istanze), vCPU oppure Memory (MiB) (Memoria (MiB)).

  7. Per Your fleet request at a glance (La tua richiesta immediata per il parco istanze), controllare la configurazione del tuo parco istanze e scegliere Launch (Avvia).

Creare una richiesta di parco istanze spot utilizzando parametri definiti (console)

È possibile creare un parco istanze spot utilizzando i parametri che si definiscono.

Per creare una richiesta di parco istanze spot utilizzando parametri definiti (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Se è la prima volta che viene utilizzato lo Spot, verrà visualizzata una pagina di benvenuto; selezionare Get started (Inizia). Altrimenti, selezionare Request Istanze spot (Richiedi Istanze spot).

  4. Per Launch parameters (Parametri di avvio), effettuare le seguenti operazioni:

    1. Per definire i parametri di avvio nella console Spot, scegliere Manually configure launch parameters (Configura manualmente i parametri di avvio).

    2. Per l'AMI, scegli una delle AMI di base fornite da AWS oppure scegli Cerca AMI per utilizzare un'AMI della nostra comunità di utenti Marketplace AWS, o di una tua.

      Nota

      Se un'AMI specificata nei parametri di avvio viene annullata o disattivata, non è possibile avviare nuove istanze dall'AMI. Per le flotte impostate per mantenere la capacità target, tale capacità non verrà mantenuta.

    3. (Facoltativo) Per Key pair name (Nome della coppia di chiavi), scegliere una coppia di chiavi esistente o crearne una nuova.

      [Coppia di chiavi esistente] Scegliere la coppia di chiavi.

      [Nuova coppia di chiavi] Scegliere Create new key pair (Crea nuova coppia di chiavi) per accedere alla pagina Key Pairs (Coppie di chiavi). Una volta terminato, tornare alla pagina Spot Requests (Richieste Spot) e aggiornare l'elenco.

    4. (Facoltativo) Espandere Additional launch parameters (Parametri di avvio aggiuntivi) ed effettuare le seguenti operazioni.

      1. (Facoltativo) Per abilitare l'ottimizzazione Amazon EBS, per EBS-optimized (Ottimizzato per EBS), scegliere Launch EBS-optimized instances (Avvia istanze ottimizzate per EBS).

      2. (Facoltativo) Per aggiungere archiviazione a livello di blocchi temporaneo per le istanze, per Instance store, scegliere Attach at launch (Collega all'avvio).

      3. (Facoltativo) Per aggiungere archiviazione, scegli Add new volume (Aggiungi nuovo volume) e specifica volumi di archivio istanza aggiuntivi o volumi Amazon EBS, a seconda del tipo di istanza.

      4. (Facoltativo) Per impostazione predefinita, per le proprie istanze è attivo il monitoraggio base. Per abilitare il monitoraggio dettagliato, per Monitoraggio, seleziona Abilita monitoraggio CloudWatch dettagliato.

      5. (Facoltativo) Per eseguire un'istanza spot dedicata, per Tenancy selezionare Dedicated - run a dedicated instance (Dedicata: esegui un'istanza dedicata).

      6. (Facoltativo) Per Security groups (Gruppi di sicurezza), scegliere uno o più gruppi di sicurezza o crearne uno nuovo.

        [Gruppo di sicurezza esistente] Scegliere uno o più gruppi di sicurezza.

        [Nuovo gruppo di sicurezza] Scegliere Create new security group (Crea nuovo gruppo di sicurezza) per accedere alla pagina Security Groups (Gruppi di sicurezza). Una volta terminato, tornare alla pagina Spot Requests (Richieste Spot) e aggiornare l'elenco.

      7. (Facoltativo) Per rendere le istanze raggiungibili da Internet, per Auto-assign IPv4 Public IP (Assegna IP pubblico IPv4 in modo automatico), scegliere Enable (Abilita).

      8. (Facoltativo) Per avviare le Istanze spot con un ruolo IAM, selezionare il ruolo per IAM instance profile (Profilo dell'istanza IAM).

      9. (Facoltativo) Per eseguire uno script di avvio, copiarlo su User data (Dati utente).

      10. (Facoltativo) Per aggiungere un tag, scegliere Create tag (Crea tag) e inserire la chiave e il valore per il tag, quindi scegliere Create (Crea). Ripetere per ogni tag.

        Per ogni tag, per assegnare alle richieste di istanze e serie di istanze spot lo stesso tag, assicurarsi che siano selezionati sia Instance (Istanza) che Fleet (parco istanze). Per assegnare tag solo alle istanze avviate dal parco istanze, deseleziona Fleet (parco istanze). Per assegnare tag solo alla richiesta della serie di istanze spot, deselezionare Instances (Istanze).

  5. Per Additional request details (Dettagli richiesta aggiuntivi), procedere come segue:

    1. Esaminare i dettagli aggiuntivi della richiesta. Per apportare modifiche, deselezionare Apply defaults (Applica impostazioni predefinite).

    2. (Facoltativo) Per IAM fleet role (Ruolo parco istanze IAM), è possibile utilizzare il ruolo predefinito o scegliere un ruolo diverso. Per utilizzare il ruolo predefinito dopo aver modificato il ruolo, scegliere Use default role (Usa ruolo predefinito).

    3. (Facoltativo) Per Maximum price (Prezzo massimo), è possibile utilizzare il prezzo massimo predefinito (il prezzo on demand) o specificare il prezzo massimo che si è disposti a pagare. Se il prezzo massimo è inferiore al prezzo Spot per i tipi di istanza che sono stati selezionati, le Istanze spot non vengono avviate.

    4. (Facoltativo) Per creare una richiesta valida soltanto per un periodo di tempo specifico, modificare Request valid from (Richiesta valida da) e Request valid until (Richiesta valida fino a).

    5. (Facoltativo) Per impostazione predefinita, interrompiamo le Istanze spot quando la richiesta della serie di istanze spot scade. Per tenerle in esecuzione dopo la scadenza della richiesta, deselezionare Terminate the instances when the request expires (Termina istanze alla scadenza della richiesta).

    6. (Facoltativo) Per registrare le proprie Istanze Spot con un load balancer, selezionare Receive traffic from one or more load balancers (Ricevi traffico da uno o più load balancer) e scegliere uno o più Classic Load Balancer o gruppi di destinazione.

  6. Per Minimum compute unit (Unità minima di elaborazione) scegliere le specifiche hardware minime (vCPU, memoria e archiviazione) necessarie per l'applicazione o l'attività, as specs (come specifiche) o as an instance type (come tipo di istanza).

    • Per as specs (come specifiche), specificare il numero richiesto di vCPU la quantità di memoria.

    • Per as an instance type (come tipo di istanza), accettare il tipo di istanza predefinito o scegliere Change instance type (Cambia tipo di istanza) per scegliere un tipo di istanza diverso.

  7. In Target capacity (Capacità target), effettuare le operazioni seguenti:

    1. Per Total target capacity (Capacità di destinazione totale), specificare il numero di unità da richiedere. Per il tipo di unità, è possibile scegliere Instances (Istanze), vCPU oppure Memory (MiB) (Memoria (MiB)). Per specificare una capacità target pari a 0 per aggiungere la capacità in un secondo momento, scegliere Maintain target capacity (Mantieni capacità target).

    2. (Facoltativo) Per Include On-Demand base capacity (Includi capacità di base on demand), specificare il numero di unità on demand da richiedere. Il numero deve essere inferiore alla Capacità obiettivo totale. Amazon EC2 calcola la differenza e la assegna alle unità Spot da richiedere.

      Importante

      Per specificare una capacità on demand facoltativa, è necessario prima scegliere un modello di avvio.

    3. (Facoltativo) Per impostazione predefinita, Amazon EC2 termina le istanze Spot quando vengono interrotte. Per mantenere la capacità target, selezionare Maintain target capacity (Mantieni capacità target). È quindi possibile specificare che Amazon EC2 interrompa, arresta o iberna le istanze Spot quando vengono interrotte. Per procedere in questo senso, selezionare l'opzione corrispondente da Interruption behavior (Comportamento di interruzione).

      Nota

      Se un'AMI specificata nei parametri di avvio viene annullata o disattivata, non è possibile avviare nuove istanze dall'AMI. Per le flotte impostate per mantenere la capacità target, tale capacità non verrà mantenuta.

    4. (Facoltativo) Per consentire alla serie di istanze spot di avviare un'istanza spot sostitutiva quando viene emessa una notifica di ribilanciamento dell'istanza per un'istanza spot esistente nel parco istanze, selezionare Capacity rebalance (Ribilanciamento capacità), quindi scegliere una strategia di sostituzione istanze. Se si sceglieLaunch before terminate (Avviare prima di terminare), specificare il ritardo (in secondi) prima che la serie di istanze spot chiuda le vecchie istanze. Per ulteriori informazioni, consulta Ribilanciamento della capacità.

    5. (Facoltativo) Per controllare l'importo che paghi all'ora per tutte le istanze spot del parco istanze, seleziona Set maximum cost for Spot Instances (Imposta il costo massimo per le istanze spot) e quindi inserisci l'importo totale massimo che sei disposto a pagare all'ora. Quando viene raggiunto l'importo totale massimo, il parco istanze spot interrompe l'avvio di istanze spot, anche se non è stata raggiunta la capacità obiettivo. Per ulteriori informazioni, consulta Controllo delle spese.

  8. In Network (Rete), procedere come segue:

    1. (Facoltativo) Per Rete, scegliere un VPC esistente o crearne uno nuovo.

      [VPC esistente] Scegliere il VPC.

      [VPC nuovo] Scegliere Create new VPC (Crea nuovo VPC) per accedere alla console Amazon VPC. Una volta terminato, tornare alla procedura guidata e aggiornare l'elenco.

    2. (Facoltativo) Per Availability Zone (Zona di disponibilità), l'impostazione predefinita è lasciare che AWS scelga le zone di disponibilità per le istanze spot o specificare una o più zone di disponibilità.

      Se si ha più di una sottorete in una zona di disponibilità, scegliere la sottorete appropriata da Subnet (Sottorete). Per aggiungere sottoreti, scegliere Create new subnet (Crea nuova sottorete) per accedere alla console Amazon VPC. Una volta terminato, tornare alla procedura guidata e aggiornare l'elenco.

  9. Per Instance type requirements (Requisiti per il tipo di istanza), puoi specificare gli attributi dell'istanza e consentire ad Amazon EC2 di identificare i tipi di istanza ottimali con questi attributi, oppure puoi specificare un elenco di istanze. Per ulteriori informazioni, consulta Selezione del tipo di istanza basata su attributi per serie di istanze spot.

    1. Se si sceglie Specify instance attributes that match your compute requirements (Specifica gli attributi di istanza che corrispondono ai requisiti di calcolo), specificare gli attributi di istanza nel modo seguente:

      1. Per vCPUs (vCPU) inserire il numero minimo e massimo desiderato di vCPU. Per non specificare alcun limite, selezionare No minimum (Nessun minimo), No maximum (Nessun massimo) o entrambe le opzioni.

      2. Per Memory (GiB) (Memoria [GiB]) inserire la quantità minima e massima di memoria desiderata. Per non specificare alcun limite, selezionare No minimum (Nessun minimo), No maximum (Nessun massimo) o entrambe le opzioni.

      3. (Facoltativo) Per Additional instance attributes (Attributi istanza aggiuntivi), facoltativamente, è possibile specificare uno o più attributi per esprimere i requisiti di calcolo in modo più dettagliato. Ogni attributo aggiuntivo aggiunge ulteriori vincoli alla tua richiesta. È possibile omettere gli attributi aggiuntivi, nel qual caso saranno utilizzati i valori di default. Per una descrizione di ogni attributo e dei relativi valori predefiniti, consulta get-spot-placement-scoresAmazon EC2 Command Line Reference.

      4. (Facoltativo) Per visualizzare i tipi di istanza con gli attributi specificati, espandere Preview matching instance types (Anteprima tipi di istanza corrispondenti). Per escludere i tipi di istanza utilizzati nella richiesta, selezionare le istanze e quindi scegliere Exclude selected instance types (Escludi tipi di istanze selezionati).

    2. Se si sceglie Manually select instance types (Seleziona manualmente i tipi di istanza), la serie di istanze spot fornisce un elenco di tipi di istanza di default. Per selezionare più tipi di istanza, scegliere Add instance types (Aggiungi tipi di istanza), selezionare i tipi di istanza da utilizzare nella tua richiesta e scegliere Select (Seleziona). Per eliminare i tipi di istanza, selezionarli e scegliere Delete (Elimina).

  10. Per Allocation strategy (Strategia di allocazione), scegliere la strategia che risponde alle proprie esigenze. Per ulteriori informazioni, consulta Strategie di allocazione per istanze spot.

  11. Per Your fleet request at a glance (La tua richiesta immediata per il parco istanze), rivedere la configurazione del parco istanze e, se necessario, apportare eventuali modifiche.

  12. (Facoltativo) Per scaricare una copia della configurazione di avvio da utilizzare con AWS CLI, scegli JSON config.

  13. Scegliere Launch (Avvia).

    Il tipo di richiesta della serie di istanze spot è fleet. Quando la richiesta viene soddisfatta, vengono aggiunte delle richieste di tipo instance, che hanno come condizione active e come stato fulfilled.

Crea una flotta Spot utilizzando il AWS CLI

Per creare una richiesta Spot Fleet utilizzando il AWS CLI
aws ec2 request-spot-fleet --spot-fleet-request-config file://config.json

Per i file di configurazione di esempio, consultare Configurazioni del parco istanze spot di esempio.

Di seguito è riportato un output di esempio:

{ "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }

Assegnare tag a un parco istanze spot

Per categorizzare e gestire le richieste del parco istanze spot, è possibile assegnarvi tag contenenti metadati personalizzati. È possibile assegnare un tag a una richiesta di parco istanze spot alla sua creazione o successivamente. È possibile assegnare tag utilizzando la console Amazon EC2 o lo strumento da riga di comando.

Quando si assegna un tag a una richiesta del parco istanze spot, alle istanze e ai volumi che vengono avviati dal parco istanze spot non vengono automaticamente applicati tag. È necessario applicare esplicitamente tag alle istanze e ai volumi avviati dal parco istanze spot. È possibile scegliere di applicare tag solo alla richiesta del parco istanze spot o solo alle istanze avviate dal parco istanze oppure solo ai volumi collegati alle istanze avviate dal parco istanze o a tutti e tre.

Nota

I tag associati ai volumi sono supportati solo per i volumi collegati a Istanze on demand. Non è possibile applicare tag ai volumi collegati a Istanze spot.

Per ulteriori informazioni sul funzionamento dei tag, consultare Tagging delle risorse Amazon EC2..

Prerequisito

Concedi all'utente l'autorizzazione per taggare le risorse. Per ulteriori informazioni, consulta Esempio: aggiunta di tag alle risorse.

Per concedere a un utente l'autorizzazione per taggare le risorse

Creare una policy IAM che include quanto segue:

  • L'operazione ec2:CreateTags. Ciò concede all'utente l'autorizzazione per creare tag.

  • L'operazione ec2:RequestSpotFleet. Ciò concede all'utente l'autorizzazione per creare una richiesta di serie di istanze spot.

  • Per Resource, è necessario specificare "*". Ciò consente agli utenti di taggare tutti i tipi di risorse.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "TagSpotFleetRequest", "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:RequestSpotFleet" ], "Resource": "*" } ] }
Importante

Attualmente non sono supportate le autorizzazioni a livello di risorse per la risorsa spot-fleet-request. Se si specifica spot-fleet-request come risorsa, si otterrà un'eccezione non autorizzata quando si tenta di taggare il parco istanze. Nell'esempio seguente viene mostrato come non impostare la policy.

{ "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:RequestSpotFleet" ], "Resource": "arn:aws:ec2:us-east-1:111122223333:spot-fleet-request/*" }

Per fornire l'accesso, aggiungi autorizzazioni ai tuoi utenti, gruppi o ruoli:

  • Utenti e gruppi in AWS IAM Identity Center:

    Crea un set di autorizzazioni. Segui le istruzioni riportate nella pagina Create a permission set (Creazione di un set di autorizzazioni) nella Guida per l'utente di AWS IAM Identity Center .

  • Utenti gestiti in IAM tramite un provider di identità:

    Crea un ruolo per la federazione delle identità. Segui le istruzioni riportate nella pagina Creating a role for a third-party identity provider (federation) (Creazione di un ruolo per un provider di identità di terze parti [federazione]) nella Guida per l'utente di IAM.

  • Utenti IAM:

    • Crea un ruolo che l'utente possa assumere. Per istruzioni, consulta la pagina Creating a role for an IAM user (Creazione di un ruolo per un utente IAM) nella Guida per l'utente di IAM.

    • (Non consigliato) Collega una policy direttamente a un utente o aggiungi un utente a un gruppo di utenti. Segui le istruzioni riportate nella pagina Aggiunta di autorizzazioni a un utente (console) nella Guida per l'utente di IAM.

Assegnare tag a un nuovo parco istanze spot

Per assegnare tag a una nuova richiesta di parco istanze spot utilizzando la console
  1. Seguire la procedura Creare una richiesta di parco istanze spot utilizzando parametri definiti (console).

  2. Per aggiungere un tag, espandere Additional configurations (Configurazioni aggiuntive), scegliere Add new tag (Aggiungi nuovo tag) e immettere la chiave e il valore per il tag. Ripetere per ogni tag.

    Per ogni tag, è possibile assegnare lo stesso tag alla richiesta del parco istanze spot e alle istanze. Per taggare entrambi, assicurarsi che siano selezionati sia i tag di istanza che i tag del parco istanze . Per assegnare tag soltanto alla richiesta del parco istanze spot, deselezionare i tag di istanza. Per taggare solo le istanze lanciate dal parco istanze, cancellare i tag del parco istanze.

  3. Completare i campi obbligatori per creare una richiesta di parco istanze spot, quindi scegliere Launch (Avvia). Per ulteriori informazioni, consulta Creare una richiesta di parco istanze spot utilizzando parametri definiti (console).

Per taggare una nuova richiesta Spot Fleet utilizzando il AWS CLI

Per assegnare tag a una richiesta di parco istanze spot al momento della creazione, impostare la configurazione della richiesta di parco istanze spot nel modo seguente:

  • Specificare i tag per la richiesta di serie di istanze spot in SpotFleetRequestConfig.

  • Per ResourceType, specificare spot-fleet-request. Indicando un altro valore, la richiesta per il parco istanze fallisce.

  • Per Tags, specificare la coppia chiave-valore. È possibile specificare più coppie chiave-valore.

Nel seguente esempio, la richiesta di parco istanze spot è taggata con due tag: Key=Environment e Value=Production, e Key=Cost-Center e Value=123.

{ "SpotFleetRequestConfig": { "AllocationStrategy": "priceCapacityOptimized", "ExcessCapacityTerminationPolicy": "default", "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-0123456789EXAMPLE", "InstanceType": "c4.large" } ], "SpotPrice": "5", "TargetCapacity": 2, "TerminateInstancesWithExpiration": true, "Type": "maintain", "ReplaceUnhealthyInstances": true, "InstanceInterruptionBehavior": "terminate", "InstancePoolsToUseCount": 1, "TagSpecifications": [ { "ResourceType": "spot-fleet-request", "Tags": [ { "Key": "Environment", "Value":"Production" }, { "Key": "Cost-Center", "Value":"123" } ] } ] } }

Applicare un tag a un nuovo parco istanze spot e alle istanze e ai volumi che avvia

Per etichettare una nuova richiesta Spot Fleet e le istanze e i volumi che avvia, utilizza il AWS CLI

Per applicare tag a una richiesta di parco istanze spot al momento della creazione e per applicare tag alle istanze e ai volumi quando vengono avviati dal parco istanze, impostare la configurazione della richiesta di parco istanze spot nel modo seguente:

Tag della richiesta di parco istanze spot:
  • Specificare i tag per la richiesta di serie di istanze spot in SpotFleetRequestConfig.

  • Per ResourceType, specificare spot-fleet-request. Indicando un altro valore, la richiesta per il parco istanze fallisce.

  • Per Tags, specificare la coppia chiave-valore. È possibile specificare più coppie chiave-valore.

Tag di istanza:
  • Specificare i tag per le istanze in LaunchSpecifications.

  • Per ResourceType, specificare instance. Indicando un altro valore, la richiesta per il parco istanze fallisce.

  • Per Tags, specificare la coppia chiave-valore. È possibile specificare più coppie chiave-valore.

    In alternativa, è possibile specificare i tag per l'istanza nel modello di avvio al quale si fa riferimento nella richiesta di parco istanze spot.

Tag associati ai volumi:
  • Specificare i tag per i volumi nel modello di avvio al quale si fa riferimento nella richiesta di parco istanze spot. Il tagging del volume in LaunchSpecifications non è supportato.

Nel seguente esempio, la richiesta di Parco istanze spot è taggata con due tag: Key=Environment e Value=Production, e Key=Cost-Center e Value=123. Le istanze avviate dal parco istanze sono taggate con un tag (che è lo stesso di uno dei tag per la richiesta di parco istanze spot): Key=Cost-Center e Value=123.

{ "SpotFleetRequestConfig": { "AllocationStrategy": "priceCapacityOptimized", "ExcessCapacityTerminationPolicy": "default", "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-0123456789EXAMPLE", "InstanceType": "c4.large", "TagSpecifications": [ { "ResourceType": "instance", "Tags": [ { "Key": "Cost-Center", "Value": "123" } ] } ] } ], "SpotPrice": "5", "TargetCapacity": 2, "TerminateInstancesWithExpiration": true, "Type": "maintain", "ReplaceUnhealthyInstances": true, "InstanceInterruptionBehavior": "terminate", "InstancePoolsToUseCount": 1, "TagSpecifications": [ { "ResourceType": "spot-fleet-request", "Tags": [ { "Key": "Environment", "Value":"Production" }, { "Key": "Cost-Center", "Value":"123" } ] } ] } }
Per etichettare le istanze lanciate da una flotta Spot utilizzando il AWS CLI

Per applicare tag alle istanze quando vengono avviate dal parco istanze, è possibile specificare i tag nel modello di avvio a cui si fa riferimento nella richiesta del parco istanze spot oppure specificare i tag nella configurazione della richiesta del parco istanze spot come segue:

  • Specificare i tag per le istanze in LaunchSpecifications.

  • Per ResourceType, specificare instance. Indicando un altro valore, la richiesta per il parco istanze fallisce.

  • Per Tags, specificare la coppia chiave-valore. È possibile specificare più coppie chiave-valore.

Nell'esempio seguente, le istanze avviate dal parco istanze sono taggate con un tag: Key=Cost-Center e Value=123.

{ "SpotFleetRequestConfig": { "AllocationStrategy": "priceCapacityOptimized", "ExcessCapacityTerminationPolicy": "default", "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-0123456789EXAMPLE", "InstanceType": "c4.large", "TagSpecifications": [ { "ResourceType": "instance", "Tags": [ { "Key": "Cost-Center", "Value": "123" } ] } ] } ], "SpotPrice": "5", "TargetCapacity": 2, "TerminateInstancesWithExpiration": true, "Type": "maintain", "ReplaceUnhealthyInstances": true, "InstanceInterruptionBehavior": "terminate", "InstancePoolsToUseCount": 1 } }
Per applicare tag ai volumi collegati alle istanze on demand avviate da una serie di istanze spot utilizzando la AWS CLI

Per applicare tag ai volumi quando vengono avviati dal parco istanze, specificare i tag nel modello di avvio a cui si fa riferimento nella richiesta del parco istanze spot.

Nota

I tag associati ai volumi sono supportati solo per i volumi collegati a Istanze on demand. Non è possibile applicare tag ai volumi collegati a Istanze spot.

Il tagging del volume in LaunchSpecifications non è supportato.

Assegnazione di tag a un parco istanze spot esistente

Per assegnare tag a una richiesta di parco istanze spot esistente utilizzando la console

Dopo aver creato una richiesta di parco istanze spot, è possibile aggiungere tag alla richiesta del parco istanze utilizzando la console.

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Seleziona la richiesta di parco istanze spot.

  4. Scegliere la scheda Tags e scegliere Create Tag (Crea tag).

Per etichettare una richiesta Spot Fleet esistente utilizzando il AWS CLI

Utilizzare il seguente comando create-tags per aggiungere un tag alle risorse esistenti. Nell'esempio seguente, la richiesta di parco istanze spot esistente è taggata con Key=purpose e Value=test.

aws ec2 create-tags \ --resources sfr-11112222-3333-4444-5555-66666EXAMPLE \ --tags Key=purpose,Value=test

Visualizzare i tag della richiesta di parco istanze spot

Per visualizzare i tag della richiesta di parco istanze spot utilizzando la console
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Selezionare la richiesta di parco istanze spot e scegliere la scheda Tags.

Per descrivere i tag della richiesta del parco istanze spot

Utilizzare il comando describe-tags per visualizzare i tag per la risorsa specificata. Nell'esempio seguente vengono descritti i tag per la richiesta di parco istanze spot specificata.

aws ec2 describe-tags \ --filters "Name=resource-id,Values=sfr-11112222-3333-4444-5555-66666EXAMPLE"
{ "Tags": [ { "Key": "Environment", "ResourceId": "sfr-11112222-3333-4444-5555-66666EXAMPLE", "ResourceType": "spot-fleet-request", "Value": "Production" }, { "Key": "Another key", "ResourceId": "sfr-11112222-3333-4444-5555-66666EXAMPLE", "ResourceType": "spot-fleet-request", "Value": "Another value" } ] }

Puoi visualizzare i tag di una richiesta di parco istanze spot anche descrivendo la richiesta di parco istanze spot.

Utilizza il describe-spot-fleet-requestscomando per visualizzare la configurazione della richiesta Spot Fleet specificata, che include tutti i tag specificati per la richiesta della flotta.

aws ec2 describe-spot-fleet-requests \ --spot-fleet-request-ids sfr-11112222-3333-4444-5555-66666EXAMPLE
{ "SpotFleetRequestConfigs": [ { "ActivityStatus": "fulfilled", "CreateTime": "2020-02-13T02:49:19.709Z", "SpotFleetRequestConfig": { "AllocationStrategy": "capacityOptimized", "OnDemandAllocationStrategy": "lowestPrice", "ExcessCapacityTerminationPolicy": "Default", "FulfilledCapacity": 2.0, "OnDemandFulfilledCapacity": 0.0, "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-0123456789EXAMPLE", "InstanceType": "c4.large" } ], "TargetCapacity": 2, "OnDemandTargetCapacity": 0, "Type": "maintain", "ReplaceUnhealthyInstances": false, "InstanceInterruptionBehavior": "terminate" }, "SpotFleetRequestId": "sfr-11112222-3333-4444-5555-66666EXAMPLE", "SpotFleetRequestState": "active", "Tags": [ { "Key": "Environment", "Value": "Production" }, { "Key": "Another key", "Value": "Another value" } ] } ] }

Descrivere il parco istanze spot

Il parco istanze spot avvia le istanze spot quando il prezzo massimo supera il prezzo Spot e la capacità è disponibile. Le Istanze spot vengono eseguite fino a quando non vengono interrotte o terminate.

Per descrivere il parco istanze spot (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Seleziona la richiesta di Parco istanze spot. Per vedere i dettagli di configurazione, scegliere Description (Descrizione).

  4. Per elencare le istanze spot per il parco istanze spot, scegliere Instances (Istanze).

  5. Per visualizzare la cronologia per il parco istanze spot, scegliere History (Cronologia).

Per descrivere il parco istanze spot (AWS CLI)

Usa il describe-spot-fleet-requestscomando per descrivere le tue richieste Spot Fleet.

aws ec2 describe-spot-fleet-requests

Utilizza il describe-spot-fleet-instancescomando per descrivere le istanze Spot per il parco istanze Spot specificato.

aws ec2 describe-spot-fleet-instances \ --spot-fleet-request-id sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE

Utilizza il comando describe-spot-fleet-request-history per descrivere la cronologia della richiesta Spot Fleet specificata.

aws ec2 describe-spot-fleet-request-history \ --spot-fleet-request-id sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \ --start-time 2015-05-18T00:00:00Z

Modificare una richiesta di parco istanze spot

È possibile modificare una richiesta di parco istanze spot attiva per completare le attività seguenti:

  • Incremento della capacità target e della porzione on demand

  • Riduzione della capacità target e della porzione on demand

Nota

Non è possibile modificare una richiesta di parco istanze spot una tantum. È possibile modificare una richiesta di parco istanze spot solo se è stata selezionata Maintain target capacity (Mantieni capacità obiettivo) quando la richiesta è stata creata.

Quando si aumenta la capacità obiettivo, il parco istanze spot avvia istanze spot aggiuntive. Quando si incrementa la porzione on demand, il parco istanze spot avvia istanze on demand aggiuntive.

Quando aumenti la capacità target, il parco istanze Spot avvia le istanze Spot aggiuntive in base alla strategia di allocazione per la sua richiesta Spot Fleet.

Quando si diminuisce la capacità obiettivo, il parco istanze spot annulla qualsiasi richiesta aperta che supera la nuova capacità obiettivo. È possibile richiedere che il parco istanze spot termini le istanze spot finché la dimensione del parco istanze non raggiunge la nuova capacità obiettivo. Se la strategia di allocazione è diversified, la serie di istanze spot termina le istanze tra i pool. In alternativa, è possibile richiedere che il parco istanze spot mantenga il parco istanze alla sua dimensione attuale, ma che non sostituisca le istanze spot che vengono interrotte o tutte le istanze che vengono terminate manualmente.

Quando un parco istanze spot termina un'istanza spot a seguito della diminuzione della capacità obiettivo, l'istanza riceve un avviso di interruzione dell'istanza spot.

Per modificare una richiesta di parco istanze spot (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Seleziona la richiesta di parco istanze spot.

  4. Scegliere Actions (Operazioni), quindi Modify target capacity (Modifica capacità target).

  5. In Modify target capacity (Modifica capacità target), effettuare le operazioni seguenti:

    1. Immettere la nuova capacità target e la porzione on demand.

    2. (Facoltativo) Se si diminuisce la capacità target ma si desidera mantenere il parco istanze alla dimensione attuale, deselezionare Terminate instances (Termina istanze).

    3. Seleziona Submit (Invia).

Per modificare una richiesta Spot Fleet utilizzando il AWS CLI

Utilizza il modify-spot-fleet-requestcomando per aggiornare la capacità target della richiesta Spot Fleet specificata.

aws ec2 modify-spot-fleet-request \ --spot-fleet-request-id sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \ --target-capacity 20

È possibile modificare il comando precedente come segue per diminuire la capacità obiettivo del parco istanze spot specificata senza di conseguenza terminare le istanze spot.

aws ec2 modify-spot-fleet-request \ --spot-fleet-request-id sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \ --target-capacity 10 \ --excess-capacity-termination-policy NoTermination

Annullare una richiesta di parco istanze spot

Se non hai più bisogno di una serie di istanze spot, puoi annullare la richiesta della serie di istanze spot. Dopo aver annullato la richiesta di un parco istanze, anche tutte le richieste di istanze spot associate al parco istanze vengono eliminate, in modo che nessuna istanza spot nuova venga avviata per tale parco.

Quando si annulla una richiesta di una serie di istanze spot, è necessario specificare se si desidera terminare tutte le relative istanze. Ciò include sia le istanze on demand che le istanze spot.

Se specifichi che le istanze devono essere terminate quando annulli la richiesta del parco istanze, quest'ultima acquisisce lo stato cancelled_terminating. Altrimenti, la richiesta del parco istanze acquisisce lo stato cancelled_running e l'esecuzione delle istanze continua finché non viene interrotta o terminata manualmente.

Restrizioni
  • Puoi eliminare fino a 100 flotte in una singola richiesta. Se si supera il numero specificato, non viene eliminato alcun parco veicoli.

Per annullare una richiesta di parco istanze spot (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, selezionare Spot Requests (Richieste Spot).

  3. Seleziona la richiesta di parco istanze spot.

  4. Scegli Operazioni e Annulla richiesta.

  5. Nella finestra di dialogo Annulla richiesta di istanze spot, esegui una delle operazioni indicate di seguito:

    1. Per terminare le istanze associate contemporaneamente all'annullamento della richiesta della serie di istanze spot, lascia selezionata la casella di controllo Termina istanze. Per annullare la richiesta della serie di istanze spot senza terminare le istanze associate, deseleziona la casella di controllo Termina istanze.

    2. Scegli Conferma.

Per annullare una richiesta Spot Fleet e terminarne le istanze utilizzando il AWS CLI

Utilizza il cancel-spot-fleet-requestscomando per annullare la richiesta Spot Fleet specificata e terminarne le istanze On-Demand e Spot.

aws ec2 cancel-spot-fleet-requests \ --spot-fleet-request-ids sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \ --terminate-instances

Output di esempio

{ "SuccessfulFleetRequests": [ { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "CurrentSpotFleetRequestState": "cancelled_terminating", "PreviousSpotFleetRequestState": "active" } ], "UnsuccessfulFleetRequests": [] }
Per annullare una richiesta di serie di istanze spot senza terminare le relative istanze utilizzando la AWS CLI

Puoi modificare il comando precedente utilizzando il parametro --no-terminate-instances per annullare la richiesta della serie di istanze spot specificata senza terminare le relative istanze on demand e le istanze spot.

aws ec2 cancel-spot-fleet-requests \ --spot-fleet-request-ids sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \ --no-terminate-instances

Output di esempio

{ "SuccessfulFleetRequests": [ { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "CurrentSpotFleetRequestState": "cancelled_running", "PreviousSpotFleetRequestState": "active" } ], "UnsuccessfulFleetRequests": [] }