Creazione di una configurazione di avvio - Amazon EC2 Auto Scaling

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à.

Creazione di una configurazione di avvio

Importante

Non puoi effettuare chiamate CreateLaunchConfiguration con nuovi tipi di istanze Amazon EC2 rilasciati dopo il 31 dicembre 2022. Inoltre, qualsiasi nuovo account creato dopo il 1° giugno 2023 non avrà la possibilità di creare nuove configurazioni di avvio tramite la console. A partire dal 1° ottobre 2024, i nuovi account non saranno in grado di creare nuove configurazioni di avvio utilizzando la console, l'API, la CLI e. CloudFormation Esegui la migrazione ai modelli di lancio per assicurarti di non dover creare nuove configurazioni di lancio ora o in futuro. Per ulteriori informazioni sulla migrazione di gruppi con dimensionamento automatico ai modelli di avvio, consulta Migra i tuoi gruppi di Auto Scaling ai modelli di avvio.

Questo argomento descrive come creare una configurazione di avvio.

Dopo aver creato una configurazione di avvio, non è possibile modificarla. È invece necessario creare una nuova configurazione di avvio.

Per associare una nuova configurazione di avvio a un gruppo Auto Scaling esistente, vedere. Modifica la configurazione di avvio per un gruppo con scalabilità automatica Per creare un nuovo gruppo Auto Scaling, vedere. Creare un gruppo con dimensionamento automatico utilizzando una configurazione di avvio

Creazione di una configurazione di avvio

Come creare una configurazione di avvio (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nella barra di navigazione in alto, seleziona la tua AWS regione.

  3. Nel pannello sinistro di navigazione in Dimensionamento automatico, scegliere Gruppi con dimensionamento automatico.

  4. Nella parte superiore della pagina, scegli Configurazioni di avvio. Quando viene richiesta la conferma, scegli Visualizza configurazioni di avvio per confermare che desideri visualizzare la pagina delle configurazioni di avvio.

  5. Scegli Create launch configuration (Crea una configurazione di avvio) e inserisci un nome per la configurazione di avvio.

  6. In Amazon machine image (AMI) scegli un'AMI. Per trovare un'AMI specifica, puoi usare find a suitable AMI (trova un'AMI adatta), annota il relativo ID e inseriscilo come criterio di ricerca.

    Come ottenere l'ID dell'AMI Amazon Linux 2:

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

    2. Nel pannello di navigazione a sinistra, in Istanze, scegli Istanze e poi Avvia istanze.

    3. Nella scheda Quick Start alla pagina Choose an Amazon Machine Image (Scegli un'Amazon Machine Image), annota l'ID dell'AMI accanto ad Amazon Linux 2 AMI (HVM) (AMI Amazon Linux 2 (HVM)).

  7. In Instance type (Tipo di istanza), scegli una configurazione hardware per le istanze.

  8. In Additional configuration (Configurazione aggiuntiva), presta particolare attenzione ai campi seguenti:

    1. (Facoltativo) In Purchasing option (Opzione di acquisto), è possibile scegliere tra: Request Spot Instances (Richiesta Istanze Spot) per richiedere Istanze Spot al prezzo Spot, limitato al prezzo on demand. Eventualmente, è possibile specificare un prezzo massimo per ora di istanza per le istanze Spot.

      Nota

      Le istanze Spot sono una scelta conveniente rispetto alle istanze on demand, se puoi scegliere con flessibilità quando eseguire le applicazioni e se è possibile interromperle. Per ulteriori informazioni, consulta Richiedi istanze spot per applicazioni flessibili e con tolleranza ai guasti.

    2. (Facoltativo) Per IAM instance profile (Profilo istanza IAM) seleziona un ruolo da associare alle istanze. Per ulteriori informazioni, consulta Ruoli IAM per le applicazioni in esecuzione sulle istanze Amazon EC2.

    3. (Facoltativo) Per il monitoraggio, scegli se consentire alle istanze di pubblicare dati metrici a intervalli di 1 minuto su CloudWatch Amazon abilitando il monitoraggio dettagliato. Vengono applicati costi aggiuntivi. Per ulteriori informazioni, consulta Configurare il monitoraggio per le istanze Auto Scaling.

    4. (Facoltativo) In Advanced details (Dettagli avanzati), User data (Dati utente), puoi specificare i dati utente per configurare un'istanza durante l'avvio o per eseguire uno script di configurazione dopo l'avvio dell'istanza.

    5. (Facoltativo) In Advanced details (Dettagli avanzati),IP address type (Tipo di indirizzo IP), scegli se assegnare un indirizzo IP pubblico alle istanze del gruppo. Se non imposti un valore, l'impostazione di default consiste nell'assegnare automaticamente le impostazioni IP pubbliche delle sottoreti in cui vengono avviate le istanze.

  9. (Facoltativo) Se non hai bisogno di spazio di archiviazione aggiuntivo in Storage (volumes) (Archiviazione (volumi)), puoi ignorare questa sezione. In caso contrario, per specificare i volumi da allegare alle istanze oltre ai volumi specificati dall'AMI, seleziona Add new volume (Aggiungi nuovo volume). Quindi scegli le opzioni desiderate e i valori associati in Devices (Dispositivi), Snapshot, Size (Dimensioni), Volume type (Tipo di volume), IOPS, Throughput (Prestazioni),Delete on termination (Elimina alla terminazione), eEncrypted (Crittografato).

  10. In Security groups (Gruppi di sicurezza), crea o seleziona il gruppo di sicurezza da associare alle istanze del gruppo. Se lasci Create new security group (Crea nuovo gruppo di sicurezza) selezionato, viene configurata una regola SSH predefinita per le istanze Amazon EC2 che eseguono Linux. Viene configurato un ruolo RDP di default per le istanze Amazon EC2 che eseguono Windows.

  11. In Key pair (login) (Coppia di chiavi (login)), scegli un'opzione in Key pair options (Opzioni di coppia di chiavi).

    Se hai già configurato una coppia di chiavi dell'istanza Amazon EC2 instance, è possibile sceglierla in questa pagina.

    Se invece non hai ancora una coppia di chiavi dell'istanza Amazon EC2, scegli Create a new key pair (Crea una nuova coppia di chiavi) e assegnale un nome riconoscibile. Scegli Download key pair (Scarica coppia di chiavi) per scaricare la coppia di chiavi sul computer.

    Importante

    Se hai bisogno di connetterti alle istanze, non scegliere Proceed without a key pair (Procedi senza una coppia di chiavi).

  12. Selezionare la casella di controllo di conferma, quindi scegliere Create launch configuration (Crea configurazione di avvio).

Per creare una configurazione di avvio da una configurazione di avvio esistente (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nella barra di navigazione in alto, seleziona la tua AWS regione.

  3. Nel pannello sinistro di navigazione in Dimensionamento automatico, scegliere Gruppi con dimensionamento automatico.

  4. Nella parte superiore della pagina, scegli Configurazioni di avvio. Quando viene richiesta la conferma, scegli Visualizza configurazioni di avvio per confermare che desideri visualizzare la pagina delle configurazioni di avvio.

  5. Seleziona la configurazione di avvio e scegli Actions (Operazioni), Copy launch configuration (Copia configurazione di avvio). Ciò imposta una nuova configurazione di avvio con le stesse opzioni dell'originale, ma con "Copy" aggiunto al nome.

  6. Nella pagina Copy Launch Configuration (Copia configurazione di avvio), modifica le opzioni di configurazione in base alle esigenze e scegli Create launch configuration (Crea configurazione di avvio).

Come creare una configurazione di avvio tramite la riga di comando

È possibile utilizzare uno dei seguenti comandi:

Configura le opzioni dei metadati dell'istanza

Amazon EC2 Auto Scaling supporta la configurazione del servizio IMDS (Instance Metadata Service) nelle configurazioni di avvio. In questo modo è possibile utilizzare le configurazioni di avvio per configurare le istanze Amazon EC2 nei gruppi Auto Scaling affinché richiedano l'Instance Metadata Service versione 2 (IMDSv2), che è un metodo orientato alla sessione per richiedere i metadati dell'istanza. Per ulteriori informazioni sui vantaggi di IMDSv2, consulta questo articolo nel blog AWS sui miglioramenti per aggiungere protezione in profondità al servizio metadati dell'istanza EC2.

È possibile configurare IMDS per supportare sia IMDSv2 che IMDSv1 (impostazione di default) che per richiedere l'utilizzo di IMDSv2. Se si utilizza lo AWS CLI o uno degli SDK per configurare IMDS, è necessario utilizzare la versione più recente di AWS CLI o l'SDK per richiedere l'uso di IMDSv2.

È possibile configurare la configurazione di avvio per i seguenti scenari:

  • Richiesta dell'uso di IMDSv2 quando richiedi i metadati dell'istanza

  • Specifica del limite di hop di risposta PUT

  • Disattivazione dell'accesso ai metadati dell'istanza

Puoi trovare maggiori dettagli sulla configurazione del servizio di metadati dell'istanza nel seguente argomento: Configurazione del servizio di metadati dell'istanza nella Amazon EC2 User Guide.

Utilizza la procedura seguente per configurare le opzioni IMDS in una configurazione di avvio. Dopo aver creato la configurazione di avvio, è possibile associarla al gruppo Auto Scaling. Se associ la configurazione di avvio a un gruppo Auto Scaling esistente, questa viene dissociata dal gruppo Auto Scaling e le istanze esistenti richiedono la sostituzione per utilizzare le opzioni IMDS specificate nella nuova configurazione di avvio. Per ulteriori informazioni, consulta Modifica la configurazione di avvio per un gruppo con scalabilità automatica.

Come configurare IMDS in una configurazione di avvio (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nella barra di navigazione in alto, seleziona la tua regione. AWS

  3. Nel pannello sinistro di navigazione in Dimensionamento automatico, scegliere Gruppi con dimensionamento automatico.

  4. Nella parte superiore della pagina, scegli Configurazioni di avvio. Quando viene richiesta la conferma, scegli Visualizza configurazioni di avvio per confermare che desideri visualizzare la pagina delle configurazioni di avvio.

  5. Scegli Create launch configuration (Crea configurazione di avvio) e crea la configurazione di avvio nel modo usuale. Includi l'ID dell'Amazon Machine Image (AMI), il tipo di istanza e, facoltativamente, una coppia di chiavi, uno o più gruppi di sicurezza e altri volumi EBS o volumi di archiviazione delle istanze aggiuntivi.

  6. Per configurare le opzioni dei metadati dell'istanza per tutte le istanze associate a questa configurazione di avvio, in Additional configuration (Configurazione aggiuntiva), Advanced details (Dettagli avanzati), effettua le seguenti operazioni:

    1. In Metadata accessible (Accesso ai metadati), scegli se abilitare o disabilitare l'accesso all'endpoint HTTP del servizio metadati dell'istanza. Per impostazione predefinita, l'endpoint HTTP è abilitato. Se scegli di disabilitare l'endpoint, l'accesso ai metadati dell'istanza viene disattivato. È possibile specificare la condizione per richiedere IMDSv2 solo quando l'endpoint HTTP è abilitato.

    2. In Metadata version (Versione dei metadati), puoi scegliere se richiedere l'utilizzo di Instance Metadata Service Version 2 (IMDSv2) quando richiedi i metadati dell'istanza. Se non specifichi un valore, l'impostazione di default è quella di supportare sia IMDSv1 che IMDSv2.

    3. In Metadata token response hop limit (Limite di hop di risposta token metadati), puoi impostare il numero consentito di hop di rete per il token dei metadati. Se non specifichi un valore, il valore di default è 1.

  7. Al termine, scegli Create launch configuration (Crea configurazione di avvio).

Come richiedere l'utilizzo di IMDSv2 in una configurazione di avvio utilizzando il parametro AWS CLI

Usa il seguente create-launch-configurationcomando con --metadata-options set toHttpTokens=required. Quando specifichi un valore per HttpTokens, devi anche impostare HttpEndpoint anche su enabled (abilitato). Poiché l'intestazione secure token è impostata su required (richiesto) per il recupero dei metadati, questo acconsente a che l'istanza richieda l'uso di IMDSv2, quando richiede i metadati dell'istanza.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc-with-imdsv2 \ --image-id ami-01e24be29428c15b2 \ --instance-type t2.micro \ ... --metadata-options "HttpEndpoint=enabled,HttpTokens=required"
Come disattivare l'accesso ai metadati dell'istanza

Utilizzate il create-launch-configurationcomando seguente per disattivare l'accesso ai metadati dell'istanza. È possibile riattivare l'accesso in un secondo momento utilizzando il modify-instance-metadata-optionscomando.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc-with-imds-disabled \ --image-id ami-01e24be29428c15b2 \ --instance-type t2.micro \ ... --metadata-options "HttpEndpoint=disabled"

Creazione di una configurazione di avvio utilizzando un'istanza EC2

Hai anche la possibilità di creare una configurazione di avvio utilizzando gli attributi di un'istanza EC2 in esecuzione.

Ci sono delle differenze tra la creazione di una configurazione di avvio da zero e la creazione di una configurazione di avvio da un'istanza EC2 esistente. Quando si crea una configurazione di avvio da zero, è necessario specificare l'ID dell'immagine, il tipo di istanza, le risorse facoltative (ad esempio i dispositivi di archiviazione) e le impostazioni facoltative (ad esempio il monitoraggio). Invece, quando crei una configurazione di avvio da un'istanza in esecuzione, Amazon EC2 Auto Scaling ricava gli attributi per la configurazione di avvio dall'istanza specificata. Gli attributi si ricavano anche dalla mappatura dei dispositivi a blocchi per l'AMI da cui l'istanza è stata avviata, ignorando altri eventuali dispositivi a blocchi aggiunti dopo l'avvio.

Quando crei una configurazione di avvio utilizzando un'istanza in esecuzione, puoi sostituire i seguenti attributi specificandoli nell'ambito della stessa richiesta: AMI, dispositivi a blocchi, coppia di chiavi, profilo dell'istanza, tipo di istanza, kernel, monitoraggio delle istanze, tenancy di posizionamento, ramdisk, gruppi di sicurezza, prezzo Spot (max), dati utente, se l'istanza dispone di un indirizzo IP pubblico associato e se l'istanza è ottimizzata per EBS.

Nota

Se l'istanza specificata dispone di proprietà che non sono attualmente supportate da configurazioni di avvio, le istanze avviate dal gruppo Auto Scaling potrebbero non essere identiche all'istanza EC2 originale.

Importante

L'AMI utilizzata per avviare l'istanza specificata deve essere tuttora esistente.

Creazione di una configurazione di avvio da un'istanza EC2 (AWS CLI)

Utilizza il seguente create-launch-configurationcomando per creare una configurazione di avvio da un'istanza utilizzando gli stessi attributi dell'istanza. I dispositivi a blocchi aggiunti dopo l'avvio vengono ignorati.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance --instance-id i-a8e09d9c

È possibile utilizzare il describe-launch-configurationscomando seguente per descrivere la configurazione di avvio e verificare che i relativi attributi corrispondano a quelli dell'istanza.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance

Di seguito è riportata una risposta di esempio.

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-05355a6c", "CreatedTime": "2014-12-29T16:14:50.382Z", "BlockDeviceMappings": [], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8422d1eb" ], "LaunchConfigurationName": "my-lc-from-instance", "KernelId": "null", "RamdiskId": null, "InstanceType": "t1.micro", "AssociatePublicIpAddress": true } ] }

Creazione una configurazione di avvio da un'istanza e sovrascrittura dei dispositivi a blocchi (AWS CLI)

Per impostazione predefinita, Amazon EC2 Auto Scaling utilizza gli attributi dell'istanza EC2 specificati per creare la configurazione di avvio. Tuttavia, i dispositivi a blocchi provengono dall'AMI utilizzata per avviare l'istanza, non dall'istanza. Per aggiungere dei dispositivi a blocchi alla configurazione di avvio, sovrascrivi la mappatura dei dispositivi a blocchi per la configurazione di avvio.

Usa il seguente create-launch-configurationcomando per creare una configurazione di avvio utilizzando un'istanza EC2 ma con una mappatura personalizzata dei dispositivi a blocchi.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance-bdm --instance-id i-a8e09d9c \ --block-device-mappings "[{\"DeviceName\":\"/dev/sda1\",\"Ebs\":{\"SnapshotId\":\"snap-3decf207\"}},{\"DeviceName\":\"/dev/sdf\",\"Ebs\":{\"SnapshotId\":\"snap-eed6ac86\"}}]"

Usa il describe-launch-configurationscomando seguente per descrivere la configurazione di avvio e verificare che utilizzi la mappatura personalizzata dei dispositivi a blocchi.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance-bdm

Il seguente esempio di risposta descrive la configurazione di avvio.

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-c49c0dac", "CreatedTime": "2015-01-07T14:51:26.065Z", "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "SnapshotId": "snap-3decf207" } }, { "DeviceName": "/dev/sdf", "Ebs": { "SnapshotId": "snap-eed6ac86" } } ], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8637d3e3" ], "LaunchConfigurationName": "my-lc-from-instance-bdm", "KernelId": null, "RamdiskId": null, "InstanceType": "t1.micro", "AssociatePublicIpAddress": true } ] }

Creazione di una configurazione di avvio e sovrascrittura del tipo di istanza (AWS CLI)

Per impostazione predefinita, Amazon EC2 Auto Scaling utilizza gli attributi dell'istanza EC2 specificati per creare la configurazione di avvio. A seconda delle tue esigenze, puoi scegliere di sovrascrivere gli attributi dall'istanza e utilizzare i valori che ti servono. Ad esempio, puoi sovrascrivere il tipo di istanza.

Utilizza il create-launch-configurationcomando seguente per creare una configurazione di avvio utilizzando un'istanza EC2 ma con un tipo di istanza diverso (ad esempiot2.medium) rispetto all'istanza (ad esempiot2.micro).

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance-changetype \ --instance-id i-a8e09d9c --instance-type t2.medium

Usa il describe-launch-configurationscomando seguente per descrivere la configurazione di avvio e verificare che il tipo di istanza sia stato sovrascritto.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance-changetype

Il seguente esempio di risposta descrive la configurazione di avvio.

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-05355a6c", "CreatedTime": "2014-12-29T16:14:50.382Z", "BlockDeviceMappings": [], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8422d1eb" ], "LaunchConfigurationName": "my-lc-from-instance-changetype", "KernelId": "null", "RamdiskId": null, "InstanceType": "t2.medium", "AssociatePublicIpAddress": true } ] }