

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

# Ambienti di calcolo per AWS Batch
<a name="compute_environments"></a>

Le code di lavoro sono mappate su uno o più ambienti di elaborazione. Gli ambienti di calcolo contengono le istanze di container Amazon ECS utilizzate per eseguire processi batch containerizzati. Un ambiente di calcolo specifico può anche essere mappato su una o più di una coda di lavoro. All'interno di una coda di lavoro, gli ambienti di calcolo associati hanno ciascuno un ordine che viene utilizzato dallo scheduler per determinare dove verranno eseguiti i lavori pronti per essere eseguiti. Se il primo ambiente di calcolo ha lo stato di `VALID` e dispone di risorse disponibili, il processo viene programmato su un'istanza di contenitore all'interno di quell'ambiente di calcolo. Se il primo ambiente di calcolo ha lo stato di `INVALID` o non è in grado di fornire una risorsa di elaborazione adeguata, lo scheduler tenta di eseguire il processo nell'ambiente di calcolo successivo.

**Topics**
+ [Ambienti di elaborazione gestiti](managed_compute_environments.md)
+ [Ambienti di elaborazione non gestiti](unmanaged_compute_environments.md)
+ [Crea un ambiente di elaborazione](create-compute-environment.md)
+ [Aggiornare un ambiente di calcolo in AWS Batch](updating-compute-environments.md)
+ [Risorsa di calcolo AMIs](compute_resource_AMIs.md)
+ [Usa i modelli di lancio di Amazon EC2 con AWS Batch](launch-templates.md)
+ [Configurazione del servizio IMDS (Instance Metadata Service)](imds-compute-environments.md)
+ [EC2 configurazioni](ec2-configurations.md)
+ [Strategie di allocazione del tipo di istanza per AWS Batch](allocation-strategies.md)
+ [Gestione della memoria delle risorse di calcolo](memory-management.md)
+ [Ambienti di elaborazione Fargate](fargate.md)
+ [Ambienti di elaborazione Amazon EKS](eks.md)

# Ambienti di elaborazione gestiti
<a name="managed_compute_environments"></a>

È possibile utilizzare un ambiente di elaborazione gestito per AWS Batch gestire la capacità e i tipi di istanze delle risorse di elaborazione all'interno dell'ambiente. Questo si basa sulle specifiche delle risorse di calcolo che definisci al momento della creazione dell'ambiente di calcolo. Puoi scegliere di utilizzare le istanze On-Demand di Amazon EC2 e le istanze Spot di Amazon EC2. In alternativa, puoi utilizzare la capacità di Fargate e Fargate Spot nel tuo ambiente di elaborazione gestito. Quando utilizzi le istanze Spot, puoi facoltativamente impostare un prezzo massimo. In questo modo, le istanze Spot vengono avviate solo quando il prezzo delle istanze Spot è inferiore a una percentuale specificata del prezzo on demand.

**Importante**  
Le istanze Fargate Spot non sono supportate su. Windows containers on AWS Fargate Una coda di lavoro verrà bloccata se un FargateWindows lavoro viene inviato a una coda di lavoro che utilizza solo ambienti di elaborazione Fargate Spot.

**Importante**  
AWS Batch crea e gestisce più AWS risorse per tuo conto e all'interno del tuo account, tra cui Amazon EC2 Launch Templates, Amazon EC2 Auto Scaling Groups, Amazon EC2 Spot Fleets e Amazon ECS Clusters. Queste risorse gestite sono configurate specificamente per garantire un funzionamento ottimale. AWS Batch La modifica manuale di queste risorse AWS Batch gestite, a meno che non sia esplicitamente indicato nella AWS Batch documentazione, può comportare comportamenti imprevisti, tra cui ambienti di `INVALID` calcolo, un comportamento di scalabilità delle istanze non ottimale, un ritardo nell'elaborazione del carico di lavoro o costi imprevisti. Queste modifiche manuali non possono essere supportate in modo deterministico dal servizio. AWS Batch Usa sempre il supporto AWS Batch APIs o la AWS Batch console per gestire i tuoi ambienti di elaborazione.  
Le modifiche manuali non supportate includono l'esecuzione di attività o servizi Amazon ECS personalizzati su cluster AWS Batch Amazon ECS gestiti o l'avvio di processi, daemon o servizi aggiuntivi direttamente su istanze gestite. AWS Batch AWS Batch assume il pieno controllo delle risorse di elaborazione in un ambiente di elaborazione gestito e può terminare le istanze, interrompere le attività o scalare il cluster in qualsiasi momento. Qualsiasi carico di lavoro eseguito al di fuori dell'invio dei AWS Batch lavori su queste risorse gestite può essere interrotto senza preavviso. L'esecuzione di AWS Batch carichi di lavoro non su cluster e istanze AWS Batch gestiti può inoltre interferire con la pianificazione dei processi e il ridimensionamento delle istanze. AWS Batch 

Gli ambienti di elaborazione gestiti avviano le istanze Amazon EC2 nel VPC e nelle sottoreti specificate, quindi le registrano in un cluster Amazon ECS. Le istanze Amazon EC2 richiedono l'accesso alla rete esterna per comunicare con l'endpoint del servizio Amazon ECS. Alcune sottoreti non forniscono alle istanze Amazon EC2 indirizzi IP pubblici. Se le tue istanze Amazon EC2 non dispongono di un indirizzo IP pubblico, devono utilizzare la traduzione degli indirizzi di rete (NAT) per ottenere questo accesso. Per ulteriori informazioni, consulta [Gateway NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) nella *Guida per l’utente di Amazon VPC*. Per ulteriori informazioni su come creare un VPC, vedere. [Crea un cloud privato virtuale](create-public-private-vpc.md)

Per impostazione predefinita, gli ambienti di elaborazione AWS Batch gestiti utilizzano una versione recente e approvata dell'AMI ottimizzata Amazon ECS per le risorse di calcolo. Tuttavia, potresti voler creare la tua AMI da utilizzare per i tuoi ambienti di elaborazione gestiti per vari motivi. Per ulteriori informazioni, consulta [Risorsa di calcolo AMIs](compute_resource_AMIs.md).

**Nota**  
AWS Batch non la aggiorna automaticamente AMIs in un ambiente di calcolo dopo la sua creazione. Ad esempio, non aggiorna il tuo ambiente AMIs di calcolo quando viene rilasciata una versione più recente dell'AMI ottimizzata per Amazon ECS. Sei responsabile della gestione del sistema operativo guest. Ciò include eventuali aggiornamenti e patch di sicurezza. Sei inoltre responsabile di qualsiasi software applicativo o utilità aggiuntivo che installi sulle risorse di elaborazione. Esistono due modi per utilizzare una nuova AMI per i tuoi AWS Batch lavori. Il metodo originale consiste nel completare questi passaggi:  
Creare un nuovo ambiente di calcolo con la nuova AMI.
Aggiungere l'ambiente di calcolo a una coda di processi esistente.
Rimuovere il precedente ambiente di calcolo dalla coda di processi.
Eliminare l'ambiente di calcolo precedente.
Nell'aprile 2022, è AWS Batch stato aggiunto un supporto avanzato per l'aggiornamento degli ambienti di elaborazione. Per ulteriori informazioni, consulta [Aggiornare un ambiente di calcolo in AWS Batch](updating-compute-environments.md). Per utilizzare l'aggiornamento avanzato degli ambienti di elaborazione per l'aggiornamento AMIs, segui queste regole:  
Non impostate il parametro service role ([https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html#Batch-CreateComputeEnvironment-request-serviceRole](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html#Batch-CreateComputeEnvironment-request-serviceRole)) o impostatelo sul ruolo collegato al **AWSServiceRoleForBatch**servizio.
Imposta il parametro allocation strategy ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-allocationStrategy](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-allocationStrategy)) su, o`BEST_FIT_PROGRESSIVE`. `SPOT_CAPACITY_OPTIMIZED` `SPOT_PRICE_CAPACITY_OPTIMIZED`
Imposta il parametro di aggiornamento all'ultima versione dell'immagine ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-updateToLatestImageVersion](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-updateToLatestImageVersion)) su`true`.
Non specificare un ID AMI in [https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-imageId](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-imageId), [https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride)(in [https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html)) o nel modello di avvio ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate)). In tal caso, AWS Batch seleziona l'AMI ottimizzata Amazon ECS più recente supportata da AWS Batch al momento dell'avvio dell'aggiornamento dell'infrastruttura. In alternativa, puoi specificare l'ID AMI nei `imageIdOverride` parametri `imageId` o o il modello di avvio identificato dalle `LaunchTemplate` proprietà. La modifica di una di queste proprietà avvia un aggiornamento dell'infrastruttura. Se l'ID AMI è specificato nel modello di avvio, non può essere sostituito specificando un ID AMI nei `imageIdOverride` parametri `imageId` o. Può essere sostituito solo specificando un modello di lancio diverso. Oppure, se la versione del modello di lancio è impostata su `$Default` o`$Latest`, impostando una nuova versione predefinita per il modello di lancio (se lo è`$Default`) o aggiungendo una nuova versione al modello di lancio (se lo è`$Latest`).
Se vengono seguite queste regole, qualsiasi aggiornamento che avvia un aggiornamento dell'infrastruttura causerà la riselezione dell'ID AMI. Se l'[https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-version](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-version)impostazione nel modello di avvio ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate)) è impostata su `$Latest` o`$Default`, la versione più recente o predefinita del modello di lancio viene valutata al momento dell'aggiornamento dell'infrastruttura, anche se non [https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate)è stata aggiornata.

## Considerazione da prendere in considerazione durante la creazione di lavori paralleli a più nodi
<a name="managed_compute_environment_singlevsmnp"></a>

AWS Batch consiglia di creare ambienti di elaborazione dedicati per l'esecuzione di job multi-node parallel (MNP) e processi non MNP. Ciò è dovuto al modo in cui viene creata la capacità di elaborazione nell'ambiente di elaborazione gestito. Quando si crea un nuovo ambiente di elaborazione gestito, se si specifica un `minvCpu` valore maggiore di zero, viene AWS Batch creato un pool di istanze da utilizzare solo con processi non MNP. Se viene inviato un processo parallelo multinodo, AWS Batch crea una nuova capacità di istanza per eseguire i processi paralleli multinodo. Nei casi in cui vi siano processi paralleli a nodo singolo e multinodo in esecuzione nello stesso ambiente di calcolo in cui è impostato un `maxvCpus` valore `minvCpus` o, se le risorse di elaborazione richieste non sono disponibili, AWS Batch aspetterà il completamento dei processi correnti prima di creare le risorse di elaborazione necessarie per eseguire i nuovi processi.

# Ambienti di elaborazione non gestiti
<a name="unmanaged_compute_environments"></a>

In un ambiente di elaborazione non gestito, è possibile gestire le proprie risorse di elaborazione. AWS Batch supporta ambienti di elaborazione non gestiti sia per Amazon ECS che per Amazon EKS, consentendoti di mantenere il controllo sulla tua infrastruttura sfruttando al contempo le funzionalità di pianificazione dei lavori di Batch.

**Nota**  
AWS Le risorse Fargate non sono supportate negli ambienti di elaborazione non gestiti.

Per gli ambienti di calcolo Amazon ECS non gestiti, devi verificare che l'AMI che usi per le tue risorse di calcolo soddisfi la specifica AMI dell'istanza di container Amazon ECS. Per ulteriori informazioni, consultare [Specifiche dell'AMI delle risorse di calcolo](batch-ami-spec.md) e [Tutorial: Creare un'AMI per risorse di calcolo](create-batch-ami.md).

Dopo aver creato l'ambiente di calcolo non gestito, utilizza l'operazione [DescribeComputeEnvironments](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeComputeEnvironments.html)API per visualizzare i dettagli dell'ambiente di calcolo. Trova il cluster Amazon ECS associato all'ambiente e poi avvia manualmente le istanze di container in quel cluster Amazon ECS.

Il AWS CLI comando seguente fornisce anche l'ARN del cluster Amazon ECS.

```
$ aws batch describe-compute-environments \
    --compute-environments unmanagedCE \
    --query "computeEnvironments[].ecsClusterArn"
```

Per maggiori informazioni, consulta [Avvio di un'istanza di container Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html) nella *Guida per gli sviluppatori di Amazon Elastic Container Service*. Quando avvii le risorse di elaborazione, specifica l'ARN del cluster Amazon ECS che le risorse registrano con i seguenti dati utente di Amazon EC2. Sostituire *ecsClusterArn* con l'ARN del cluster ottenuto con il comando precedente.

```
#!/bin/bash
echo "ECS_CLUSTER=ecsClusterArn" >> /etc/ecs/ecs.config
```

In un ambiente di calcolo Amazon EKS non gestito, gestisci i tuoi nodi Kubernetes mentre AWS Batch gestisci la pianificazione e il posizionamento dei lavori. Ti consente di controllare direttamente l'infrastruttura Kubernetes per quanto riguarda sicurezza, conformità o requisiti operativi. Sei responsabile del provisioning e della configurazione dei nodi Amazon EKS, mentre ti AWS Batch integri con il tuo cluster Amazon EKS esistente per pianificare ed eseguire i lavori.

Per ulteriori informazioni, consulta [Tutorial: Creare un ambiente di calcolo non gestito utilizzando le risorse Amazon EKS](https://docs.aws.amazon.com/batch/latest/userguide/create-compute-environment-unmanaged-eks.html).

# Crea un ambiente di elaborazione
<a name="create-compute-environment"></a>

Prima di poter eseguire i lavori AWS Batch, devi creare un ambiente di calcolo. Puoi creare un ambiente di elaborazione gestito in cui AWS Batch gestire le istanze Amazon EC2 AWS o le risorse Fargate all'interno dell'ambiente in base alle tue specifiche. In alternativa, puoi creare un ambiente di elaborazione non gestito in cui gestire la configurazione dell'istanza Amazon EC2 all'interno dell'ambiente.

**Importante**  
Le istanze Fargate Spot non sono supportate nei seguenti scenari:  
Windows containers on AWS Fargate
Una coda di lavoro verrà bloccata in questi scenari se un lavoro viene inviato a una coda di lavoro che utilizza solo ambienti di elaborazione Fargate Spot.

**Topics**
+ [Tutorial: Creare un ambiente di elaborazione gestito utilizzando le risorse Fargate](create-compute-environment-fargate.md)
+ [Tutorial: crea un ambiente di elaborazione gestito utilizzando le risorse Amazon EC2](create-compute-environment-managed-ec2.md)
+ [Tutorial: crea un ambiente di elaborazione non gestito utilizzando le risorse Amazon EC2](create-compute-environment-unmanaged-ec2.md)
+ [Tutorial: crea un ambiente di elaborazione gestito utilizzando le risorse Amazon EKS](create-compute-environment-managed-eks.md)
+ [Tutorial: crea un ambiente di elaborazione non gestito utilizzando le risorse Amazon EKS](create-compute-environment-unmanaged-eks.md)
+ [Risorsa: modello di ambiente di calcolo](compute-environment-template.md)
+ [Tabella di calcolo del tipo di istanza](instance-type-compute-table.md)

# Tutorial: Creare un ambiente di elaborazione gestito utilizzando le risorse Fargate
<a name="create-compute-environment-fargate"></a>

Completa i seguenti passaggi per creare un ambiente di elaborazione gestito utilizzando le risorse. AWS Fargate 

1. Apri la AWS Batch console all'indirizzo [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Dalla barra di navigazione, seleziona quello Regione AWS da usare.

1. Nel riquadro di navigazione, seleziona **Compute environments** (Ambienti di calcolo).

1. Scegli **Create** (Crea).

1. Configura l'ambiente di calcolo.
**Nota**  
Gli ambienti di elaborazione per i Windows containers on AWS Fargate lavori devono avere almeno una vCPU.

   1. Per la **configurazione dell'ambiente di calcolo**, scegli **Fargate**.

   1. Per **Nome**, specifica un nome univoco per il tuo ambiente di calcolo. Il nome può contenere fino a 128 caratteri di lunghezza. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (\$1).

   1. Per il **ruolo di servizio**, scegli il ruolo collegato al servizio che consente al AWS Batch servizio di effettuare chiamate alle operazioni AWS API richieste per tuo conto. Ad esempio, scegli **AWSServiceRoleForBatch**. Per ulteriori informazioni, consulta [Utilizzo di ruoli collegati ai servizi per AWS Batch](using-service-linked-roles.md).

   1. **(Facoltativo) Espandi i tag.** Per aggiungere un tag, scegli **Add tag (Aggiungi tag)**. Quindi, inserisci un nome **chiave** e un **valore** opzionale. Seleziona **Aggiungi tag**.

   1. Scegli **Pagina successiva**.

1. Nella sezione **Configurazione dell'istanza**:

   1. (Facoltativo) Per **utilizzare la capacità di Fargate Spot**, attivate Fargate Spot. Per informazioni su Fargate Spot, consulta [Using Amazon EC2](https://docs.aws.amazon.com/AmazonECS/latest/bestpracticesguide/ec2-and-fargate-spot.html) Spot e Fargate\$1spot. 

   1. Per **Maximum v CPUs**, scegli il numero massimo di v fino a CPUs cui il tuo ambiente di elaborazione può scalare, indipendentemente dalla domanda di lavoro in coda.

   1. Scegli Pagina **successiva**.

1. Configurare le reti.
**Importante**  
Le risorse di calcolo richiedono un accesso per comunicare con l'endpoint del servizio Amazon ECS. Ciò può avvenire attraverso un endpoint VPC di interfaccia o tramite risorse di calcolo con indirizzi IP pubblici.  
Per ulteriori informazioni sugli endpoint di interfaccia Amazon ECR, consulta [Endpoint VPC dell'interfaccia Amazon ECS (AWS PrivateLink)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/vpc-endpoints.html) nella *Guida per gli sviluppatori di Amazon Elastic Container Service*.  
Se non disponi di un endpoint VPC di interfaccia configurato e le risorse di calcolo non dispongono di indirizzi IP pubblici, per fornire questo accesso devono utilizzare il processo Network Address Translation (NAT). Per ulteriori informazioni, consulta [Gateway NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)nella *Guida per l'utente di Amazon VPC*. Per ulteriori informazioni, consulta [Crea un VPC](create-a-vpc.md).

   1. Per l'**ID Virtual Private Cloud (VPC)**, scegli un VPC in cui desideri avviare le tue istanze.

   1. Per le **sottoreti, scegli le sottoreti** da utilizzare. Per impostazione predefinita, sono disponibili tutte le sottoreti all'interno del VPC selezionato.
**Nota**  
AWS Batch on Fargate attualmente non supporta Local Zones. Per ulteriori informazioni, consulta [i cluster Amazon ECS in Local Zones, Wavelength Zones e nella *Amazon* Elastic Container](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster-regions-zones.html#clusters-local-zones) Service AWS Outposts Developer Guide.

   1. Per **Security groups** (Gruppi di sicurezza), scegli un gruppo di sicurezza da collegare alle tue istanze. Per impostazione predefinita, viene scelto il gruppo di sicurezza predefinito per il tuo VPC.

   1. Scegli **Pagina successiva.**

1. Per **Revisione**, consulta i passaggi di configurazione. Se devi apportare modifiche, seleziona **Edit** (Modifica). Quando hai finito, scegli **Crea ambiente di calcolo.**

# Tutorial: crea un ambiente di elaborazione gestito utilizzando le risorse Amazon EC2
<a name="create-compute-environment-managed-ec2"></a>

Completa i seguenti passaggi per creare un ambiente di calcolo gestito utilizzando le risorse Amazon Elastic Compute Cloud (Amazon EC2).

1. Apri la console all' AWS Batch indirizzo. [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

1. Dalla barra di navigazione, seleziona l'opzione Regione AWS da utilizzare.

1. Nel riquadro di navigazione, selezionare **Compute environments (Ambienti di calcolo)**.

1. Scegli **Crea ambiente** e poi Ambiente di **calcolo.**

1. Configura l'ambiente.

   1. Per la **configurazione dell'ambiente di calcolo**, scegli **Amazon Elastic Compute Cloud (Amazon EC2)**.

   1. **Per il tipo di **orchestrazione**, scegli Managed.**

   1. Per **Nome**, specifica un nome univoco per il tuo ambiente di calcolo. Il nome può contenere fino a 128 caratteri di lunghezza. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (\$1).

   1. Per il **ruolo di servizio**, scegli il ruolo collegato al servizio che consente al AWS Batch servizio di effettuare chiamate alle operazioni AWS API richieste per tuo conto. Ad esempio, scegli **AWSServiceRoleForBatch**. Per ulteriori informazioni, consulta [Utilizzo di ruoli collegati ai servizi per AWS Batch](using-service-linked-roles.md).

   1. Per **Instance role (Ruolo istanza)**, scegli se creare un nuovo profilo dell'istanza o se utilizzare un profilo dell'istanza esistente che includa le autorizzazioni IAM necessarie. Questo profilo di istanza consente alle istanze del contenitore Amazon ECS create per il tuo ambiente di calcolo di effettuare chiamate alle operazioni AWS API richieste per tuo conto. Per ulteriori informazioni, consulta [Ruolo dell'istanza Amazon ECS](instance_IAM_role.md). Se scegli di creare un nuovo profilo dell'istanza, il ruolo richiesto (`ecsInstanceRole`) viene creato per te.

   1. **(Facoltativo) Espandi i tag.** 

      1. (Facoltativo) Per i **tag EC2**, scegli **Aggiungi tag** per aggiungere un tag alle risorse che vengono lanciate nell'ambiente di calcolo. **Quindi, inserisci un nome **chiave** e un valore opzionale.** Seleziona **Aggiungi tag**. 

      1. (Facoltativo) Per **Tag**, scegli **Aggiungi tag**. Quindi, inserisci un nome **chiave** e un **valore** opzionale. Seleziona **Aggiungi tag**. 

         Per ulteriori informazioni, consulta [Tagga le tue AWS Batch risorse](using-tags.md).

   1.  Scegli **Next (Successivo)**.

1. Nella sezione **Configurazione dell'istanza**:

   1. (Facoltativo) Per **abilitare l'utilizzo delle istanze Spot**, attiva Spot. Per ulteriori informazioni, consulta [Istanze spot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html). 

   1. (Solo Spot) Per **ottenere una percentuale massima di prezzo on demand**, scegli la percentuale massima che può rappresentare il prezzo di un'istanza Spot rispetto al prezzo on demand per quel tipo di istanza prima del lancio delle istanze. Ad esempio, se il prezzo massimo è del 20%, il prezzo Spot deve essere inferiore al 20% del prezzo on demand corrente per quell'istanza EC2. Il prezzo da corrispondere sarà sempre il prezzo (di mercato) più basso, mai superiore alla percentuale massima impostata. Se lasci questo campo vuoto, il valore di default è 100% del prezzo on demand.

   1. (Solo Spot) Per il **ruolo della flotta Spot**, scegli un ruolo IAM della flotta Spot di Amazon EC2 esistente da applicare al tuo ambiente di calcolo Spot. Se non disponi già di un ruolo IAM di Amazon EC2 Spot Fleet esistente, devi prima crearne uno. Per ulteriori informazioni, consulta [Ruolo della flotta spot di Amazon EC2](spot_fleet_IAM_role.md).
**Importante**  
Per etichettare le istanze Spot al momento della creazione, il ruolo IAM della flotta Spot di Amazon EC2 deve utilizzare la più recente policy gestita da **Amazon EC2 SpotFleetTaggingRole**. La policy EC2 SpotFleetRole gestita da **Amazon** non dispone delle autorizzazioni necessarie per etichettare le istanze Spot. Per ulteriori informazioni, consultare [Istanze Spot non taggate al momento della creazione](spot-instance-no-tag.md) e [Assegnazione di tag alle risorse](tag-resources.md).

   1. Per **Minimum v CPUs**, scegli il numero minimo di v CPUs che il tuo ambiente di elaborazione mantiene, indipendentemente dalla domanda di lavoro in coda.

   1. Per **Desired v CPUs**, scegli il numero di v con CPUs cui il tuo ambiente di calcolo viene avviato. All'aumentare della domanda in coda di lavoro, AWS Batch puoi aumentare il numero desiderato di vCPU nel tuo ambiente di elaborazione e aggiungere istanze EC2, fino al massimo v. CPUs Al diminuire della domanda, AWS Batch è possibile ridurre il numero desiderato di v CPUs nell'ambiente di calcolo e rimuovere le istanze, fino al minimo v. CPUs

   1. Per **Maximum v CPUs**, scegli il numero massimo di v verso CPUs cui il tuo ambiente di elaborazione può scalare orizzontalmente, indipendentemente dalla domanda di lavoro in coda.

   1. (Facoltativo) Per **Scale down delay (minuti)**, scegli il tempo minimo (in minuti) per far funzionare le AWS Batch istanze nell'ambiente di calcolo dopo il completamento del processo.

   1. Per i **tipi di istanze consentiti**, scegli i tipi di istanza Amazon EC2 che possono essere avviati. Puoi specificare famiglie di istanze per avviare qualsiasi tipo di istanza all'interno di tali famiglie (ad esempio`c5`,`c5n`, o`p3`). In alternativa, potete specificare dimensioni specifiche all'interno di una famiglia (ad esempio`c5.8xlarge`). I tipi di istanze in metallo non rientrano nelle famiglie di istanze. Ad esempio, `c5` non include`c5.metal`. 

      AWS Batch può selezionare il tipo di istanza che fa per voi se scegliete una delle seguenti opzioni:
      + `optimal`per selezionare i tipi di istanze (dalle famiglie `c4` `m4``r4`,`c5`,`m5`, e di `r5` istanze) che corrispondono alla domanda delle vostre code di lavoro. 
      + `default_x86_64`per scegliere tipi di istanze basati su x86 (dalle famiglie di c7i istanze m6i c6ir6i,, e) che soddisfino le richieste di risorse della coda di lavoro.
      + `default_arm64`per scegliere tipi di istanze basati su x86 (dalle famiglie di c7g istanze m6g c6gr6g,, e) che soddisfino le richieste di risorse della coda di lavoro.
**Nota**  
A partire dal 01/11/2025, il comportamento di `optimal` verrà modificato per corrispondere. `default_x86_64` Durante la modifica, le famiglie di istanze potrebbero essere aggiornate a una nuova generazione. Non è necessario eseguire alcuna azione affinché l'aggiornamento avvenga. Per ulteriori informazioni sulla modifica, vedere[ Configurazione ottimale del tipo di istanza per ricevere aggiornamenti automatici sulla famiglia di istanze   A partire dall'11/01/2025, il comportamento di `optimal` verrà modificato per corrispondere. `default_x86_64` Durante la modifica, le famiglie di istanze potrebbero essere aggiornate a una nuova generazione. Non è necessario eseguire alcuna azione affinché l'aggiornamento avvenga.  AWS Batch supportava un'unica opzione in **InstanceTypes** `optimal` per soddisfare la domanda delle vostre code di lavoro. Abbiamo introdotto due nuove opzioni di tipo di istanza: e. `default_x86_64` `default_arm64` Le useremo `default_x86_64` se non effettui alcuna selezione del tipo di istanza. Queste nuove opzioni selezioneranno automaticamente tipi di istanze convenienti tra diverse famiglie e generazioni in base ai requisiti della coda di lavoro, consentendoti di far funzionare rapidamente i tuoi carichi di lavoro. Non appena sarà disponibile una capacità sufficiente per nuovi tipi di istanze in un Regione AWS, il pool predefinito corrispondente verrà aggiornato automaticamente con il nuovo tipo di istanza. L'`optimal`opzione esistente continuerà a essere supportata e non è obsoleta, in quanto sarà supportata dai pool predefiniti sottostanti per fornire istanze aggiornate in futuro. Se stai usando '`optimal`, non è necessaria alcuna azione da parte tua. Tuttavia, tieni presente che solo `ENABLED` and `VALID` Compute Environments (CEs) verrà aggiornato automaticamente con nuovi tipi di istanze. Se ne hai uno `DISABLED` o `INVALID` CEs, riceveranno aggiornamenti una volta riattivati e impostati su uno `VALID` stato.  ](optimal-default-instance-troubleshooting.md#optimal-default-instance-troubleshooting.title).
**Nota**  
La disponibilità della famiglia di istanze varia a seconda Regione AWS. Per esempio, alcuni Regione AWS potrebbero non avere famiglie di istanze di quarta generazione ma avere famiglie di istanze di quinta e sesta generazione.
Quando si utilizzano i `default_x86_64` nostri pacchetti di `default_arm64` istanze, AWS Batch seleziona le famiglie di istanze in base a un equilibrio tra economicità e prestazioni. Sebbene le istanze di nuova generazione offrano spesso un miglior rapporto prezzo/prestazioni, è AWS Batch possibile scegliere una famiglia di istanze della generazione precedente se offre la combinazione ottimale di disponibilità, costi e prestazioni per il carico di lavoro. Ad esempio, in un Regione AWS paese in cui sono disponibili sia le istanze c6i che le istanze c7i, è AWS Batch possibile selezionare le istanze c6i se offrono un miglior rapporto qualità-prezzo per le specifiche esigenze lavorative. [Per ulteriori informazioni sui tipi di istanze e sulla disponibilità, consulta Tabella di calcolo dei tipi di AWS Batch istanza. Regione AWS](instance-type-compute-table.md#instance-type-compute-table.title)
AWS Batch aggiorna periodicamente le istanze nei pacchetti predefiniti con opzioni più nuove e più convenienti. Gli aggiornamenti avvengono automaticamente senza richiedere alcuna azione da parte dell'utente. I carichi di lavoro continuano a funzionare durante gli aggiornamenti senza interruzioni. 
**Nota**  
Quando crei un ambiente di calcolo, i tipi di istanza selezionati per l'ambiente di calcolo devono condividere la stessa architettura. Ad esempio, non puoi combinare istanze x86 e ARM nello stesso ambiente di calcolo.
**Nota**  
AWS Batch verrà GPUs scalato in base alla quantità richiesta nelle code di lavoro. Per utilizzare la pianificazione tramite GPU, l'ambiente di calcolo deve includere tipi di istanze appartenenti alle famiglie`p3`,`p4`,`p5`,`p6`,`g3`, `g3s``g4`, `g5` o. `g6`

   1. Per **Allocation strategy (Strategia di allocazione)**, scegli la strategia di allocazione da utilizzare quando si selezionano i tipi di istanza dall'elenco dei tipi di istanza consentiti. **BEST\$1FIT\$1PROGRESSIVE** ****è in genere la scelta migliore per gli ambienti di calcolo EC2 On-Demand, SPOT\$1CAPACITY\$1OPTIMIZED e SPOT\$1PRICE\$1CAPACITY\$1OPTIMIZED per gli ambienti di calcolo Spot EC2.**** Per ulteriori informazioni, consulta [Strategie di allocazione del tipo di istanza per AWS Batch](allocation-strategies.md).

   1. Espandere **Additional configuration (Configurazione aggiuntiva)**.

      1. (Facoltativo) **In Placement** group, inserite il nome del gruppo di posizionamento per raggruppare le risorse nell'ambiente di calcolo.

      1. (Facoltativo) Per la **coppia di chiavi EC2**, scegli una coppia di chiavi pubblica e privata come credenziali di sicurezza quando ti connetti all'istanza. Per ulteriori informazioni sulle coppie di chiavi Amazon EC2, consulta [Coppie di chiavi Amazon EC2 e istanze](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) Linux. 

      1. (Facoltativo) Per la **configurazione EC2**, scegli i valori di **sovrascrittura del **tipo** di immagine e dell'ID immagine** per AWS Batch fornire informazioni su come selezionare Amazon Machine Images (AMIs) per le istanze nell'ambiente di calcolo. Se l'**override dell'ID immagine** non è specificato per ogni **tipo di immagine**, AWS Batch seleziona un'AMI [ottimizzata per Amazon ECS recente](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html). Se non viene specificato alcun **tipo di immagine**, l'impostazione predefinita è **Amazon Linux 2 per istanze** non GPU e non AWS Graviton. 
**Importante**  
Per utilizzare un'AMI personalizzata, scegli il tipo di immagine, quindi inserisci l'ID AMI personalizzato nella casella **Ignora ID immagine**.  
[Amazon Linux 2](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami)  
 È predefinito per tutte le famiglie di istanze AWS basate su Graviton (ad esempio,, `C6g` `M6g``R6g`, e`T4g`) e può essere utilizzato per tutti i tipi di istanze non GPU.  
[Amazon Linux 2 (GPU)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami)  
È predefinita per tutte le famiglie di istanze GPU (ad esempio `P4` e`G4`) e può essere utilizzata per tutti i tipi di istanze non basati su Graviton. AWS   
[Amazon Linux 2023](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)  
AWS Batch supporta Amazon Linux 2023.  
Amazon Linux 2023 non supporta `A1` le istanze.  
[Amazon Linux 2023 (GPU)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami)  
È predefinita per tutte le famiglie di istanze GPU (ad esempio `P4` e`G4`) e può essere utilizzata per tutti i tipi di istanze non basati su AWS Graviton.
**Nota**  
L'AMI scelta per un ambiente di elaborazione deve corrispondere all'architettura dei tipi di istanza che intendi utilizzare per quell'ambiente di elaborazione. Ad esempio, se l'ambiente di elaborazione utilizza tipi di istanza A1, l'AMI della risorsa di calcolo scelta deve supportare le istanze ARM. Amazon ECS offre versioni x86 e ARM dell'AMI Amazon Linux 2 ottimizzata per Amazon ECS. Per ulteriori informazioni, consulta l'[AMI Amazon Linux 2 ottimizzata per Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html) nella *Amazon Elastic Container Service Developer Guide*.

   1. (Opzionale) Espandi i modelli di **Launch**

      1. Per Modello di **avvio predefinito, seleziona un modello** di lancio Amazon EC2 esistente per configurare le tue risorse di calcolo. La versione predefinita del modello viene compilata automaticamente. Per ulteriori informazioni, consulta [Usa i modelli di lancio di Amazon EC2 con AWS Batch](launch-templates.md).
**Nota**  
In un modello di lancio, puoi specificare un AMI personalizzato che hai creato.

      1. (Facoltativo) Per la **versione predefinita** `$Default``$Latest`, immettete o un numero di versione specifico da utilizzare.
**Nota**  
Nota: se utilizzi una delle variabili di sostituzione (\$1Default o \$1Latest), applicheranno il numero di versione corrente predefinito o più recente al momento del salvataggio della configurazione. Se la versione predefinita o la versione più recente verranno modificate in futuro, è necessario aggiornare le informazioni, che non verranno aggiornate automaticamente.
**Importante**  
Se il parametro di versione del modello di avvio è `$Default` o`$Latest`, la versione predefinita o più recente del modello di avvio specificato viene valutata durante un aggiornamento dell'infrastruttura. Se per impostazione predefinita è selezionato un ID AMI diverso o è selezionata la versione più recente del modello di avvio, tale ID AMI viene utilizzato nell'aggiornamento. Per ulteriori informazioni, consulta [Selezione dell'AMI durante gli aggiornamenti dell'infrastruttura](infrastructure-updates.md#updating-compute-environments-ami).

      1. (Facoltativo) Per **Sostituisci modello di lancio, scegli Aggiungi modello** **di lancio sostitutivo**

         1. (Facoltativo) Per **il modello Launch**, seleziona un modello di lancio Amazon EC2 esistente da utilizzare per tipi e famiglie di istanze specifici.

         1. (Facoltativo) Per la **versione predefinita**, inserisci un numero di versione specifico da utilizzare`$Default`, oppure`$Latest`.
**Nota**  
Se si utilizza la `$Latest` variabile `$Default` o, AWS Batch applicherà le informazioni correnti al momento della creazione dell'ambiente di calcolo. Se la versione predefinita o più recente verrà modificata in futuro, è necessario aggiornare le informazioni tramite [UpdateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html)o tramite il pulsante Console di gestione AWS - AWS Batch.

         1. (Facoltativo) Per i **tipi di istanze di Target**, seleziona il tipo o la famiglia di istanza a cui desideri applicare il modello di avvio override. 
**Nota**  
Se specifichi un modello di avvio sostitutivo, sono necessari i **tipi di istanze di Target**. [Per ulteriori informazioni, consultaLaunchTemplateSpecificationOverride. targetInstanceTypes](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecificationOverride.html#Batch-Type-LaunchTemplateSpecificationOverride-targetInstanceTypes).
**Nota**  
Se il tipo o la famiglia di istanze che desideri selezionare non è presente in questo elenco, rivedi le selezioni effettuate. `Allowed instance types`

   1. Scegli **Next (Successivo)**.

1. Nella sezione **Configurazione di rete**:
**Importante**  
Le risorse di calcolo richiedono un accesso per comunicare con l'endpoint del servizio Amazon ECS. Ciò può avvenire attraverso un endpoint VPC di interfaccia o tramite risorse di calcolo con indirizzi IP pubblici.  
Per ulteriori informazioni sugli endpoint di interfaccia Amazon ECR, consulta [Endpoint VPC dell'interfaccia Amazon ECS (AWS PrivateLink)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/vpc-endpoints.html) nella *Guida per gli sviluppatori di Amazon Elastic Container Service*.  
Se non disponi di un endpoint VPC di interfaccia configurato e le risorse di calcolo non dispongono di indirizzi IP pubblici, per fornire questo accesso devono utilizzare il processo Network Address Translation (NAT). Per ulteriori informazioni, consulta [Gateway NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)nella *Guida per l'utente di Amazon VPC*. Per ulteriori informazioni, consulta [Crea un VPC](create-a-vpc.md).

   1. Per l'**ID Virtual Private Cloud (VPC)**, scegli un VPC su cui avviare le tue istanze.

   1. Per le **sottoreti, scegli le sottoreti** da utilizzare. Per impostazione predefinita, sono disponibili tutte le sottoreti all'interno del VPC selezionato.
**Nota**  
AWS Batch su Amazon EC2 supporta Local Zones. *Per ulteriori informazioni, consulta [Local Zones](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html?icmpid=docs_ec2_console#concepts-local-zones) nella *Amazon EC2 User Guide* e [i cluster Amazon ECS in Local Zones, Wavelength Zones e AWS Outposts nella Amazon Elastic Container Service Developer](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster-regions-zones.html#clusters-local-zones) Guide.*

   1. (Facoltativo) Per i **gruppi di sicurezza**, scegli un gruppo di sicurezza da collegare alle tue istanze. Per impostazione predefinita, viene scelto il gruppo di sicurezza predefinito per il tuo VPC.
**Nota**  
Nota: se utilizzi una delle variabili di sostituzione (\$1Default o \$1Latest), applicheranno il numero di versione corrente predefinito o più recente al momento del salvataggio della configurazione. Se la versione predefinita o la versione più recente verranno modificate in futuro, è necessario aggiornare le informazioni, che non verranno aggiornate automaticamente.

1. Scegli **Pagina successiva**.

1. Per **Revisione**, consulta i passaggi di configurazione. Se devi apportare modifiche, seleziona **Edit** (Modifica). Quando hai finito, scegli **Crea ambiente di calcolo.**

# Tutorial: crea un ambiente di elaborazione non gestito utilizzando le risorse Amazon EC2
<a name="create-compute-environment-unmanaged-ec2"></a>

Completa i seguenti passaggi per creare un ambiente di calcolo non gestito utilizzando le risorse Amazon Elastic Compute Cloud (Amazon EC2).

****

1. Apri la console all'indirizzo. AWS Batch [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

1. Dalla barra di navigazione, seleziona quello Regione AWS da usare.

1. Nella pagina **Ambienti di calcolo**, scegli **Crea**.

1. Configura l'ambiente.

   1. Per la **configurazione dell'ambiente di calcolo**, scegli **Amazon Elastic Compute Cloud (Amazon EC2)**.

   1. **Per il tipo di **orchestrazione**, scegli Unmanaged.**

1. Per **Nome**, specifica un nome univoco per il tuo ambiente di calcolo. Il nome può avere una lunghezza massima di 128 caratteri. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (\$1).

1. Per **Ruolo di servizio**, scegli un ruolo che consenta al AWS Batch servizio di effettuare chiamate alle operazioni AWS API richieste per tuo conto.
**Nota**  
Non puoi utilizzarlo `AWSServiceRoleForBatch` per ambienti di elaborazione non gestiti.

1. Per **Maximum v CPUs**, scegli il numero massimo di v a CPUs cui il tuo ambiente di elaborazione può scalare orizzontalmente, indipendentemente dalla domanda di lavoro in coda.

1. **(Facoltativo) Espandi i tag.** Per aggiungere un tag, scegli **Add tag (Aggiungi tag)**. Quindi, inserisci un nome **chiave** e un **valore** opzionale. Seleziona **Aggiungi tag**. Per ulteriori informazioni, consulta [Tagga le tue AWS Batch risorse](using-tags.md).

1. Scegli **Pagina successiva**.

1. Per **Revisione**, consulta i passaggi di configurazione. Se devi apportare modifiche, seleziona **Edit** (Modifica). Quando hai finito, scegli **Crea ambiente di calcolo.**

# Tutorial: crea un ambiente di elaborazione gestito utilizzando le risorse Amazon EKS
<a name="create-compute-environment-managed-eks"></a>

Completa i seguenti passaggi per creare un ambiente di elaborazione gestito utilizzando le risorse Amazon Elastic Kubernetes Service (Amazon EKS).

1. Apri la console all'indirizzo. AWS Batch [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

1. Dalla barra di navigazione, seleziona quello Regione AWS da usare.

1. Nel riquadro di navigazione, seleziona **Compute environments** (Ambienti di calcolo).

1. Scegli **Create** (Crea).

1. Per la **configurazione dell'ambiente di calcolo**, scegli **Amazon Elastic Kubernetes Service (Amazon** EKS).

1. Per **Nome**, specifica un nome univoco per il tuo ambiente di calcolo. Il nome può avere una lunghezza massima di 128 caratteri. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (\$1).

1. Per il **ruolo Instance**, scegli un profilo di istanza esistente a cui siano associate le autorizzazioni IAM richieste.
**Nota**  
Per creare un ambiente di calcolo nella AWS Batch console, scegli un profilo di istanza con le autorizzazioni `eks:ListClusters` and`eks:DescribeCluster`.

1. Per il **cluster EKS**, scegli un cluster Amazon EKS esistente.

1. Per **Namespace**, inserisci uno spazio Kubernetes dei nomi per raggruppare i AWS Batch processi nel cluster.

1. **(Facoltativo) Espandi i tag.** Scegli **Aggiungi tag**, quindi inserisci una coppia chiave-valore.

1. Scegli Pagina **successiva**.

1. (Facoltativo) Per **utilizzare le istanze Spot EC2, attiva Abilita l'utilizzo delle istanze** **Spot per utilizzare le istanze** Spot di Amazon EC2.

1. (Solo Spot) Per **ottenere una percentuale massima di prezzo on demand**, scegli la percentuale massima che può rappresentare il prezzo di un'istanza Spot rispetto al prezzo on demand per quel tipo di istanza prima del lancio delle istanze. Ad esempio, se il prezzo massimo è del 20%, il prezzo Spot deve essere inferiore al 20% del prezzo on demand corrente per quell'istanza EC2. Il prezzo da corrispondere sarà sempre il prezzo (di mercato) più basso, mai superiore alla percentuale massima impostata. Se lasci questo campo vuoto, il valore di default è 100% del prezzo on demand.

1. (Solo Spot) Per il **ruolo della flotta Spot**, scegli il ruolo IAM della flotta Spot di Amazon EC2 per l'ambiente di `SPOT` calcolo.
**Importante**  
Questo ruolo è obbligatorio se la strategia di allocazione è impostata `BEST_FIT` o non è specificata.

1. (Facoltativo) Per **Minimum v CPUs**, scegli il numero minimo di v CPUs che l'ambiente di elaborazione mantiene, indipendentemente dalla domanda di lavoro in coda.

1. (Facoltativo) Per **Maximum v CPUs**, scegli il numero massimo di v a CPUs cui l'ambiente di elaborazione può scalare orizzontalmente, indipendentemente dalla domanda di lavoro in coda.

1. (Facoltativo) Per **Scale down delay (minuti)**, scegli il tempo minimo (in minuti) per far funzionare le AWS Batch istanze nell'ambiente di calcolo una volta completate le operazioni.

1. Per i **tipi di istanze consentiti**, scegli i tipi di istanza Amazon EC2 che possono essere avviati. Puoi specificare famiglie di istanze per avviare qualsiasi tipo di istanza all'interno di tali famiglie (ad esempio`c5`,`c5n`, o`p3`). In alternativa, potete specificare dimensioni specifiche all'interno di una famiglia (ad esempio`c5.8xlarge`). I tipi di istanze in metallo non rientrano nelle famiglie di istanze. Ad esempio, `c5` non include`c5.metal`. 

   AWS Batch può selezionare il tipo di istanza che fa per te se scegli una delle seguenti opzioni:
   + `optimal`per selezionare i tipi di istanze (dalle famiglie `c4` `m4``r4`,`c5`,`m5`, e di `r5` istanze) che corrispondono alla domanda delle vostre code di lavoro. 
   + `default_x86_64`per scegliere tipi di istanze basati su x86 (dalle famiglie di c7i istanze m6i c6ir6i,, e) che soddisfino le richieste di risorse della coda di lavoro.
   + `default_arm64`per scegliere tipi di istanze basati su x86 (dalle famiglie di c7g istanze m6g c6gr6g,, e) che soddisfino le richieste di risorse della coda di lavoro.
**Nota**  
A partire dal 01/11/2025, il comportamento di `optimal` verrà modificato per corrispondere. `default_x86_64` Durante la modifica, le famiglie di istanze potrebbero essere aggiornate a una nuova generazione. Non è necessario eseguire alcuna azione affinché l'aggiornamento avvenga. Per ulteriori informazioni sulla modifica, vedere[Configurazione ottimale del tipo di istanza per ricevere aggiornamenti automatici sulla famiglia di istanze](optimal-default-instance-troubleshooting.md).
**Nota**  
La disponibilità della famiglia di istanze varia a seconda Regione AWS. Per esempio, alcuni Regione AWS potrebbero non avere famiglie di istanze di quarta generazione ma avere famiglie di istanze di quinta e sesta generazione.
Quando si utilizzano i `default_x86_64` nostri pacchetti di `default_arm64` istanze, AWS Batch seleziona le famiglie di istanze in base a un equilibrio tra economicità e prestazioni. Sebbene le istanze di nuova generazione offrano spesso un miglior rapporto prezzo/prestazioni, è AWS Batch possibile scegliere una famiglia di istanze della generazione precedente se offre la combinazione ottimale di disponibilità, costi e prestazioni per il carico di lavoro. Ad esempio, in un Regione AWS paese in cui sono disponibili sia le istanze c6i che le istanze c7i, è AWS Batch possibile selezionare le istanze c6i se offrono un miglior rapporto qualità-prezzo per le specifiche esigenze lavorative. [Per ulteriori informazioni sui tipi di istanze e sulla disponibilità, consulta Tabella di calcolo dei tipi di AWS Batch istanza. Regione AWS](instance-type-compute-table.md#instance-type-compute-table.title)
AWS Batch aggiorna periodicamente le istanze nei pacchetti predefiniti con opzioni più nuove e più convenienti. Gli aggiornamenti avvengono automaticamente senza richiedere alcuna azione da parte dell'utente. I carichi di lavoro continuano a funzionare senza interruzioni durante gli aggiornamenti 
**Nota**  
Quando crei un ambiente di calcolo, i tipi di istanza selezionati per l'ambiente di calcolo devono condividere la stessa architettura. Ad esempio, non puoi combinare istanze x86 e ARM nello stesso ambiente di calcolo.
**Nota**  
AWS Batch verrà GPUs scalato in base alla quantità richiesta nelle code di lavoro. Per utilizzare la pianificazione tramite GPU, l'ambiente di calcolo deve includere tipi di istanze appartenenti alle famiglie`p3`,`p4`,`p5`,`p6`,`g3`, `g3s``g4`, `g5` o. `g6`

1. **(Facoltativo) Espandi la configurazione aggiuntiva.**

   1. (Facoltativo) Per **Gruppo di collocamento**, inserite il nome del gruppo di posizionamento per raggruppare le risorse nell'ambiente di calcolo.

   1. **Per **Strategia di allocazione**, scegliete BEST\$1FIT\$1PROGRESSIVE.**

   1. (Facoltativo) Per la configurazione di **Amazon Machine Images (AMIs), scegli Aggiungi configurazione** **Amazon Machine Images (amis)**.

      Puoi utilizzare un'AMI Amazon Linux ottimizzata per Amazon EKS o un'AMI personalizzata.

      1. Per utilizzare un'[AMI Amazon Linux ottimizzata per Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html):

         1. Per **Tipo di immagine** scegli una delle seguenti opzioni:
            + [Amazon Linux 2](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): impostazione predefinita per tutte le famiglie di istanze AWS basate su Graviton (ad esempio, `C6g` `M6g``R6g`, e`T4g`) e può essere utilizzato per tutti i tipi di istanze non GPU.
            + [Amazon Linux 2 (accelerato)](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): predefinito per tutte le famiglie di istanze GPU (ad esempio `P4` e`G4`) e può essere utilizzato per tutti i tipi di istanze non basati su AWS Graviton.
            + [Amazon Linux 2023](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): AWS Batch supporta Amazon Linux 2023 (AL2023).
            + [Amazon Linux 2023 (accelerato)](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): famiglie di istanze GPU e può essere utilizzato per tutti i tipi di istanze non basate su AWS Graviton.

         1. [Per la **Kubernetesversione, inserisci un numero di versione**. Kubernetes](supported_kubernetes_version.md#supported_kubernetes_version.title)

      1. Per utilizzare un'AMI personalizzata:

         1. Per **Tipo di immagine** scegli il tipo di AMI su cui si basa l'AMI personalizzata:
            + [Amazon Linux 2](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): impostazione predefinita per tutte le famiglie di istanze AWS basate su Graviton (ad esempio, `C6g` `M6g``R6g`, e`T4g`) e può essere utilizzato per tutti i tipi di istanze non GPU.
            + [Amazon Linux 2 (accelerato)](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): predefinito per tutte le famiglie di istanze GPU (ad esempio `P4` e`G4`) e può essere utilizzato per tutti i tipi di istanze non basati su AWS Graviton.
            + [Amazon Linux 2023](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): AWS Batch supporta AL2023.
            + [Amazon Linux 2023 (accelerato)](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html): famiglie di istanze GPU e può essere utilizzato per tutti i tipi di istanze non basate su AWS Graviton.

         1. Per **Image ID override**, inserisci l'ID AMI personalizzato.

         1. Per la **Kubernetesversione**, inserisci un [numero di Kubernetes versione](supported_kubernetes_version.md#supported_kubernetes_version.title).

   1. (Facoltativo) Per **il modello di lancio**, scegli un [modello di lancio](eks-launch-templates.md#eks-launch-templates.title) esistente.

   1. (Facoltativo) Per la **versione del modello Launch** **\$1Default****\$1Latest**, inserisci o un numero di versione.

   1. (Facoltativo) Per **Sostituisci modello di lancio**, per aggiungere un override scegli **Aggiungi** sostituisci modello di lancio:

      1. (Facoltativo) Per **Launch template**, scegli il modello di lancio a cui aggiungere l'override.

      1. (Facoltativo) Per la **versione del modello di lancio**, `$Default` scegli il numero di versione del modello di lancio oppure`$Latest`.

      1. (Facoltativo) Per i **tipi di istanze Target**, scegli il tipo o la famiglia di istanze a cui applicare l'override. Questo può riguardare solo i tipi e le famiglie di istanze inclusi nei tipi di **istanze consentiti**.

      1. (Facoltativo) Per **UserDataType** scegliete l'inizializzazione del nodo EKS. Utilizza questo campo solo se hai un AMI specificato nel Launch Template o come Launch Template Override. **Scegliete **EKS\$1NODEADM** per personalizzazione in AMIs base a or oppure EKS\$1BOOSTRAP\$1SH per and`EKS_AL2023`. `EKS_AL2023_NVIDIA`** `EKS_AL2` `EKS_AL_NVIDIA` Il valore predefinito è **EKS\$1BOOSTRAP\$1SH**.

         **UserDataType** può essere utilizzato in un [ambiente misto in cui vengono utilizzati entrambi e basati su funzionalità personalizzate nello stesso ambiente](mixed-ami-environments.md#mixed-ami-environments.title) di elaborazione. AL2 AL2023 AMIs 

1. **Scegli Pagina successiva.**

1. Per l'**ID Virtual Private Cloud (VPC)**, scegli un VPC in cui avviare le istanze.

1. Per le **sottoreti, scegli le sottoreti** da utilizzare. Per impostazione predefinita, sono disponibili tutte le sottoreti all'interno del VPC selezionato.
**Nota**  
AWS Batch su Amazon EKS supporta Local Zones. Per ulteriori informazioni, consulta [Amazon EKS and AWS Local Zones](https://docs.aws.amazon.com/eks/latest/userguide/local-zones.html) nella *Amazon EKS User Guide*.

1. (Facoltativo) Per **i gruppi di sicurezza**, scegli un gruppo di sicurezza da collegare alle tue istanze. Per impostazione predefinita, è selezionato il gruppo di sicurezza predefinito per il tuo VPC.

1. Scegli **Pagina successiva.**

1. Per **Revisione**, consulta i passaggi di configurazione. Se devi apportare modifiche, seleziona **Edit** (Modifica). Quando hai finito, scegli **Crea ambiente di calcolo.**

# Tutorial: crea un ambiente di elaborazione non gestito utilizzando le risorse Amazon EKS
<a name="create-compute-environment-unmanaged-eks"></a>

Completa i seguenti passaggi per creare un ambiente di calcolo non gestito utilizzando le risorse Amazon Elastic Kubernetes Service (Amazon EKS).

1. Apri la console all'indirizzo. AWS Batch [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

1. Dalla barra di navigazione nella parte superiore della pagina, seleziona l'opzione Regione AWS da utilizzare.

1. Nel riquadro di navigazione, seleziona **Compute environments** (Ambienti di calcolo).

1. Scegli **Create** (Crea).

1. Configura l'ambiente.

   1. Per la **configurazione dell'ambiente di calcolo**, scegli **Amazon Elastic Kubernetes Service (Amazon** EKS).

   1. **Per il tipo di **orchestrazione**, scegli Unmanaged.**

1. Per **Nome**, specifica un nome univoco per il tuo ambiente di calcolo. Il nome può avere una lunghezza massima di 128 caratteri. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (\$1).

1. Per il **cluster EKS**, scegli un cluster Amazon EKS esistente. Per creare un nuovo cluster EKS, segui i passaggi nella [pagina Crea un cluster Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/create-cluster.html).

1. Per **Namespace**, inserisci uno spazio Kubernetes dei nomi per raggruppare i AWS Batch processi nel cluster.

1. (Facoltativo) Per **Maximum v CPUs**, specificate il numero massimo di v CPUs disponibili per la pianificazione dei lavori in base alla capacità assegnata.

1. **(Facoltativo) Espandi i tag.** Scegli **Aggiungi tag**, quindi inserisci una coppia chiave-valore.

1. Scegli Pagina **successiva**.

1. Per **Revisione**, consulta i passaggi di configurazione. Se devi apportare modifiche, seleziona **Edit** (Modifica). Quando hai finito, scegli **Crea ambiente di calcolo.**

**Assegnazione dei nodi del cluster Amazon EKS a un ambiente di elaborazione non gestito**  
Dopo aver creato l'ambiente di calcolo non gestito, devi etichettare i nodi Amazon EKS con l'UUID dell'ambiente di calcolo.  
Innanzitutto, ottieni l'UUID dell'ambiente di calcolo dal risultato dell'API: `DescribeComputeEnvironments`  

```
$ aws batch describe-compute-environments \
    --compute-environments unmanagedEksCE \
    --query "computeEnvironments[].{name: computeEnvironmentName, uuid: uuid}"
```
Ottieni le informazioni sul nodo:  

```
kubectl get nodes -o name
```
Etichetta i nodi con l'UUID dell'ambiente di AWS Batch calcolo:  

```
kubectl label <node-name> batch.amazonaws.com/compute-environment-uuid=uuid
```

# Risorsa: modello di ambiente di calcolo
<a name="compute-environment-template"></a>

L'esempio seguente mostra un modello di ambiente di calcolo vuoto. È possibile utilizzare questo modello per creare l'ambiente di calcolo che può quindi essere salvato in un file e utilizzato con l' AWS CLI `--cli-input-json`opzione. Per ulteriori informazioni su questi parametri, consulta [CreateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html)l'*AWS Batch API Reference.*

**Nota**  
È possibile generare un modello di ambiente di calcolo con il seguente AWS CLI comando.  

```
$ aws batch create-compute-environment --generate-cli-skeleton
```

```
{
    "computeEnvironmentName": "",
    "type": "UNMANAGED",
    "state": "DISABLED",
    "unmanagedvCpus": 0,
    "computeResources": {
        "type": "EC2",
        "allocationStrategy": "BEST_FIT_PROGRESSIVE",
        "minvCpus": 0,
        "maxvCpus": 0,
        "desiredvCpus": 0,
        "instanceTypes": [
            ""
        ],
        "imageId": "",
        "subnets": [
            ""
        ],
        "securityGroupIds": [
            ""
        ],
        "ec2KeyPair": "",
        "instanceRole": "",
        "tags": {
            "KeyName": ""
        },
        "placementGroup": "",
        "bidPercentage": 0,
        "spotIamFleetRole": "",
        "launchTemplate": {
            "launchTemplateId": "",
            "launchTemplateName": "",
            "version": ""
        },
        "ec2Configuration": [
            {
                "imageType": "",
                "imageIdOverride": "",
                "imageKubernetesVersion": ""
            }
        ]
    },
    "serviceRole": "",
    "tags": {
        "KeyName": ""
    },
    "eksConfiguration": {
        "eksClusterArn": "",
        "kubernetesNamespace": ""
    }
}
```

# Tabella di calcolo del tipo di istanza
<a name="instance-type-compute-table"></a>

La tabella seguente elenca la Regione AWS parola chiave della famiglia di istanze e le famiglie di istanze disponibili. AWS Batch cercherà di allocare un'istanza della famiglia di istanze più recente, ma poiché la disponibilità della famiglia di istanze varia a seconda dell'istanza, Regione AWS è possibile che venga generata una famiglia di istanze precedente. 


**default\$1x86\$164**  

| Region | Famiglie di istanze | 
| --- | --- | 
| Tutto questo è supporto Regione AWS[AWS Batch](https://docs.aws.amazon.com/general/latest/gr/batch.html) |  m6i, c6i, r6i c7i  | 


**default\$1arm64**  

| Region | Famiglie di istanze | 
| --- | --- | 
| Tutto questo è supporto Regione AWS[AWS Batch](https://docs.aws.amazon.com/general/latest/gr/batch.html) |  6 mg, 6 g, 6 g 7 g  | 


**Ottimale**  

| Region | Famiglie di istanze | 
| --- | --- | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/batch/latest/userguide/instance-type-compute-table.html) | m4, c4, r4 | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/batch/latest/userguide/instance-type-compute-table.html) | m5, 5c, 5r | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/batch/latest/userguide/instance-type-compute-table.html) | m6, c6, r6 | 

# Aggiornare un ambiente di calcolo in AWS Batch
<a name="updating-compute-environments"></a>

AWS Batch offre diverse strategie per l'aggiornamento degli ambienti di elaborazione, ognuna progettata per scenari e requisiti di aggiornamento specifici. Questi approcci utilizzano la stessa API di aggiornamento sottostante ma rappresentano metodi prescrittivi diversi per gestire gli aggiornamenti in modo efficace. È possibile gestire questi aggiornamenti utilizzando la AWS Batch console o il. AWS CLI La comprensione di queste strategie consente di scegliere il metodo più appropriato per le proprie esigenze, riducendo al minimo le interruzioni dei carichi di lavoro.

Questo argomento fornisce una panoramica delle strategie di aggiornamento disponibili e indicazioni su quando utilizzare ciascun approccio. Per le procedure dettagliate, consulta le singole sezioni relative a ciascuna strategia di aggiornamento.

**Importante**  
AWS Batch crea e gestisce più AWS risorse per tuo conto e all'interno del tuo account, tra cui Amazon EC2 Launch Templates, Amazon EC2 Auto Scaling Groups, Amazon EC2 Spot Fleets e Amazon ECS Clusters. Queste risorse gestite sono configurate specificamente per garantire un funzionamento ottimale. AWS Batch La modifica manuale di queste risorse AWS Batch gestite, a meno che non sia esplicitamente indicato nella AWS Batch documentazione, può comportare comportamenti imprevisti, tra cui ambienti di `INVALID` calcolo, un comportamento di scalabilità delle istanze non ottimale, un ritardo nell'elaborazione del carico di lavoro o costi imprevisti. Queste modifiche manuali non possono essere supportate in modo deterministico dal servizio. AWS Batch Usa sempre il supporto AWS Batch APIs o la AWS Batch console per gestire i tuoi ambienti di elaborazione.  
Le modifiche manuali non supportate includono l'esecuzione di attività o servizi Amazon ECS personalizzati su cluster AWS Batch Amazon ECS gestiti o l'avvio di processi, daemon o servizi aggiuntivi direttamente su istanze gestite. AWS Batch AWS Batch assume il pieno controllo delle risorse di elaborazione in un ambiente di elaborazione gestito e può terminare le istanze, interrompere le attività o scalare il cluster in qualsiasi momento. Qualsiasi carico di lavoro eseguito al di fuori dell'invio dei AWS Batch lavori su queste risorse gestite può essere interrotto senza preavviso. L'esecuzione di AWS Batch carichi di lavoro non su cluster e istanze AWS Batch gestiti può inoltre interferire con la pianificazione dei processi e il ridimensionamento delle istanze. AWS Batch 

**Topics**
+ [Strategie di aggiornamento dell'ambiente di calcolo](#update-strategies)
+ [Scelta della giusta strategia di aggiornamento](#choosing-update-strategies)
+ [Considerazioni sull'aggiornamento delle AMI](#ami-update-considerations)
+ [Esegui aggiornamenti di scalabilità](scaling-updates.md)
+ [Esegui aggiornamenti dell'infrastruttura](infrastructure-updates.md)
+ [Esegui blue/green aggiornamenti per gli ambienti di elaborazione](blue-green-updates.md)

## Strategie di aggiornamento dell'ambiente di calcolo
<a name="update-strategies"></a>

Quando utilizzi la scalabilità o gli aggiornamenti dell'infrastruttura, il tuo ambiente di elaborazione viene aggiornato sul posto. Per la strategia di blue/green aggiornamento, stai creando un nuovo ambiente di calcolo (verde) e quindi migrando il carico di lavoro dal vecchio ambiente di calcolo (blu) al nuovo ambiente di calcolo (verde).

AWS Batch offre tre diverse strategie per gli aggiornamenti dell'ambiente di calcolo:

Aggiornamenti di scalabilità  
Gli aggiornamenti di scalabilità regolano la capacità dell'ambiente di calcolo aggiungendo o rimuovendo istanze senza sostituire le istanze esistenti. Questo è lo scenario di aggiornamento più rapido e non richiede tempi di inattività. Utilizza gli aggiornamenti di scalabilità quando devi modificare le impostazioni di capacità (vCPUs). Questi aggiornamenti in genere vengono completati in pochi minuti.  
Gli aggiornamenti Fargate vengono eseguiti utilizzando le stesse procedure degli aggiornamenti in scala. Per ulteriori informazioni, consulta [Esegui aggiornamenti di scalabilità](scaling-updates.md).

Aggiornamenti dell'infrastruttura  
Gli aggiornamenti dell'infrastruttura sostituiscono le istanze nell'ambiente di elaborazione con nuove istanze con impostazioni aggiornate. Questi aggiornamenti richiedono configurazioni specifiche del ruolo di servizio e della strategia di allocazione, ma garantiscono tempi di inattività minimi, con processi in esecuzione potenzialmente interrotti. Utilizza gli aggiornamenti dell'infrastruttura quando devi modificare i tipi di istanza, la configurazione AMI, le impostazioni di rete, il ruolo del servizio, lo stato dell'ambiente o altri componenti dell'infrastruttura. Questi aggiornamenti vengono generalmente completati in 10-30 minuti a seconda del completamento del processo.  
Per ulteriori informazioni, consulta [Esegui aggiornamenti dell'infrastruttura](infrastructure-updates.md).

Aggiornamenti blu/verdi  
Blue/green updates create a new compute environment alongside your existing environment, allowing gradual workload transition with zero downtime. This approach provides the safest update path but requires running two environments temporarily. Use blue/greenaggiornamenti quando non sono necessari tempi di inattività, si desidera testare le modifiche prima della distribuzione completa, si richiede una funzionalità di rollback rapido o si utilizzano configurazioni non supportate per gli aggiornamenti dell'infrastruttura. Il tempo di completamento è variabile e controllato dall'utente.  
Per ulteriori informazioni, consulta [Esegui blue/green aggiornamenti per gli ambienti di elaborazione](blue-green-updates.md).

## Scelta della giusta strategia di aggiornamento
<a name="choosing-update-strategies"></a>

Utilizzate questa guida decisionale per selezionare la strategia di aggiornamento più adatta alle vostre esigenze:

### Scegli la scalabilità degli aggiornamenti quando
<a name="scaling-updates-when"></a>

Scegli la strategia di aggiornamento della scalabilità quando devi solo regolare la capacità di elaborazione (v). CPUs Gli aggiornamenti di scalabilità sono ideali quando sono necessari aggiornamenti rapidi senza tempi di inattività e non sono necessarie modifiche alla configurazione dell'infrastruttura.

Per le procedure dettagliate, consulta [Esegui aggiornamenti di scalabilità](scaling-updates.md).

### Scegli gli aggiornamenti dell'infrastruttura quando
<a name="infrastructure-updates-when"></a>

Scegli la strategia di aggiornamento dell'infrastruttura quando devi modificare i tipi di istanza, le impostazioni AMI, il ruolo del servizio, lo stato dell'ambiente o la configurazione di rete. L'ambiente deve utilizzare il ruolo *AWSServiceRoleForBatch*collegato al servizio e una strategia di allocazione di`BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED` o. `SPOT_PRICE_CAPACITY_OPTIMIZED` Gli aggiornamenti dell'infrastruttura funzionano bene quando alcune interruzioni del lavoro sono accettabili durante l'aggiornamento e desideri aggiornamenti automatici all'ultima AMI ottimizzata per Amazon ECS.

Per le procedure dettagliate, consulta [Esegui aggiornamenti dell'infrastruttura](infrastructure-updates.md).

### Scegli gli aggiornamenti quando blue/green
<a name="blue-green-updates-when"></a>

Scegli la strategia di blue/green aggiornamento quando non sono necessari tempi di inattività per i tuoi carichi di lavoro o devi testare le modifiche prima di passare ai carichi di lavoro di produzione. Questo approccio è essenziale quando è importante una capacità di rollback rapido, l'ambiente utilizza una strategia di `BEST_FIT` allocazione o non utilizza il ruolo collegato al servizio. *AWSServiceRoleForBatch* Blue/green gli aggiornamenti sono anche la scelta migliore quando utilizzi soluzioni personalizzate AMIs che richiedono aggiornamenti manuali o richiedono modifiche importanti alla configurazione.

Per le procedure dettagliate, consulta [Esegui blue/green aggiornamenti per gli ambienti di elaborazione](blue-green-updates.md).

## Considerazioni sull'aggiornamento delle AMI
<a name="ami-update-considerations"></a>

L'approccio per l'aggiornamento AMIs dipende dalla configurazione dell'ambiente di calcolo.

### Aggiornamento dell'AMI predefinito AWS Batch fornito alla versione più recente
<a name="automatic-ami-updates"></a>

AWS Batch può eseguire l'aggiornamento all'ultima AMI ottimizzata per Amazon ECS durante gli aggiornamenti [dell'infrastruttura](infrastructure-updates.md#infrastructure-updates.title) quando tutte queste condizioni sono soddisfatte:

**Nota**  
Al termine dell'aggiornamento dell'infrastruttura `updateToLatestImageVersion` è impostato su. `false` Per avviare un altro aggiornamento `updateToLatestImageVersion` è necessario impostare `true` su.
+ L'ambiente di calcolo utilizza il ruolo collegato al servizio *AWSServiceRoleForBatch*
+ La strategia di allocazione è impostata su, o `BEST_FIT_PROGRESSIVE` `SPOT_CAPACITY_OPTIMIZED` `SPOT_PRICE_CAPACITY_OPTIMIZED`
+ Nessun ID AMI è specificato esplicitamente in `imageId``imageIdOverride`, o nel modello di avvio
+ `updateToLatestImageVersion`È impostato su `true`

### Aggiornamenti AMI tramite blue/green distribuzione
<a name="manual-ami-updates-blue-green"></a>

È necessario utilizzare la blue/green distribuzione per l'aggiornamento AMIs in questi scenari:
+ Quando si utilizza la strategia `BEST_FIT` di allocazione (non supporta gli aggiornamenti dell'infrastruttura)
+ Quando non si utilizza il ruolo collegato al *AWSServiceRoleForBatch*[servizio](using-service-linked-roles-batch-general.md)

### Aggiornamenti AMI per un'AMI personalizzata
<a name="manual-ami-updates-custom-ami"></a>

Se specifichi un'AMI personalizzata nel modello di avvio dell'ambiente di calcolo, il `imageId` parametro o il `imageIdOverride` parametro nella configurazione EC2 non AWS Batch aggiornerà automaticamente l'AMI personalizzata durante gli aggiornamenti dell'infrastruttura. Puoi aggiornare un ID AMI personalizzato specificando il nuovo id nel parametro originariamente utilizzato durante la creazione di Compute Environment. Se desideri passare all'utilizzo di un'AMI AWS Batch fornita, puoi farlo rimuovendo l'ID AMI personalizzato nell'aggiornamento dell'ambiente di calcolo. 

# Esegui aggiornamenti di scalabilità
<a name="scaling-updates"></a>

Gli aggiornamenti di scalabilità regolano la capacità dell'ambiente di calcolo aggiungendo o rimuovendo istanze. Questa è la strategia di aggiornamento più rapida e non richiede la sostituzione delle istanze esistenti. Gli aggiornamenti scalabili funzionano con qualsiasi tipo di ruolo di servizio e strategia di allocazione, il che li rende l'opzione di aggiornamento più flessibile.

## Modifiche che attivano un aggiornamento scalabile
<a name="scaling-updates-triggers"></a>

Quando si modificano solo le seguenti impostazioni, AWS Batch esegue un aggiornamento di ridimensionamento. Se modifichi una di queste impostazioni insieme ad altre impostazioni dell'ambiente di calcolo, AWS Batch esegue invece un [aggiornamento dell'infrastruttura](infrastructure-updates.md#infrastructure-updates.title).

Le seguenti impostazioni attivano gli aggiornamenti di ridimensionamento quando vengono modificate esclusivamente:
+ `desiredvCpus`— Imposta il numero target di v CPUs per l'ambiente.
+ `maxvCpus`— Definisce il numero massimo di v CPUs che possono essere lanciati.
+ `minvCpus`— Speciifica il numero minimo di v CPUs da mantenere.
+ `minScaleDownDelayMinutes`— Speciifica il tempo minimo (in minuti) per AWS Batch mantenere le istanze in esecuzione nell'ambiente di calcolo dopo il completamento dei processi.
**Nota**  
`minScaleDownDelayMinutes`non si applica alle istanze sostituite durante gli aggiornamenti dell'infrastruttura.

Per gli ambienti di calcolo Fargate, puoi anche modificare queste impostazioni per scalare gli aggiornamenti:
+ `securityGroupIds`— Gruppo di sicurezza IDs per l'ambiente di calcolo.
+ `subnets`— Sottoreti per l'ambiente di calcolo.

**Nota**  
Si consiglia di non `desiredvCpus` utilizzarlo per avviare un aggiornamento di scalabilità poiché si adatterà dinamicamente. AWS Batch `desiredvCpus` Dovresti invece effettuare l'aggiornamento. `minvCpus`  
Durante l'aggiornamento`desiredvCpus`, il valore deve essere compreso tra `minvCpus` e`maxvCpus`. Il nuovo valore deve essere maggiore o uguale a quello corrente`desiredvCpus`. Per ulteriori informazioni, consulta [Messaggio di errore quando si aggiorna l'`desiredvCpus`impostazione](error-desired-vcpus-update.md).

**Importante**  
Se modifichi una di queste impostazioni di ridimensionamento insieme ad altre impostazioni dell'ambiente di calcolo (come tipi di istanze IDs, AMI o modelli di avvio), AWS Batch esegue un aggiornamento dell'infrastruttura anziché un aggiornamento di scalabilità. Gli aggiornamenti dell'infrastruttura richiedono più tempo e possono sostituire le istanze esistenti.

------
#### [ Performing scaling updates using the Console di gestione AWS ]

1. Apri la AWS Batch console all'indirizzo [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Nel pannello di navigazione, scegli **Ambienti**, quindi la scheda **Ambienti di calcolo**.

1. Seleziona l'ambiente di calcolo da aggiornare.

1. Scegli **Azioni** e poi **Modifica**.

1. Modifica una o più [impostazioni che supportano gli aggiornamenti di ridimensionamento](#scaling-updates-triggers). Esempio:
   + Per **Minimo v CPUs**, inserisci il numero minimo di vCPUs.
   + Per **Desired v CPUs**, inserire il numero desiderato di vCPUs.
   + Per **Maximum v CPUs**, inserire il numero massimo di vCPUs.

1. Scegli **Save changes** (Salva modifiche).

1. Monitora lo stato dell'ambiente di elaborazione. L'aggiornamento dovrebbe essere completato rapidamente poiché prevede solo operazioni di scalabilità.

------
#### [ Performing scaling updates using the AWS CLI ]

Utilizzate il **update-compute-environment** comando per eseguire gli aggiornamenti di ridimensionamento. I due esempi seguenti illustrano le operazioni di ridimensionamento comuni. È possibile modificare una o più delle seguenti [impostazioni che supportano gli aggiornamenti di ridimensionamento](#scaling-updates-triggers)
+ Questo esempio aggiorna il valore v desiderato, minimo e massimo: CPUs

  ```
  aws batch update-compute-environment \
      --compute-environment your-compute-environment-name \
      --compute-resources minvCpus=2,maxvCpus=8
  ```

------

## Monitoraggio degli aggiornamenti di scalabilità
<a name="scaling-updates-monitoring"></a>

Monitora gli aggiornamenti di scalabilità utilizzando la AWS Batch console per visualizzare lo stato dell'ambiente di calcolo e controllare il numero di istanze e le metriche della vCPU. È inoltre possibile utilizzare il **describe-compute-environments** comando AWS CLI with the per controllare lo stato e monitorare il numero di istanze e i valori della vCPU. 

# Esegui aggiornamenti dell'infrastruttura
<a name="infrastructure-updates"></a>

Gli aggiornamenti dell'infrastruttura sostituiscono le istanze dell'ambiente di calcolo con nuove istanze con impostazioni aggiornate. Questa strategia di aggiornamento richiede più tempo rispetto alla scalabilità degli aggiornamenti e richiede impostazioni specifiche del ruolo di servizio e della strategia di allocazione. Gli aggiornamenti dell'infrastruttura forniscono un modo per modificare le configurazioni fondamentali dell'ambiente di calcolo mantenendo al contempo la disponibilità del servizio.

**Importante**  
Gli aggiornamenti dell'infrastruttura richiedono il ruolo *AWSServiceRoleForBatch*collegato al servizio e una strategia di allocazione di, o. `BEST_FIT_PROGRESSIVE` `SPOT_CAPACITY_OPTIMIZED` `SPOT_PRICE_CAPACITY_OPTIMIZED` Se il tuo ambiente non soddisfa questi requisiti, utilizza blue/green invece gli aggiornamenti.

## Modifiche che attivano gli aggiornamenti dell'infrastruttura
<a name="infrastructure-updates-triggers"></a>

Quando si modifica una delle seguenti impostazioni, AWS Batch esegue un aggiornamento dell'infrastruttura. Gli aggiornamenti dell'infrastruttura si verificano anche quando si modificano queste impostazioni insieme al ridimensionamento delle impostazioni di aggiornamento.

Le seguenti impostazioni attivano gli aggiornamenti dell'infrastruttura:

**Configurazione di calcolo**
+ `allocationStrategy`— Determina il modo in cui AWS Batch vengono selezionati i tipi di istanza.
+ `instanceTypes`— Speciifica quali tipi di istanze EC2 utilizzare.
+ `bidPercentage`— Percentuale massima del prezzo on demand per le istanze Spot.
+ `type`— Tipo di ambiente di calcolo (`EC2`o). `SPOT`

**AMI e configurazione di avvio**
+ `imageId`— AMI specifica da utilizzare per le istanze.
+ `ec2Configuration`— Configurazione EC2 inclusa. `imageIdOverride`
+ `launchTemplate`— Impostazioni del modello di lancio EC2.
+ `ec2KeyPair`— Coppia di key pair SSH per l'accesso ad esempio.
+ `updateToLatestImageVersion`— Impostazione degli aggiornamenti AMI automatici.

**Rete e sicurezza**
+ `subnets`— Sottoreti VPC in cui vengono lanciate le istanze (per ambienti di calcolo EC2).
+ `securityGroupIds`— Gruppi di sicurezza per istanze (per ambienti di calcolo EC2).
+ `placementGroup`— Configurazione del gruppo di posizionamento EC2.

**Altre impostazioni**
+ `instanceRole`— Ruolo IAM per le istanze EC2.
+ `tags`— Tag applicati alle istanze EC2.

**Importante**  
Se modifichi le impostazioni di aggiornamento dell'infrastruttura insieme al ridimensionamento delle impostazioni di aggiornamento (ad esempio`desiredvCpus`, o`minvCpus`)`maxvCpus`, AWS Batch esegue un aggiornamento dell'infrastruttura. Gli aggiornamenti dell'infrastruttura richiedono più tempo rispetto agli aggiornamenti di scalabilità.

## Selezione dell'AMI durante gli aggiornamenti dell'infrastruttura
<a name="updating-compute-environments-ami"></a>

Durante un aggiornamento dell'infrastruttura, l'ID AMI dell'ambiente di calcolo potrebbe cambiare, a seconda che sia AMIs specificato in una di queste tre impostazioni. AMIs sono specificati nel modello `imageId` (in`computeResources`), `imageIdOverride` (in`ec2Configuration`) o nel modello di avvio specificato in`launchTemplate`. Supponiamo che nessun AMI IDs sia specificato in nessuna di queste impostazioni e che l'`updateToLatestImageVersion`impostazione sia`true`. Quindi, l'ultima AMI ottimizzata per Amazon ECS supportata da AWS Batch viene utilizzata per qualsiasi aggiornamento dell'infrastruttura.

Se in almeno una di queste impostazioni è specificato un ID AMI, l'aggiornamento dipende dall'impostazione che ha fornito l'ID AMI utilizzato prima dell'aggiornamento. Quando crei un ambiente di calcolo, la priorità per la selezione di un ID AMI è prima il modello di avvio, poi l'`imageId`impostazione e infine l'`imageIdOverride`impostazione. Tuttavia, se l'ID AMI utilizzato proviene dal modello di avvio, l'aggiornamento `imageIdOverride` delle impostazioni `imageId` o non aggiorna l'ID AMI. L'unico modo per aggiornare un ID AMI selezionato dal modello di avvio è aggiornare il modello di avvio. Se il parametro della versione del modello di lancio è `$Default` o`$Latest`, viene valutata la versione predefinita o più recente del modello di lancio specificato. Se per impostazione predefinita è selezionato un ID AMI diverso o è selezionata la versione più recente del modello di avvio, tale ID AMI viene utilizzato nell'aggiornamento.

Se il modello di avvio non è stato utilizzato per selezionare l'ID AMI, viene utilizzato l'ID AMI specificato nei `imageIdOverride` parametri `imageId` o. Se vengono specificati entrambi, viene utilizzato l'ID AMI specificato nel `imageIdOverride` parametro.

Supponiamo che l'ambiente di calcolo utilizzi un ID AMI specificato dai `launchTemplate` parametri`imageId`,`imageIdOverride`, o e che desideri utilizzare l'AMI ottimizzata Amazon ECS più recente supportata da. AWS Batch Quindi, l'aggiornamento deve rimuovere le impostazioni che hanno fornito l'AMI IDs. Ciò richiede infatti la specificazione di una stringa vuota per quel parametro. `imageId` Perché`imageIdOverride`, ciò richiede la specificazione di una stringa vuota per il `ec2Configuration` parametro.

Se l'ID AMI proviene dal modello di avvio, puoi passare alla più recente AMI ottimizzata per Amazon ECS AWS Batch supportata in uno dei seguenti modi:
+ Rimuovi il modello di avvio specificando una stringa vuota per il parametro `launchTemplateId` or`launchTemplateName`. Ciò rimuove l'intero modello di avvio, anziché il solo ID AMI.
+ Se la versione aggiornata del modello di avvio non specifica un ID AMI, il `updateToLatestImageVersion` parametro deve essere impostato su`true`.

## Gestione dei job durante gli aggiornamenti
<a name="infrastructure-updates-job-handling"></a>

Configura la modalità di gestione dei lavori in esecuzione durante un aggiornamento dell'infrastruttura utilizzando la politica di aggiornamento. Quando si imposta`terminateJobsOnUpdate=true`, i processi in esecuzione vengono interrotti immediatamente, l'`jobExecutionTimeoutMinutes`impostazione viene ignorata e l'aggiornamento procede non appena le istanze possono essere sostituite. Quando si imposta`terminateJobsOnUpdate=false`, i lavori in esecuzione continuano per il periodo di timeout specificato con un timeout predefinito di 30 minuti e i lavori vengono interrotti se superano il timeout.

**Nota**  
Per riprovare i job che vengono interrotti durante un aggiornamento, configura una strategia per riprovare i job. Per ulteriori informazioni, consulta [Ritentativi di lavoro automatizzati](job_retries.md).

------
#### [ Performing infrastructure updates using the Console di gestione AWS ]

1. Apri la console all' AWS Batch indirizzo. [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

1. Nel pannello di navigazione, scegli **Ambienti**, quindi la scheda **Ambienti di calcolo**.

1. Seleziona l'ambiente di calcolo da aggiornare.

1. Scegli **Azioni** e poi **Modifica**.

1. Nella sezione **Aggiorna comportamento**, configura la modalità di gestione dei processi in esecuzione:
   + Scegli **Aggiorna AMI alla versione più recente** per aggiornare l'AMI alla versione più recente.
   + Scegli **Termina i lavori immediatamente all'aggiornamento** per terminare i lavori quando viene eseguito il processo di aggiornamento.
   + Per **Job execution timeout**, immettete il numero di minuti da attendere prima di iniziare il processo di aggiornamento.

1. Modifica una o più [impostazioni che richiedono aggiornamenti dell'infrastruttura](#infrastructure-updates-triggers). Esempio:
   + **Ruolo dell'istanza**
   + **Usa le istanze Spot EC2**
   + **Tipi di istanze consentiti**
   + **Gruppo di collocamento**
   + **Coppia di chiavi EC2**
   + **Configurazione EC2**
   + **Modelli di avvio**
   + **Sottoreti**
   + **Gruppi di sicurezza**

1. Scegli **Save changes** (Salva modifiche).

1. Monitora lo stato dell'ambiente di calcolo. L'ambiente verrà visualizzato `UPDATING` durante il processo di aggiornamento.

------
#### [ Performing infrastructure updates using the AWS CLI ]

Utilizza il **update-compute-environment** comando per modificare una o più [impostazioni che richiedono aggiornamenti dell'infrastruttura](#infrastructure-updates-triggers). I tre esempi seguenti sono operazioni infrastrutturali comuni.
+ Questo esempio aggiorna i tipi di istanza e configura la politica di aggiornamento:

  ```
  aws batch update-compute-environment \
      --compute-environment your-compute-environment-name \
      --compute-resources instanceTypes=default_x86_64 \
      --update-policy terminateJobsOnUpdate=false,jobExecutionTimeoutMinutes=30
  ```
+ Questo esempio aggiorna le sottoreti e i gruppi di sicurezza VPC:

  ```
  aws batch update-compute-environment \
      --compute-environment your-compute-environment-name \
      --compute-resources subnets=subnet-abcd1234,subnet-efgh5678 securityGroupIds=sg-abcd1234 \
      --update-policy terminateJobsOnUpdate=true
  ```
+ Questo esempio abilita gli aggiornamenti automatici all'ultima AMI ottimizzata per Amazon ECS:

  ```
  aws batch update-compute-environment \
      --compute-environment your-compute-environment-name \
      --compute-resources updateToLatestImageVersion=true \
      --update-policy terminateJobsOnUpdate=false,jobExecutionTimeoutMinutes=60
  ```

------

## Monitoraggio degli aggiornamenti dell'infrastruttura
<a name="infrastructure-updates-monitoring"></a>

Monitora gli aggiornamenti dell'infrastruttura utilizzando la AWS Batch console per osservare la modifica dello stato dell'ambiente di calcolo`UPDATING`, monitorare l'avanzamento della sostituzione delle istanze e verificare la presenza di eventuali aggiornamenti non riusciti. L'aggiornamento ha esito positivo una volta raggiunto lo stato dell'ambiente di calcolo. `VAILD` È inoltre possibile utilizzarlo CloudWatch per tenere traccia degli eventi di chiusura dell'istanza e monitorare lo stato del processo durante l'aggiornamento. Con AWS CLI, utilizzate il **describe-compute-environments** comando per controllare lo stato e monitorare gli eventi del ciclo di vita dell'istanza.

# Esegui blue/green aggiornamenti per gli ambienti di elaborazione
<a name="blue-green-updates"></a>

Un blue/green aggiornamento è una strategia di aggiornamento che riduce i tempi di inattività e i rischi creando un nuovo ambiente di elaborazione (verde) accanto all'ambiente di elaborazione esistente (blu). Questo approccio consente di trasferire gradualmente i carichi di lavoro al nuovo ambiente mantenendo operativo l'ambiente esistente. Blue/green gli aggiornamenti forniscono il percorso di aggiornamento più sicuro e funzionano con qualsiasi tipo di ruolo di servizio o strategia di allocazione.

## Panoramica di
<a name="blue-green-overview"></a>

Gli aggiornamenti blu/verdi offrono diversi vantaggi che li rendono ideali per gli ambienti di produzione. Garantiscono *zero tempi* di inattività mantenendo i carichi di lavoro in esecuzione ininterrottamente durante il processo di aggiornamento. L'approccio consente *semplici funzionalità di rollback*, che consentono di ripristinare rapidamente l'ambiente originale in caso di problemi. È possibile implementare una strategia di *transizione graduale*, verificando le prestazioni del nuovo ambiente prima di passare completamente ai carichi di lavoro di produzione. Questo metodo offre anche un'eccellente *mitigazione del rischio*, poiché l'ambiente originale rimane invariato e operativo fino a quando non si sceglie di rimuoverlo.

### Quando sono necessari blue/green aggiornamenti
<a name="blue-green-when-required"></a>

È necessario utilizzare blue/green gli aggiornamenti nelle seguenti situazioni:
+ Quando l'ambiente di elaborazione utilizza la strategia di `BEST_FIT` allocazione (non supporta gli aggiornamenti dell'infrastruttura)
+ Quando l'ambiente di elaborazione non utilizza il ruolo collegato ai servizi *AWSServiceRoleForBatch*
+ Quando è necessario passare da un tipo di ruolo di servizio all'altro

### Quando sono consigliati blue/green gli aggiornamenti
<a name="blue-green-when-recommended"></a>

Blue/green updates are particularly recommended for production environments where zero downtime is critical for your workloads. This approach works well when you need to test new configurations before transitioning production workloads, ensuring that changes meet your performance and reliability requirements. Choose blue/greenaggiornamenti quando la funzionalità di rollback rapido è importante per le tue operazioni, specialmente se esegui aggiornamenti personalizzati AMIs con modifiche significative. Questo metodo è ideale anche quando si desidera convalidare le caratteristiche e il comportamento delle prestazioni prima di impegnarsi completamente nelle modifiche, in modo da avere fiducia nel processo di aggiornamento.

### Prerequisiti
<a name="blue-green-prerequisites"></a>

Prima di eseguire un blue/green aggiornamento, assicuratevi di avere:
+ [Autorizzazioni IAM](IAM_policies.md#IAM_policies.title) appropriate per creare e gestire ambienti di elaborazione
+ Accesso per visualizzare e modificare le impostazioni della coda di lavoro
+ Strategie di rielaborazione dei lavori configurate per le definizioni dei lavori per gestire potenziali errori durante la transizione. Per ulteriori informazioni, consulta [Ritentativi di lavoro automatizzati](job_retries.md).
+ L'ID AMI per il nuovo ambiente di calcolo. Questo può essere uno dei seguenti:
  + Una versione recente e approvata dell'AMI ottimizzata Amazon ECS (utilizzata per impostazione predefinita)
  + Un'AMI personalizzata che soddisfa le specifiche AMI dell'istanza di container Amazon ECS. Quando si utilizza un'AMI personalizzata, è possibile specificarla in uno dei seguenti modi:
    + Utilizzo del campo **Image ID override** nella configurazione EC2
    + Specificandolo in un modello di lancio

    Per ulteriori informazioni sulla creazione di contenuti personalizzati AMIs, consulta[Tutorial: Creare un'AMI per risorse di calcolo](create-batch-ami.md).

Prima di creare il nuovo ambiente, è necessario registrare la configurazione dell'ambiente di elaborazione esistente. È possibile eseguire questa operazione utilizzando il Console di gestione AWS o il AWS CLI. 

**Nota**  
Le seguenti procedure descrivono in dettaglio come eseguire un blue/green aggiornamento che modifichi solo l'AMI. È possibile aggiornare altre impostazioni per il nuovo ambiente.

**Importante**  
Quando rimuovi il vecchio ambiente di calcolo (blu), tutti i processi attualmente in esecuzione su tali istanze falliranno perché le istanze verranno terminate. Configura le strategie di ripetizione dei job nelle definizioni dei job per gestire automaticamente questi errori. Per ulteriori informazioni, consulta [Ritentativi di lavoro automatizzati](job_retries.md).  
Una volta acquisita fiducia nel nuovo ambiente:  
Modifica la coda dei lavori per rimuovere il vecchio ambiente di calcolo.
Attendi il completamento di tutti i processi in esecuzione nel vecchio ambiente.
Eliminare il vecchio ambiente di calcolo.

------
#### [ Performing blue/green updates using the Console di gestione AWS ]

1. Clona il tuo ambiente di elaborazione attuale

   1. Apri la AWS Batch console all'indirizzo. [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

   1. Seleziona l'ambiente di calcolo esistente.

   1. Scegli **Azioni** e poi **Clona**.

   1. In **Nome**, inserisci un nome univoco per il tuo nuovo ambiente di calcolo. 

   1. Scegli **Next (Successivo)**.

   1. Nella sezione **Configurazione dell'istanza**, aggiorna le impostazioni AMI:

      1. Espandere **Additional configuration (Configurazione aggiuntiva)**.

      1. Per la **configurazione EC2**, specifica il nuovo tipo di AMI in Tipo **di immagine** e ID AMI nel campo **Image ID override**.

   1. Scegli **Next (Successivo)**.

   1. **Per la **configurazione di rete, scegli Avanti**.**

   1. Controlla le altre impostazioni che vengono copiate automaticamente dall'ambiente esistente.

   1. Scegli **Crea ambiente di calcolo**.

   1. Attendi che diventi lo stato del nuovo ambiente di calcolo. `VALID`

1. Modifica l'ordine della coda dei lavori

   1. Nel riquadro di navigazione, scegli **Job queues**.

   1. Seleziona la coda di lavoro associata all'ambiente di calcolo esistente.

   1. Scegli **Modifica**.

   1. In Ambiente **Connected Compute, aggiungi il nuovo ambiente** di calcolo:
      + Aggiungi il nuovo ambiente di elaborazione con un numero d'ordine più alto rispetto all'ambiente esistente per trasferire il carico di lavoro.
      + Dopo aver verificato che il nuovo ambiente funzioni correttamente, puoi renderlo l'ambiente principale assegnandogli un numero d'ordine inferiore.

   1. Scegli **Aggiorna coda lavori**.

1. Eliminazione

   1. Monitora l'esecuzione dei lavori nel nuovo ambiente per assicurarti che tutto funzioni come previsto.

   1. Una volta acquisita fiducia nel nuovo ambiente:

      1. Modifica la coda dei lavori per rimuovere il vecchio ambiente di calcolo.

      1. Attendi il completamento di tutti i processi in esecuzione nel vecchio ambiente.

      1. Eliminare il vecchio ambiente di calcolo.

------
#### [ Performing blue/green updates using the AWS CLI ]

1. Per ottenere la configurazione utilizzando il AWS CLI, utilizzate il seguente comando:

   ```
   aws batch describe-compute-environments \
     --compute-environments your-compute-environment-name
   ```

   Salvate l'output come riferimento durante la creazione del nuovo ambiente.

1. Crea un nuovo ambiente di calcolo utilizzando la configurazione dell'ambiente esistente, ma con la nuova AMI. Ecco un esempio di struttura di comando:

   Sostituisci i valori di esempio con la configurazione effettiva del passaggio precedente:

   ```
   cat <<EOF > ./blue-green-compute-environment.json
   {
     "computeEnvironmentName": "your-new-compute-environment-name",
     "type": "MANAGED",
     "state": "ENABLED",
     "computeResources": {
       "instanceRole": "arn:aws:iam::012345678901:instance-profile/ecsInstanceRole",
       "type": "EC2",
       "minvCpus": 2,
       "desiredvCpus": 2,
       "maxvCpus": 256,
       "instanceTypes": [
         "optimal"
       ],
       "allocationStrategy": "BEST_FIT_PROGRESSIVE",
       "ec2Configuration": [
         {
           "imageType": "ECS_AL2023",
           "imageIdOverride": "ami-0abcdef1234567890"
         }
       ],
       "subnets": [,
         "subnet-0abcdef1234567890"
       ],
       "securityGroupIds": [
         "sg-0abcdef1234567890"
       ]
     }
   }
   EOF
   ```

   ```
   $ aws batch create-compute-environment --cli-input-json file://./blue-green-compute-environment.json
   ```

1. Attendi che il nuovo ambiente diventi disponibile:

   ```
   aws batch describe-compute-environments \
     --compute-environments your-new-compute-environment-name \
     --query 'computeEnvironments[].status'
   ```

1. Aggiungi il nuovo ambiente di elaborazione alla tua coda di lavoro:

   ```
   aws batch update-job-queue \
     --job-queue your-job-queue \
     --compute-environment-order order=1,computeEnvironment=your-existing-environment \
     order=2,computeEnvironment=your-new-compute-environment-name
   ```

1. Una volta verificato, esegui nuovamente l'aggiornamento per rendere principale il nuovo ambiente:

   ```
   aws batch update-job-queue \
     --job-queue your-job-queue \
     --compute-environment-order order=1,computeEnvironment=your-new-compute-environment-name
   ```

   Una volta completati tutti i job nel vecchio ambiente, disattivatelo e poi cancellatelo:

   ```
   aws batch update-compute-environment \
       --compute-environment your-existing-environment \
       --state DISABLED
   ```

   ```
   aws batch delete-compute-environment \
     --compute-environment your-existing-environment
   ```

------

# Risorsa di calcolo AMIs
<a name="compute_resource_AMIs"></a>

Per impostazione predefinita, gli ambienti di elaborazione AWS Batch gestiti utilizzano una versione recente e approvata dell'AMI ottimizzata Amazon ECS per le risorse di calcolo. Tuttavia, potresti voler creare la tua AMI da utilizzare per i tuoi ambienti di elaborazione gestiti e non gestiti. Se hai bisogno di uno dei seguenti elementi, ti consigliamo di creare la tua AMI personale:
+ Aumento delle dimensioni di archiviazione della radice o dei volumi di dati dell'AMI
+ Aggiungere volumi di storage delle istanze per i tipi di EC2 istanze Amazon supportati
+ Personalizzazione dell'agente container Amazon ECS
+ Personalizzazione di Docker
+ Configurazione di un'AMI per carichi di lavoro GPU per consentire ai container di accedere all'hardware GPU sui tipi di istanze Amazon supportati EC2 

**Nota**  
Dopo aver creato un ambiente di calcolo, AWS Batch non lo aggiorna nell'ambiente di calcolo. AMIs AWS Batch inoltre non aggiorna il file AMIs nel tuo ambiente di calcolo quando è disponibile una versione più recente dell'AMI ottimizzata per Amazon ECS. Sei responsabile della gestione del sistema operativo guest. Ciò include eventuali aggiornamenti e patch di sicurezza. Sei inoltre responsabile di qualsiasi software applicativo o utilità aggiuntivo che installi sulle risorse di elaborazione. Per utilizzare una nuova AMI per i tuoi AWS Batch lavori, procedi come segue:  
Creare un nuovo ambiente di calcolo con la nuova AMI.
Aggiungere l'ambiente di calcolo a una coda di processi esistente.
Rimuovere il precedente ambiente di calcolo dalla coda di processi.
Eliminare l'ambiente di calcolo precedente.
Nell'aprile 2022, è AWS Batch stato aggiunto un supporto avanzato per l'aggiornamento degli ambienti di elaborazione. Per ulteriori informazioni, consulta [Aggiornare un ambiente di calcolo in AWS Batch](updating-compute-environments.md). Per utilizzare l'aggiornamento avanzato degli ambienti di elaborazione per l'aggiornamento AMIs, segui queste regole:  
Non impostate il parametro service role ([https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html#Batch-CreateComputeEnvironment-request-serviceRole](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html#Batch-CreateComputeEnvironment-request-serviceRole)) o impostatelo sul ruolo collegato al **AWSServiceRoleForBatch**servizio.
Imposta il parametro allocation strategy ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-allocationStrategy](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-allocationStrategy)) su`BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED` o. `SPOT_PRICE_CAPACITY_OPTIMIZED`
Imposta il parametro di aggiornamento all'ultima versione dell'immagine ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-updateToLatestImageVersion](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-updateToLatestImageVersion)) su`true`.
Non specificare un ID AMI in [https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-imageId](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-imageId), [https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride)(in [https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html)) o nel modello di avvio ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate)). Quando non specifichi un ID AMI, AWS Batch seleziona l'AMI ottimizzata Amazon ECS più recente che AWS Batch supporta al momento dell'aggiornamento dell'infrastruttura. In alternativa, puoi specificare l'ID AMI nei `imageIdOverride` parametri `imageId` o. In alternativa, è possibile specificare il modello di avvio identificato dalle `LaunchTemplate` proprietà. La modifica di una di queste proprietà avvia un aggiornamento dell'infrastruttura. Se l'ID AMI è specificato nel modello di avvio, l'ID AMI non può essere sostituito specificando un ID AMI nei `imageIdOverride` parametri `imageId` o. L'ID AMI può essere sostituito solo specificando un modello di avvio diverso. Se la versione del modello di avvio è impostata su `$Default` o`$Latest`, l'ID AMI può essere sostituito impostando una nuova versione predefinita per il modello di avvio (if`$Default`) o aggiungendo una nuova versione al modello di avvio (if`$Latest`).
Se vengono seguite queste regole, qualsiasi aggiornamento che avvia un aggiornamento dell'infrastruttura causa la riseleziona l'ID AMI. Se l'[https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-version](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-version)impostazione nel modello di avvio ([https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate)) è impostata su `$Latest` o`$Default`, la versione più recente o predefinita del modello di lancio viene valutata al momento dell'aggiornamento dell'infrastruttura, anche se non [https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-launchTemplate)era aggiornata.

**Topics**
+ [Specifiche dell'AMI delle risorse di calcolo](batch-ami-spec.md)
+ [Tutorial: Creare un'AMI per risorse di calcolo](create-batch-ami.md)
+ [Usa un'AMI per carichi di lavoro GPU](batch-gpu-ami.md)
+ [Deprecazione di Amazon Linux](al1-ami-deprecation.md)
+ [Deprecazione delle AMI Amazon EKS Amazon Linux 2](eks-al2-ami-deprecation.md)
+ [Deprecazione delle AMI Amazon ECS Amazon Linux 2](ecs-al2-ami-deprecation.md)

# Specifiche dell'AMI delle risorse di calcolo
<a name="batch-ami-spec"></a>

La specifica AMI delle risorse di AWS Batch calcolo di base è composta da quanto segue:

Campo obbligatorio

 
+ Una distribuzione Linux moderna che esegue almeno la versione 3.10 del kernel Linux su un'AMI di tipo di virtualizzazione HVM. I contenitori Windows non sono supportati.
**Importante**  
I lavori paralleli multinodo possono essere eseguiti solo su risorse di calcolo lanciate su un'istanza Amazon Linux con il `ecs-init` pacchetto installato. Ti consigliamo di utilizzare l'AMI ottimizzata Amazon ECS predefinita quando crei il tuo ambiente di elaborazione. È possibile farlo non specificando un AMI personalizzato. Per ulteriori informazioni, consulta [Lavori paralleli multinodo](multi-node-parallel-jobs.md).
+ L'agente container Amazon ECS. Consigliamo di utilizzare la versione più recente. Per ulteriori informazioni, consulta [Installazione di Amazon ECS Container Agent](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-install.html) nella *Amazon Elastic Container Service Developer Guide*.
+ Il driver di `awslogs` registro deve essere specificato come driver di registro disponibile con la variabile di `ECS_AVAILABLE_LOGGING_DRIVERS` ambiente all'avvio dell'agente contenitore Amazon ECS. Per ulteriori informazioni, consulta [Configurazione dell'agente del container Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) nella *Guida per gli sviluppatori di Amazon Elastic Container Service*. 
+ Un demone Docker che esegue almeno la versione 1.9 e tutte le dipendenze di runtime di Docker. Per ulteriori informazioni, consulta [Check runtime dependencies (Controlla dipendenze di runtime)](https://docs.docker.com/engine/installation/binaries/#check-runtime-dependencies) nella documentazione di Docker.
**Nota**  
Ti consigliamo la versione Docker fornita con e testata con la corrispondente versione dell'agente Amazon ECS che stai utilizzando. Amazon ECS fornisce un changelog per la variante Linux dell'AMI ottimizzata per Amazon ECS su. GitHub Per ulteriori informazioni, consulta [Changelog](https://github.com/aws/amazon-ecs-ami/blob/main/CHANGELOG.md).

Consigliato

 
+ Un processo di inizializzazione e nanny per eseguire e monitorare l'agente Amazon ECS. L'AMI ottimizzata per Amazon ECS utilizza il processo `ecs-init` upstart e altri sistemi operativi potrebbero utilizzarlo. `systemd` Per ulteriori informazioni ed esempi, consulta [Example Container Instance User Data Configuration Scripts](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/example_user_data_scripts.html) nella *Amazon Elastic Container Service Developer Guide*. Per ulteriori informazioni su`ecs-init`, consulta il [`ecs-init`progetto](https://github.com/aws/amazon-ecs-init) su GitHub. Come minimo, gli ambienti di elaborazione gestiti richiedono che l'agente Amazon ECS si avvii all'avvio. Se l'agente Amazon ECS non è in esecuzione sulla tua risorsa di elaborazione, non può accettare lavori da. AWS Batch

L'AMI ottimizzata per Amazon ECS è preconfigurata con questi requisiti e raccomandazioni. Ti consigliamo di utilizzare l'AMI ottimizzata Amazon ECS o un'AMI Amazon Linux con il `ecs-init` pacchetto installato per le tue risorse di calcolo. Scegli un'altra AMI se la tua applicazione richiede un sistema operativo specifico o una versione Docker non ancora disponibile in questi AMIs. Per ulteriori informazioni, consulta l'[AMI ottimizzata per Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) nella *Amazon Elastic Container Service Developer Guide*.

# Tutorial: Creare un'AMI per risorse di calcolo
<a name="create-batch-ami"></a>

Puoi creare la tua AMI di risorse di calcolo personalizzata da utilizzare per i tuoi ambienti di elaborazione gestiti e non gestiti. Per istruzioni, consulta il [Specifiche dell'AMI delle risorse di calcolo](batch-ami-spec.md). Quindi, dopo aver creato un'AMI personalizzata, puoi creare un ambiente di calcolo che utilizza quell'AMI a cui puoi associare una coda di lavoro. Infine, inizia a inviare i lavori a quella coda.

**Per creare una risorsa di calcolo AMI personalizzata**

1. Scegli un AMI di base da cui iniziare. L'AMI di base deve utilizzare la virtualizzazione HVM. L'AMI di base non può essere un'AMI Windows.
**Nota**  
L'AMI scelta per un ambiente di elaborazione deve corrispondere all'architettura dei tipi di istanza che intendi utilizzare per quell'ambiente di elaborazione. Ad esempio, se l'ambiente di elaborazione utilizza tipi di istanza A1, l'AMI della risorsa di calcolo scelta deve supportare le istanze ARM. Amazon ECS offre versioni x86 e ARM dell'AMI Amazon Linux 2 ottimizzata per Amazon ECS. Per ulteriori informazioni, consulta l'[AMI Amazon Linux 2 ottimizzata per Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html) nella *Amazon Elastic Container Service Developer Guide*.

   L'AMI Amazon Linux 2 ottimizzata per Amazon ECS è l'AMI predefinita per le risorse di elaborazione in ambienti di elaborazione gestiti. L'AMI Amazon Linux 2 ottimizzata per Amazon ECS è preconfigurata e testata AWS Batch dagli AWS ingegneri. È un'AMI minima con cui iniziare e con cui puoi far funzionare AWS rapidamente le tue risorse di calcolo. Per ulteriori informazioni, consulta [Amazon ECS Optimized AMI](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) nella *Amazon Elastic Container Service Developer Guide*.

   In alternativa, puoi scegliere un'altra variante di Amazon Linux 2 e installare il `ecs-init` pacchetto con i seguenti comandi. Per ulteriori informazioni, consulta [Installazione dell'agente container Amazon ECS su un' EC2 istanza Amazon Linux 2](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-install.html#ecs-agent-install-al2) nella *Amazon Elastic Container Service Developer Guide*:

   ```
   $ sudo amazon-linux-extras disable docker
   $ sudo amazon-linux-extras install ecs-init
   ```

   Ad esempio, se desideri eseguire carichi di lavoro GPU sulle tue risorse di AWS Batch calcolo, puoi iniziare con l'AMI [Amazon Linux Deep Learning](https://aws.amazon.com/marketplace/pp/B01M0AXXQB). Quindi, configura l'AMI per eseguire i AWS Batch lavori. Per ulteriori informazioni, consulta [Usa un'AMI per carichi di lavoro GPU](batch-gpu-ami.md).
**Importante**  
Puoi scegliere un'AMI di base che non supporti il `ecs-init` pacchetto. Tuttavia, se lo fai, devi configurare un modo per avviare l'agente Amazon ECS all'avvio e mantenerlo in esecuzione. Puoi anche visualizzare diversi esempi di script di configurazione dei dati utente che vengono utilizzati `systemd` per avviare e monitorare l'agente container Amazon ECS. Per ulteriori informazioni, consulta [Esempi di script di configurazione dei dati utente dell'istanza del contenitore](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/example_user_data_scripts.html) nella *Amazon Elastic Container Service Developer Guide*.

1. Avvia un'istanza dall'AMI di base selezionata con le opzioni di archiviazione appropriate per l'AMI. Puoi configurare la dimensione e il numero di volumi Amazon EBS collegati o i volumi di storage delle istanze se il tipo di istanza selezionato li supporta. Per ulteriori informazioni, consulta [Launching an Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/launching-instance.html) e [Amazon EC2 Instance Store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) nella *Amazon EC2 User Guide*.

1. Connect alla tua istanza SSH ed esegui tutte le attività di configurazione necessarie. Ciò potrebbe includere alcuni o tutti i seguenti passaggi:
   + Installazione dell'agente container Amazon ECS. Per ulteriori informazioni, consulta [Installazione di Amazon ECS Container Agent](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-install.html) nella *Amazon Elastic Container Service Developer Guide*.
   + Configurazione di uno script per la formattazione di volumi instance store.
   + Aggiungere il volume dell'instance store o i file system Amazon EFS al `/etc/fstab` file in modo che vengano montati all'avvio.
   + Configurazione delle opzioni Docker, come l'abilitazione del debug o la regolazione delle dimensioni dell'immagine di base.
   + Installazione di pacchetti o copia di file.

   Per ulteriori informazioni, consulta [Connessione all'istanza Linux tramite SSH](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html) nella *Amazon EC2 User Guide*.

1. Se hai avviato l'agente container Amazon ECS sulla tua istanza, devi interromperlo e rimuovere tutti i file di checkpoint persistenti dei dati prima di creare l'AMI. Altrimenti, se non lo fai, l'agente non si avvia sulle istanze lanciate dalla tua AMI. 

   1. Arresta l'agente del container di Amazon ECS.
      + AMI Amazon Linux 2 ottimizzata per Amazon ECS:

        ```
        sudo systemctl stop ecs
        ```
      + AMI Amazon Linux ottimizzata per Amazon ECS:

        ```
        sudo stop ecs
        ```

   1. Rimuovi i file persistenti del checkpoint dei dati. Per impostazione predefinita, questi file si trovano nella `/var/lib/ecs/data/` directory. Usa il seguente comando per rimuovere questi file, se ce ne sono.

      ```
      sudo rm -rf /var/lib/ecs/data/*
      ```

1. Crea una nuova AMI dall'istanza in esecuzione. Per ulteriori informazioni, consulta [Creazione di un'AMI Linux supportata da Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) nella *Amazon EC2 User Guide*.

**Per usare la tua nuova AMI con AWS Batch**

1. Dopo aver creato la nuova AMI, crea un ambiente di calcolo con la nuova AMI. Per fare ciò, scegli il tipo di immagine e inserisci l'ID AMI personalizzato nella casella **Image ID override** quando crei l'ambiente di AWS Batch calcolo. Per ulteriori informazioni, consulta [Tutorial: crea un ambiente di elaborazione gestito utilizzando le risorse Amazon EC2](create-compute-environment-managed-ec2.md).
**Nota**  
L'AMI scelta per un ambiente di elaborazione deve corrispondere all'architettura dei tipi di istanza che intendi utilizzare per quell'ambiente di elaborazione. Ad esempio, se l'ambiente di elaborazione utilizza tipi di istanza A1, l'AMI della risorsa di calcolo scelta deve supportare le istanze ARM. Amazon ECS offre versioni x86 e ARM dell'AMI Amazon Linux 2 ottimizzata per Amazon ECS. Per ulteriori informazioni, consulta l'[AMI Amazon Linux 2 ottimizzata per Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html) nella *Amazon Elastic Container Service Developer Guide*.

1. Crea una coda dei processi e associa il nuovo ambiente di calcolo. Per ulteriori informazioni, consulta [Creare una coda di lavoro](create-job-queue.md).
**Nota**  
Tutti gli ambienti di calcolo associati a una coda di processi devono condividere la stessa architettura, poiché AWS Batch non supporta diversi tipi di architettura in una singola coda.

1. (Facoltativo) Invia un processo di esempio alla nuova coda di processi. Per ulteriori informazioni, consultare [Esempi di definizione di Job](example-job-definitions.md), [Creare una definizione di processo a nodo singolo](create-job-definition.md) e [Tutorial: invia un lavoro](submit_job.md).

# Usa un'AMI per carichi di lavoro GPU
<a name="batch-gpu-ami"></a>

Per eseguire carichi di lavoro GPU sulle risorse di AWS Batch elaborazione, devi utilizzare un'AMI con supporto GPU. Per ulteriori informazioni, consulta [Working with GPUs on Amazon ECS e Amazon ECS Optimized](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-gpu.html) [nella AMIs Amazon](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) *Elastic Container Service* Developer Guide.

Negli ambienti di elaborazione gestiti, se l'ambiente di calcolo specifica tipi o famiglie di istanze `p3``p4`,`p5`,`p6`,`g3`, `g3s` `g4``g5`, o tipi di `g6` istanze, utilizza AWS Batch un'AMI ottimizzata per GPU Amazon ECS.

In ambienti di elaborazione non gestiti, è consigliata un'AMI Amazon ECS ottimizzata per GPU. Puoi utilizzare AWS Systems Manager Parameter Store [GetParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html)e [GetParametersByPath](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html)operations per recuperare [GetParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameters.html)i metadati per la versione ottimizzata per GPU Amazon ECS consigliata. AWS Command Line Interface AMIs

**Nota**  
La famiglia di `p5` istanze è supportata solo su versioni uguali o successive all'AMI ottimizzata per GPU `20230912` di Amazon ECS e sono incompatibili con `p2` tutti i tipi di istanze. `g2` Se devi usare `p5` istanze, assicurati che il tuo ambiente di calcolo non contenga `g2` istanze `p2` o e utilizzi l'ultima AMI Batch predefinita. La creazione di un nuovo ambiente di calcolo utilizzerà l'AMI più recente, ma se stai aggiornando l'ambiente di calcolo per includere`p5`, puoi assicurarti di utilizzare l'AMI più recente impostando [https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-updateToLatestImageVersion](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResourceUpdate.html#Batch-Type-ComputeResourceUpdate-updateToLatestImageVersion)su `true` nelle `ComputeResource` proprietà. Per ulteriori informazioni sulla compatibilità delle AMI con le istanze GPU, consulta [Working with on Amazon ECS nella GPUs Amazon](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-gpu.html) *Elastic Container Service* Developer Guide.

Gli esempi seguenti mostrano come usare il comando. [GetParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html)

------
#### [ AWS CLI ]

```
$ aws ssm get-parameter --name /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended \
                        --region us-east-2 --output json
```

L'output include le informazioni AMI nel `Value` parametro.

```
{
    "Parameter": {
        "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended",
        "LastModifiedDate": 1555434128.664,
        "Value": "{\"schema_version\":1,\"image_name\":\"amzn2-ami-ecs-gpu-hvm-2.0.20190402-x86_64-ebs\",\"image_id\":\"ami-083c800fe4211192f\",\"os\":\"Amazon Linux 2\",\"ecs_runtime_version\":\"Docker version 18.06.1-ce\",\"ecs_agent_version\":\"1.27.0\"}",
        "Version": 9,
        "Type": "String",
        "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended"
    }
}
```

------
#### [ Python ]

```
from __future__ import print_function

import json
import boto3

ssm = boto3.client('ssm', 'us-east-2')

response = ssm.get_parameter(Name='/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended')
jsonVal = json.loads(response['Parameter']['Value'])
print("image_id   = " + jsonVal['image_id'])
print("image_name = " + jsonVal['image_name'])
```

L'output include solo il nome e l'ID dell'AMI:

```
image_id   = ami-083c800fe4211192f
image_name = amzn2-ami-ecs-gpu-hvm-2.0.20190402-x86_64-ebs
```

------

Gli esempi seguenti illustrano l'uso di [GetParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameters.html).

------
#### [ AWS CLI ]

```
$ aws ssm get-parameters --names  /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name \
                                  /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id \
                         --region us-east-2 --output json
```

L'output include i metadati completi per ciascuno dei parametri:

```
{
    "InvalidParameters": [],
    "Parameters": [
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id",
            "LastModifiedDate": 1555434128.749,
            "Value": "ami-083c800fe4211192f",
            "Version": 9,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id"
        },
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name",
            "LastModifiedDate": 1555434128.712,
            "Value": "amzn2-ami-ecs-gpu-hvm-2.0.20190402-x86_64-ebs",
            "Version": 9,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name"
        }
    ]
}
```

------
#### [ Python ]

```
from __future__ import print_function

import boto3

ssm = boto3.client('ssm', 'us-east-2')

response = ssm.get_parameters(
            Names=['/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name',
                   '/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id'])
for parameter in response['Parameters']:
    print(parameter['Name'] + " = " + parameter['Value'])
```

L'output include l'ID AMI e il nome AMI, utilizzando il percorso completo per i nomi.

```
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id = ami-083c800fe4211192f
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name = amzn2-ami-ecs-gpu-hvm-2.0.20190402-x86_64-ebs
```

------

Gli esempi seguenti mostrano come utilizzare il [GetParametersByPath](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html)comando.

------
#### [ AWS CLI ]

```
$ aws ssm get-parameters-by-path --path /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended \
                                 --region us-east-2 --output json
```

L'output include i metadati completi per tutti i parametri nel percorso specificato.

```
{
    "Parameters": [
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/ecs_agent_version",
            "LastModifiedDate": 1555434128.801,
            "Value": "1.27.0",
            "Version": 8,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/ecs_agent_version"
        },
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/ecs_runtime_version",
            "LastModifiedDate": 1548368308.213,
            "Value": "Docker version 18.06.1-ce",
            "Version": 1,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/ecs_runtime_version"
        },
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id",
            "LastModifiedDate": 1555434128.749,
            "Value": "ami-083c800fe4211192f",
            "Version": 9,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id"
        },
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name",
            "LastModifiedDate": 1555434128.712,
            "Value": "amzn2-ami-ecs-gpu-hvm-2.0.20190402-x86_64-ebs",
            "Version": 9,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name"
        },
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/os",
            "LastModifiedDate": 1548368308.143,
            "Value": "Amazon Linux 2",
            "Version": 1,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/os"
        },
        {
            "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/schema_version",
            "LastModifiedDate": 1548368307.914,
            "Value": "1",
            "Version": 1,
            "Type": "String",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/schema_version"
        }
    ]
}
```

------
#### [ Python ]

```
from __future__ import print_function

import boto3

ssm = boto3.client('ssm', 'us-east-2')

response = ssm.get_parameters_by_path(Path='/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended')
for parameter in response['Parameters']:
    print(parameter['Name'] + " = " + parameter['Value'])
```

L'output include i valori di tutti i nomi dei parametri nel percorso specificato, utilizzando il percorso completo per i nomi.

```
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/ecs_agent_version = 1.27.0
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/ecs_runtime_version = Docker version 18.06.1-ce
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_id = ami-083c800fe4211192f
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/image_name = amzn2-ami-ecs-gpu-hvm-2.0.20190402-x86_64-ebs
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/os = Amazon Linux 2
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended/schema_version = 1
```

------

Per ulteriori informazioni, consulta [Recupero dei metadati AMI ottimizzati per Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/retrieve-ecs-optimized_AMI.html) nella *Amazon Elastic Container Service* Developer Guide.

# Deprecazione di Amazon Linux
<a name="al1-ami-deprecation"></a>

L'AMI Amazon Linux (chiamata anche Amazon Linux 1) ha raggiunto la fine del suo ciclo di vita il 31 dicembre 2023. AWS Batch ha interrotto il supporto per l'AMI Amazon Linux in quanto non riceverà aggiornamenti di sicurezza o correzioni di bug a partire dal 1° gennaio 2024. Per ulteriori informazioni su Amazon Linux end-of-life, consulta le [domande frequenti su AL](https://aws.amazon.com/amazon-linux-ami/faqs/). 

Ti consigliamo di aggiornare gli ambienti di elaborazione esistenti basati su Amazon Linux ad Amazon Linux 2023 per evitare interruzioni impreviste del carico di lavoro e continuare a ricevere aggiornamenti di sicurezza e di altro tipo.

I tuoi ambienti di elaborazione che utilizzano l'AMI Amazon Linux potrebbero continuare a funzionare oltre la end-of-life data del 31 dicembre 2023. Tuttavia, questi ambienti di elaborazione non riceveranno più nuovi aggiornamenti software, patch di sicurezza o correzioni di bug da. AWS Successivamente end-of-life, è tua responsabilità mantenere questi ambienti di calcolo sull'AMI Amazon Linux. Consigliamo di migrare gli ambienti di AWS Batch elaborazione su Amazon Linux 2023 o Amazon Linux 2 per mantenere prestazioni e sicurezza ottimali.

Per assistenza nella migrazione AWS Batch dall'AMI Amazon Linux ad Amazon Linux 2023 o Amazon Linux 2, vedi [Aggiornamento degli ambienti di calcolo](https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html) -. AWS Batch

# Deprecazione delle AMI Amazon EKS Amazon Linux 2
<a name="eks-al2-ami-deprecation"></a>

AWS terminerà il supporto per Amazon Linux 2 ottimizzato per Amazon EKS AMIs, a partire dal 26/11/25. Consigliamo di migrare gli ambienti di calcolo AWS Batch Amazon EKS su Amazon Linux 2023 prima del 26/11/25 per mantenere prestazioni e sicurezza ottimali.

Sebbene tu possa continuare a utilizzare Amazon EKS ottimizzato per Amazon EKS 2 AMIs sui tuoi ambienti di calcolo Amazon EKS oltre la end-of-support data del 26/11/25, questi ambienti di elaborazione non riceveranno più nuovi aggiornamenti software, patch di sicurezza o correzioni di bug. AWS Successivamente end-of-life, è tua responsabilità mantenere questi ambienti di calcolo sull'AMI Amazon Linux 2 ottimizzata per Amazon EKS.

Per ulteriori informazioni su Amazon EKS AL2 end-of-life, consulta la [deprecazione delle AMI di Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-deprecation-faqs.html) nella Guida per FAQs l'utente di *Amazon EKS*.

Per informazioni sulla migrazione degli ambienti di calcolo AWS Batch Amazon EKS da Amazon Linux 2 ad Amazon Linux 2023, consulta. [Come eseguire l'aggiornamento da EKS a EKS AL2 AL2023](eks-migration-2023.md)

# Deprecazione delle AMI Amazon ECS Amazon Linux 2
<a name="ecs-al2-ami-deprecation"></a>

AWS terminerà il supporto per Amazon Linux 2. A partire da gennaio 2026, AWS Batch cambierà l'AMI predefinita per i nuovi ambienti di calcolo Amazon ECS da Amazon Linux 2 ad Amazon Linux 2023. Consigliamo di migrare gli ambienti di calcolo AWS Batch Amazon ECS su Amazon Linux 2023, per mantenere prestazioni e sicurezza ottimali.

Per ulteriori informazioni su Amazon Linux 2 end-of-life, consulta [Amazon Linux 2 FAQs](https://aws.amazon.com/amazon-linux-2/faqs/).

Per informazioni sulle differenze tra Amazon Linux 2 e Amazon Linux 2023, [consulta Confronta Amazon Linux 2023 e Amazon Linux 2](https://docs.aws.amazon.com/linux/al2023/ug/compare-with-al2.html) nella *Guida per l'utente di Amazon Linux 2023*.

*Per informazioni sulle modifiche apportate ad Amazon Linux 2023 per l'AMI ottimizzata per Amazon ECS, consulta [Migrazione da un'AMI ottimizzata per Amazon Linux 2023 per Amazon ECS nella](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/al2-to-al2023-ami-transition.html) Guida per l'utente di Amazon ECS.*

Per informazioni sulla migrazione degli ambienti di calcolo AWS Batch Amazon ECS da Amazon Linux 2 ad Amazon Linux 2023, consulta. [Come migrare da ECS AL2 a ECS 023 AL2](ecs-migration-2023.md)

# Usa i modelli di lancio di Amazon EC2 con AWS Batch
<a name="launch-templates"></a>

AWS Batch supporta l'utilizzo di modelli di lancio di Amazon EC2 con i tuoi ambienti di calcolo EC2. Con i modelli di avvio, puoi modificare la configurazione predefinita delle tue risorse di AWS Batch calcolo senza doverne creare di personalizzate. AMIs

**Nota**  
I modelli di avvio non sono supportati nelle risorse AWS Fargate.

È necessario creare un modello di avvio prima di associarlo a un ambiente di calcolo. Puoi creare un modello di lancio nella console Amazon EC2. In alternativa, puoi utilizzare AWS CLI o un AWS SDK. Ad esempio, il seguente file JSON rappresenta un modello di avvio che ridimensiona il volume di dati Docker per l'AMI della risorsa di AWS Batch calcolo predefinita e lo imposta anche per la crittografia.

```
{
    "LaunchTemplateName": "increase-container-volume-encrypt",
    "LaunchTemplateData": {
        "BlockDeviceMappings": [
            {
                "DeviceName": "/dev/xvda",
                "Ebs": {
                    "Encrypted": true,
                    "VolumeSize": 100,
                    "VolumeType": "gp2"
                }
            }
        ]
    }
}
```

È possibile creare il modello di avvio precedente salvando il codice JSON in un file chiamato `lt-data.json` ed eseguendo il comando seguente. AWS CLI 

```
aws ec2 --region <region> create-launch-template --cli-input-json file://lt-data.json
```

Per ulteriori informazioni sui modelli di lancio, consulta [Launching an Instance from a Launch Template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) nella *Amazon EC2* User Guide.

Se si utilizza un modello di avvio per creare il tuo ambiente di calcolo, è possibile spostare i seguenti parametri di ambiente di calcolo esistenti sul modello di avvio:

**Nota**  
Supponiamo che uno qualsiasi di questi parametri (ad eccezione dei tag Amazon EC2) sia specificato sia nel modello di avvio che nella configurazione dell'ambiente di calcolo. Quindi, i parametri dell'ambiente di calcolo hanno la precedenza. I tag Amazon EC2 vengono uniti tra il modello di lancio e la configurazione dell'ambiente di calcolo. In caso di collisione sulla chiave del tag, il valore nella configurazione dell'ambiente di calcolo ha la precedenza.
+ Coppia di chiavi Amazon EC2
+ ID AMI Amazon EC2
+ Gruppo di sicurezza IDs
+ Tag Amazon EC2

I seguenti parametri del modello di avvio vengono **ignorati da**: AWS Batch
+ Tipo di istanza (specificare i tipi di istanza desiderati al momento della creazione dell'ambiente di calcolo)
+ Ruolo istanza (specificare il ruolo di istanza desiderato al momento della creazione dell'ambiente di calcolo)
+ Sottoreti dell'interfaccia di rete (specificare i tipi di sottoreti desiderati al momento della creazione dell'ambiente di calcolo)
+ Opzioni di mercato delle istanze (AWS Batch deve controllare la configurazione dell'istanza Spot)
+ Disattiva la terminazione dell'API (AWS Batch deve controllare il ciclo di vita dell'istanza)

AWS Batch aggiorna il modello di lancio solo con una nuova versione del modello di avvio durante gli aggiornamenti dell'infrastruttura. Per ulteriori informazioni, consulta [Aggiornare un ambiente di calcolo in AWS Batch](updating-compute-environments.md).

## Modelli di avvio predefiniti e sostituiti
<a name="default-lt-and-overrides"></a>

È possibile definire un modello di avvio predefinito per l'ambiente di calcolo e un modello di avvio alternativo per tipi e famiglie di istanze specifici. Questo può esserti utile in modo che il modello predefinito venga utilizzato per la maggior parte dei tipi di istanze negli ambienti di calcolo.

Le variabili `$Default` di sostituzione `$Latest` possono essere utilizzate invece di denominare una versione specifica. Se non si fornisce un modello di avvio sostitutivo, viene applicato automaticamente il modello di avvio predefinito.

Se si utilizza la `$Latest` variabile `$Default` or, AWS Batch applicherà le informazioni correnti al momento della creazione dell'ambiente di calcolo. Se la versione predefinita o più recente verrà modificata in futuro, è necessario aggiornare le informazioni tramite [UpdateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html)o tramite il pulsante Console di gestione AWS - AWS Batch.

Per fornire ulteriore flessibilità, puoi definire che i modelli di avvio di override vengano applicati a tipi o famiglie di istanze di calcolo specifici.

**Nota**  
È possibile specificare fino a dieci (10) modelli di avvio override per ambiente di calcolo.

Utilizzate il `targetInstanceTypes` parametro per selezionare il tipo o la famiglia di istanza da utilizzare questo modello di avvio di override. Il tipo o la famiglia di istanze devono essere prima identificati dal [https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-instanceTypes](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-instanceTypes)parametro.

Se definisci le sostituzioni dei modelli di avvio e decidi di rimuoverle in un secondo momento, puoi passare un array vuoto per annullare l'impostazione del [https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-overrides](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-overrides)parametro nell'[https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html)operazione API. Puoi anche scegliere di non includere il `overrides` parametro quando invii l'operazione API. `UpdateComputeEnvironment` Per ulteriori informazioni, consulta, [https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-overrides](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html#Batch-Type-LaunchTemplateSpecification-overrides)

Per ulteriori informazioni, [https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecificationOverride.html#Batch-Type-LaunchTemplateSpecificationOverride-targetInstanceTypes](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecificationOverride.html#Batch-Type-LaunchTemplateSpecificationOverride-targetInstanceTypes)consulta la guida di riferimento delle AWS Batch API.

## Dati utente di Amazon EC2 nei modelli di lancio
<a name="lt-user-data"></a>

Puoi fornire i dati utente di Amazon EC2 nel tuo modello di lancio eseguito da [cloud-init](https://cloudinit.readthedocs.io/en/latest/index.html) all'avvio delle istanze. I tuoi dati utente possono eseguire scenari di configurazione comuni, tra cui, a titolo esemplificativo ma non esaustivo, i seguenti:
+ [Inclusione di utenti o gruppi.](https://cloudinit.readthedocs.io/en/latest/topics/examples.html#including-users-and-groups)
+ [Installazione di pacchetti](https://cloudinit.readthedocs.io/en/latest/topics/examples.html#install-arbitrary-packages)
+ [Creazione di partizioni e file system](https://cloudinit.readthedocs.io/en/latest/topics/examples.html#create-partitions-and-filesystems)

I dati utente di Amazon EC2 nei modelli di avvio devono essere in formato di archivio [multiparte MIME](https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive). Questo perché i dati utente vengono uniti ad altri dati AWS Batch utente necessari per configurare le risorse di elaborazione. È possibile unire più blocchi di dati utente in un unico blocco, detto file MIME in più parti. Ad esempio, potresti voler combinare un cloud boothook che configura il daemon Docker con uno script di user data shell che scrive informazioni di configurazione per l'agente container Amazon ECS.

Se lo utilizzi AWS CloudFormation, il [AWS::CloudFormation::Init](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-init.html)tipo può essere utilizzato con lo script di supporto [cfn-init](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-init.html) per eseguire scenari di configurazione comuni.

Un file MIME in più parti è composto dai seguenti elementi:
+ Il tipo di contenuto e la dichiarazione di delimitazione della parte: `Content-Type: multipart/mixed; boundary="==BOUNDARY=="`
+ La dichiarazione della versione MIME: `MIME-Version: 1.0`
+ Uno o più blocchi di dati utente che contengono i seguenti componenti:
  + Il limite di apertura che segnala l'inizio di un blocco di dati utente:`--==BOUNDARY==`. È necessario mantenere vuota la linea prima di questo limite.
  + La dichiarazione del tipo di contenuto per il blocco: `Content-Type: text/cloud-config; charset="us-ascii"`. Per ulteriori informazioni sui tipi di contenuto, consulta la [documentazione di cloud-init](https://cloudinit.readthedocs.io/en/latest/topics/format.html). È necessario lasciare vuota la riga dopo la dichiarazione del tipo di contenuto.
  + Il contenuto dei dati utente, ad esempio un elenco di comandi o `cloud-init` direttive di shell.
+ Il limite di chiusura che segnala la fine del file multiparte MIME:. `--==BOUNDARY==--` È necessario mantenere vuota la linea prima del limite di chiusura.

**Nota**  
Se aggiungi dati utente a un modello di lancio nella console Amazon EC2, puoi incollarli come testo semplice. In alternativa, puoi caricarli da un file. Se utilizzi AWS CLI o un AWS SDK, devi prima `base64` codificare i dati utente e inviare quella stringa come valore del `UserData` parametro quando chiami [CreateLaunchTemplate](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html), come mostrato in questo file JSON.  

```
{
    "LaunchTemplateName": "base64-user-data",
    "LaunchTemplateData": {
        "UserData": "ewogICAgIkxhdW5jaFRlbXBsYXRlTmFtZSI6ICJpbmNyZWFzZS1jb250YWluZXItdm9sdW..."
    }
}
```

**Topics**
+ [Modelli di avvio predefiniti e sostituiti](#default-lt-and-overrides)
+ [Dati utente di Amazon EC2 nei modelli di lancio](#lt-user-data)
+ [Riferimento: esempi di modelli di lancio di Amazon EC2](launch-template-examples.md)

# Riferimento: esempi di modelli di lancio di Amazon EC2
<a name="launch-template-examples"></a>

Di seguito sono riportati alcuni esempi di file MIME multiparte che puoi utilizzare per creare modelli personalizzati.

**Topics**
+ [Esempio: monta un file system Amazon EFS esistente](#example-mount-an-existing-amazon-efs-file-system)
+ [Esempio: sovrascrivi la configurazione predefinita dell'agente container Amazon ECS](#example-override-default-amazon-ecs-container-agent-configuration)
+ [Esempio: monta un file system Amazon FSx for Lustre esistente](#example-mount-an-existing-amazon-fsx-for-lustre-file-system)

## Esempio: monta un file system Amazon EFS esistente
<a name="example-mount-an-existing-amazon-efs-file-system"></a>

**Example**  
Questo esempio di file multiparte MIME configura la risorsa di calcolo per installare il `amazon-efs-utils` pacchetto e montare un file system Amazon EFS esistente su. `/mnt/efs`  

```
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

--==MYBOUNDARY==
Content-Type: text/cloud-config; charset="us-ascii"

packages:
- amazon-efs-utils

runcmd:
- file_system_id_01=fs-abcdef123
- efs_directory=/mnt/efs

- mkdir -p ${efs_directory}
- echo "${file_system_id_01}:/ ${efs_directory} efs tls,_netdev" >> /etc/fstab
- mount -a -t efs defaults

--==MYBOUNDARY==--
```

## Esempio: sovrascrivi la configurazione predefinita dell'agente container Amazon ECS
<a name="example-override-default-amazon-ecs-container-agent-configuration"></a>

**Example**  
Questo esempio di file MIME in più parti sostituisce le impostazioni predefinite per la pulizia di un'immagine Docker per una risorsa di calcolo.  

```
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

--==MYBOUNDARY==
Content-Type: text/x-shellscript; charset="us-ascii"

#!/bin/bash
echo ECS_IMAGE_CLEANUP_INTERVAL=60m >> /etc/ecs/ecs.config
echo ECS_IMAGE_MINIMUM_CLEANUP_AGE=60m >> /etc/ecs/ecs.config

--==MYBOUNDARY==--
```

## Esempio: monta un file system Amazon FSx for Lustre esistente
<a name="example-mount-an-existing-amazon-fsx-for-lustre-file-system"></a>

**Example**  
Questo esempio di file MIME multiparte configura la risorsa di calcolo per installare il `lustre2.10` pacchetto dalla libreria Extras e montare un file system FSx for Lustre esistente su e un nome di montaggio di. `/scratch` `fsx` Questo esempio è per Amazon Linux 2. Per istruzioni di installazione per altre distribuzioni Linux, consulta [Installazione del client Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/install-lustre-client.html) nella *Amazon FSx for Lustre* User Guide. Per ulteriori informazioni, consulta [Mounting your Amazon FSx file system automaticamente](https://docs.aws.amazon.com/fsx/latest/LustreGuide/mount-fs-auto-mount-onreboot.html) nella *Amazon FSx for Lustre User Guide*.  

```
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

--==MYBOUNDARY==
Content-Type: text/cloud-config; charset="us-ascii"

runcmd:
- file_system_id_01=fs-0abcdef1234567890
- region=us-east-2
- fsx_directory=/scratch
- amazon-linux-extras install -y lustre2.10
- mkdir -p ${fsx_directory}
- mount -t lustre ${file_system_id_01}.fsx.${region}.amazonaws.com@tcp:fsx ${fsx_directory}

--==MYBOUNDARY==--
```
Nei [volumi](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html#Batch-Type-ContainerProperties-volumes) e nei membri [MountPoints](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html#Batch-Type-ContainerProperties-mountPoints) delle proprietà del contenitore, i punti di montaggio devono essere mappati nel contenitore.  

```
{
    "volumes": [
        {
            "host": {
                "sourcePath": "/scratch"
            },
            "name": "Scratch"
        }
    ],
    "mountPoints": [
        {
            "containerPath": "/scratch",
            "sourceVolume": "Scratch"
        }
    ],
}
```

# Configurazione del servizio IMDS (Instance Metadata Service)
<a name="imds-compute-environments"></a>

L'Instance Metadata Service (IMDS) fornisce metadati sulle EC2 istanze alle applicazioni in esecuzione su tali istanze. Utilizzali IMDSv2 per tutti i nuovi carichi di lavoro e migra i carichi di lavoro esistenti da a per una maggiore sicurezza. IMDSv1 IMDSv2 *Per ulteriori informazioni su IMDS e sulla configurazione di IMDS, consulta [Usare i metadati dell'istanza per gestire l'istanza e Configurare le EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) [opzioni dei metadati dell'istanza per le nuove istanze nella](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html) Amazon User Guide. EC2 *

## Scenari di configurazione
<a name="imds-configuration-scenarios"></a>

Scegli il metodo di configurazione appropriato in base alla configurazione del tuo ambiente di calcolo:

### AMI predefinita senza modello di avvio
<a name="imds-default-ami-no-lt"></a>

Quando utilizzi l' AWS Batch AMI predefinita e non specifichi un modello di avvio, scegli una di queste opzioni:

1. **Usa l'AMI predefinita di Amazon Linux 2023**: Amazon Linux 2023 richiede IMDSv2 per impostazione predefinita. Quando crei il tuo ambiente di calcolo, seleziona **Amazon Linux 2023** come tipo di immagine.

1. **Imposta la IMDSv2 configurazione a livello di account**: configura il tuo AWS account in modo che sia necessario IMDSv2 per tutte le nuove istanze. Questa impostazione influisce su tutte le nuove istanze che avvii nell'account. Per istruzioni, consulta [Imposta IMDSv2 come predefinito per l'account](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#set-imdsv2-account-defaults) nella *Amazon EC2 User Guide*.
**Nota**  
La configurazione IMDS a livello di account può essere sostituita dal modello di avvio o dalla configurazione AMI. Le impostazioni del modello di avvio hanno la precedenza sulle impostazioni a livello di account.

### AMI personalizzata senza modello di avvio
<a name="imds-custom-ami-no-lt"></a>

Quando utilizzi un'AMI personalizzata senza un modello di avvio, scegli una di queste opzioni:

1. **Usa Amazon Linux 2023 come base**: crea la tua AMI personalizzata utilizzando Amazon Linux 2023 come immagine di base. Per informazioni sulla creazione di contenuti personalizzati AMIs per Batch, vedere[Tutorial: Creare un'AMI per risorse di calcolo](create-batch-ami.md).

1. **Configura IMDSv2 nell'AMI personalizzata**: quando crei l'AMI personalizzata, configurala in base alle esigenze IMDSv2. Per istruzioni, consulta [Configurare le opzioni dei metadati delle istanze per le AMI personalizzate](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration) nella *Amazon EC2 User Guide*.

1. **Imposta la IMDSv2 configurazione a livello di account**: configura il tuo AWS account in modo che sia necessario IMDSv2 per tutte le nuove istanze. Questa impostazione influisce su tutte le nuove istanze che avvii nell'account. Per istruzioni, consulta [Imposta IMDSv2 come predefinito per l'account](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#set-imdsv2-account-defaults) nella *Amazon EC2 User Guide*.
**Nota**  
La configurazione IMDS a livello di account può essere sostituita dal modello di avvio o dalla configurazione AMI. Le impostazioni del modello di avvio hanno la precedenza sulle impostazioni a livello di account.

### Utilizzo dei modelli di avvio
<a name="imds-launch-template"></a>

Quando utilizzi i modelli di avvio nel tuo ambiente di calcolo, aggiungi le opzioni di metadati al modello di lancio in base alle tue esigenze. IMDSv2 Per ulteriori informazioni sull'utilizzo dei modelli di avvio con Batch, consulta[Usa i modelli di lancio di Amazon EC2 con AWS Batch](launch-templates.md).

```
{
    "LaunchTemplateName": "batch-imdsv2-template",
    "VersionDescription": "IMDSv2 only template for Batch",
    "LaunchTemplateData": {
        "MetadataOptions": {
            "HttpTokens": "required"
        }
    }
}
```

Crea il modello di lancio utilizzando la AWS CLI:

```
aws ec2 create-launch-template --cli-input-json file://imds-template.json
```

# EC2 configurazioni
<a name="ec2-configurations"></a>

AWS Batch utilizza Amazon ECS ottimizzato AMIs per ambienti EC2 di calcolo EC2 Spot. L'impostazione predefinita è [Amazon Linux 2](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami) (`ECS_AL2`). A partire da gennaio 2026, l'impostazione predefinita cambierà in [AL2023](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2023ami) ()`ECS_AL2023`. 

AWS terminerà il supporto per Amazon Linux 2. Consigliamo di migrare gli ambienti di calcolo AWS Batch Amazon ECS su Amazon Linux 2023 per mantenere prestazioni e sicurezza ottimali. Per ulteriori informazioni, consulta [Deprecazione delle AMI Amazon ECS Amazon Linux 2](ecs-al2-ami-deprecation.md).

Ti consigliamo di aggiornare gli ambienti di elaborazione esistenti basati su Amazon Linux ad Amazon Linux 2023 per evitare interruzioni impreviste del carico di lavoro e continuare a ricevere aggiornamenti di sicurezza e di altro tipo.

Per informazioni sulla migrazione AWS Batch dall'AMI Amazon Linux ad Amazon Linux 2023, consulta [Come migrare da ECS AL2 a ECS 023 AL2](ecs-migration-2023.md)

**Topics**
+ [Come migrare da ECS AL2 a ECS 023 AL2](ecs-migration-2023.md)

# Come migrare da ECS AL2 a ECS 023 AL2
<a name="ecs-migration-2023"></a>

AL2023 è un sistema operativo basato su Linux progettato per fornire un ambiente sicuro, stabile e ad alte prestazioni per le applicazioni cloud. Per ulteriori informazioni sulle differenze tra AL2 e AL2 023, [consulta Confronta Amazon Linux 2023 e Amazon Linux 2](https://docs.aws.amazon.com/linux/al2023/ug/compare-with-al2.html) nella *Amazon Linux 2023 User Guide*.

A partire da gennaio 2026, AWS Batch cambierà l'AMI predefinita per i nuovi ambienti di calcolo Amazon ECS da Amazon Linux 2 ad Amazon Linux 2023 perché AWS [terminerà il supporto per Amazon](https://aws.amazon.com/amazon-linux-2/faqs/) Linux 2. L'AMI predefinito viene utilizzato quando non si specifica un valore per il campo [ImageType.ec2Configuration](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html) durante la creazione di un nuovo ambiente di calcolo. Consigliamo di migrare gli ambienti di calcolo AWS Batch Amazon ECS su Amazon Linux 2023 per mantenere prestazioni e sicurezza ottimali.

A seconda di come è configurato l'ambiente di calcolo, puoi utilizzare uno dei seguenti percorsi di aggiornamento da 0 a 023. AL2 AL2

**Effettua l'aggiornamento utilizzando Ec2Configuration. ImageType**
+ [Se non stai utilizzando un modello di avvio o sostituzioni di modelli di avvio, modifica Ec2Configuration. ImageType](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageType)a `ECS_AL2023` (o `ECS_AL2023_NVIDIA` quando si usano istanze GPU) e poi esegui. [UpdateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html) 
+ [Se si specifica una configurazione Ec2. ](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride)ImageIdOverride[quindi Ec2Configuration. ImageType](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageType)deve corrispondere al tipo di AMI specificato in [Ec2Configuration. ImageIdOverride](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride). 

  In caso di mancata corrispondenza `ImageIdOverride``ImageType`, l'ambiente di calcolo potrebbe non funzionare correttamente. 

**Esegui l'aggiornamento utilizzando i modelli di avvio**
+ Se utilizzi un modello di lancio che specifica un'AMI basata su`ECS_AL2023`, assicurati che il modello di lancio sia compatibile con Amazon Linux 2023. *Per informazioni sulle modifiche apportate ad Amazon Linux 2023 per l'AMI ottimizzata per Amazon ECS, consulta [Migrazione da un'AMI ottimizzata per Amazon Linux 2023 per Amazon ECS nella](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/al2-to-al2023-ami-transition.html) Guida per l'utente di Amazon ECS.*
+ Per AL2 023 AMIs, verifica che tutti i dati utente o gli script di inizializzazione personalizzati siano compatibili con l'ambiente 023 e il sistema di gestione dei pacchetti. AL2

**Esegui l'aggiornamento utilizzando CloudFormation**
+ Se lo utilizzi CloudFormation per gestire i tuoi ambienti di elaborazione, aggiorna il modello per modificare la `ImageType` proprietà in `Ec2Configuration` from `ECS_AL2` to `ECS_AL2023` (o `ECS_AL2023_NVIDIA` quando usi istanze GPU):

  ```
  ComputeEnvironment:
    Type: AWS::Batch::ComputeEnvironment
    Properties:
      ComputeResources:
        Ec2Configuration:
          - ImageType: ECS_AL2023
  ```

  Quindi aggiorna lo CloudFormation stack per applicare le modifiche.
+ Se il CloudFormation modello specifica l'utilizzo di un'AMI personalizzata`ImageIdOverride`, assicurati che l'ID AMI corrisponda a un AMI AL2 basato su 023 e `ImageType` corrisponda all'impostazione.

## Considerazioni sulla migrazione
<a name="ecs-migration-considerations"></a>

Durante la migrazione da Amazon Linux 2 ad Amazon Linux 2023, considera quanto segue:
+ **Gestione dei pacchetti**: Amazon Linux 2023 utilizza `dnf` invece che `yum` per la gestione dei pacchetti.
+ **Servizi di sistema**: alcuni servizi di sistema e le relative configurazioni possono differire tra AL2 0 AL2 e 023.
+ **Container runtime**: entrambi AL2 e AL2 023 supportano Docker, ma AL2 023 può avere configurazioni predefinite diverse.
+ **Sicurezza**: AL2 023 include funzionalità di sicurezza avanzate e potrebbe richiedere aggiornamenti alle configurazioni relative alla sicurezza.
+ **Instance Metadata Service Version 2 (IMDSv2)**: IMDSv2 è un servizio orientato alla sessione che richiede l'autenticazione basata su token per accedere ai metadati dell'istanza, garantendo una maggiore sicurezza. EC2 Per ulteriori informazioni su IMDS, consulta la sezione [How Instance Metadata Service Version 2 nella](https://docs.aws.amazon.com/configuring-instance-metadata-service.html#instance-metadata-v2-how-it-works) *Amazon EC2 User Guide*.

Per un elenco completo di modifiche e considerazioni sulla migrazione, consulta [Migrazione da Amazon Linux 2 a un'AMI ottimizzata per Amazon ECS 2023 nella Amazon](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/al2-to-al2023-ami-transition.html) ECS User *Guide*.

# Strategie di allocazione del tipo di istanza per AWS Batch
<a name="allocation-strategies"></a>

Quando viene creato un ambiente di elaborazione gestito, AWS Batch seleziona tra quelli `[instanceTypes](https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-instanceTypes)` specificati i tipi di istanza più adatti alle esigenze dei lavori. La strategia di allocazione definisce il comportamento quando AWS Batch richiede capacità aggiuntiva. Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate. Non specificare questo parametro.

`BEST_FIT` (predefinito)  
AWS Batch seleziona il tipo di istanza più adatto alle esigenze dei job con una preferenza per il tipo di istanza con il costo più basso. Se non sono disponibili istanze aggiuntive del tipo di istanza selezionato, AWS Batch attende che siano disponibili. Se non ci sono abbastanza istanze disponibili o se l'utente sta raggiungendo le [quote di EC2 servizio Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html), i lavori aggiuntivi non vengono eseguiti fino al completamento dei processi attualmente in esecuzione. Questa strategia di allocazione riduce i costi, ma può limitare il ridimensionamento. Se utilizzi Spot Fleets con`BEST_FIT`, devi specificare il ruolo IAM di Spot Fleet. `BEST_FIT`non è supportato durante l'aggiornamento degli ambienti di elaborazione. Per ulteriori informazioni, consulta [Aggiornare un ambiente di calcolo in AWS Batch](updating-compute-environments.md).  
AWS Batch gestisce AWS le risorse del tuo account. Gli ambienti di calcolo con la strategia di allocazione BEST\$1FIT utilizzavano originariamente le configurazioni di avvio per impostazione predefinita. Tuttavia, l'uso delle configurazioni di avvio con nuovi AWS account sarà limitato nel tempo. Pertanto, a partire dalla fine di aprile 2024, gli ambienti di calcolo BEST\$1FIT appena creati utilizzeranno per impostazione predefinita i modelli di avvio. Se il tuo ruolo di servizio non dispone delle autorizzazioni per gestire i modelli di lancio, AWS Batch puoi continuare a utilizzare le configurazioni di avvio. Gli ambienti di elaborazione esistenti continueranno a utilizzare le configurazioni di avvio.

`BEST_FIT_PROGRESSIVE`  
AWS Batch seleziona tipi di istanze aggiuntivi sufficientemente grandi da soddisfare i requisiti dei lavori in coda. Sono preferiti i tipi di istanza con un costo inferiore per ogni unità vCPU. Se non sono disponibili istanze aggiuntive dei tipi di istanza selezionati in precedenza, AWS Batch seleziona nuovi tipi di istanza.  
Per i [lavori paralleli a più nodi](multi-node-parallel-jobs.md#multi-node-parallel-jobs.title), AWS Batch sceglie il tipo di istanza ottimale disponibile. Se il tipo di istanza non è disponibile a causa di una capacità insufficiente, gli altri tipi di istanza all'interno della famiglia non vengono avviati.

`SPOT_CAPACITY_OPTIMIZED`  
AWS Batch seleziona uno o più tipi di istanze sufficientemente grandi da soddisfare i requisiti dei lavori in coda. Sono preferiti i tipi di istanza che hanno meno probabilità di essere interrotte. Questa strategia di allocazione è disponibile solo per le risorse di calcolo di istanze Spot.

`SPOT_PRICE_CAPACITY_OPTIMIZED`  
La strategia di allocazione ottimizzata per prezzo e capacità esamina sia il prezzo che la capacità per selezionare i pool di istanze spot che hanno il prezzo più basso possibile e meno probabilità di interruzioni. Questa strategia di allocazione è disponibile solo per le risorse di calcolo di istanze Spot.  
Si consiglia di utilizzare `SPOT_PRICE_CAPACITY_OPTIMIZED` piuttosto che `SPOT_CAPACITY_OPTIMIZED` nella maggior parte dei casi.

Le `BEST_FIT` strategie `BEST_FIT_PROGRESSIVE` and utilizzano istanze On-Demand o Spot, mentre le `SPOT_PRICE_CAPACITY_OPTIMIZED` strategie `SPOT_CAPACITY_OPTIMIZED` and utilizzano istanze Spot. Tuttavia, AWS Batch potrebbe essere necessario superare il limite per `maxvCpus` soddisfare i requisiti di capacità. In questo caso, AWS Batch non supera mai di più `maxvCpus` di una singola istanza.

# Gestione della memoria delle risorse di calcolo
<a name="memory-management"></a>

Quando l'agente container Amazon ECS registra una risorsa di calcolo in un ambiente di elaborazione, deve determinare la quantità di memoria disponibile per la risorsa di elaborazione da riservare per i tuoi lavori. A causa del sovraccarico di memoria della piattaforma e della memoria occupata dal kernel di sistema, questo numero è diverso dalla quantità di memoria installata per le istanze Amazon EC2 . Ad esempio, un'istanza `m4.large` dispone di 8 GiB di memoria installata. Tuttavia, ciò non sempre si traduce in esattamente 8192 MiB di memoria disponibili per i lavori quando la risorsa di elaborazione viene registrata.

Si supponga di specificare 8192 MiB per il job e che nessuna delle risorse di elaborazione disponga di 8192 MiB o più di memoria disponibile per soddisfare questo requisito. Quindi, il lavoro non può essere inserito nel tuo ambiente di elaborazione. Se utilizzi un ambiente di elaborazione gestito, AWS Batch devi avviare un tipo di istanza più grande per soddisfare la richiesta.

L'AMI di risorse di AWS Batch calcolo predefinita riserva inoltre 32 MiB di memoria per l'agente container Amazon ECS e altri processi di sistema critici. Questa memoria non è disponibile per l'allocazione dei lavori. Per ulteriori informazioni, consulta [Memoria di sistema di riserva](ecs-reserved-memory.md).

L'agente del container di Amazon ECS utilizza la funzione Docker `ReadMemInfo()` per eseguire una query sulla memoria totale disponibile per il sistema operativo. Linux fornisce utilità da riga di comando per determinare la memoria totale.

**Example - Determinare la memoria totale in Linux**  
Il **free** comando restituisce la memoria totale riconosciuta dal sistema operativo.  

```
$ free -b
```
Di seguito è riportato un esempio di output per un'`m4.large`istanza che esegue l'AMI Amazon Linux ottimizzata per Amazon ECS.  

```
             total       used       free     shared    buffers     cached
Mem:    8373026816  348180480 8024846336      90112   25534464  205418496
-/+ buffers/cache:  117227520 8255799296
```
Questa istanza ha 8373026816 byte di memoria totale. Ciò significa che sono disponibili 7985 MiB per le attività.

**Topics**
+ [Memoria di sistema di riserva](ecs-reserved-memory.md)
+ [Tutorial: Visualizza la memoria delle risorse di calcolo](viewing-memory.md)
+ [Considerazioni su AWS Batch memoria e vCPU per Amazon EKS](memory-cpu-batch-eks.md)

# Memoria di sistema di riserva
<a name="ecs-reserved-memory"></a>

Se si occupa tutta la memoria di una risorsa di elaborazione con i propri lavori, è possibile che tali processi abbiano a che fare con processi di sistema critici per la memoria e che possano causare un errore di sistema. L'agente container Amazon ECS fornisce una variabile di configurazione `ECS_RESERVED_MEMORY` denominata. Puoi usare questa variabile di configurazione per rimuovere un numero specifico di MiB di memoria dal pool allocato ai tuoi lavori. In questo modo si riserva la memoria per i processi di sistema critici.

L'AMI della risorsa di AWS Batch calcolo predefinita riserva 32 MiB di memoria per l'agente container Amazon ECS e altri processi di sistema critici. Consigliamo di riservare un buffer di memoria del 5% per l'agente container Amazon ECS e altri processi di sistema critici.

# Tutorial: Visualizza la memoria delle risorse di calcolo
<a name="viewing-memory"></a>

Puoi visualizzare la quantità di memoria con cui viene registrata una risorsa di calcolo nella console Amazon ECS o con il funzionamento dell'[DescribeContainerInstances](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeContainerInstances.html)API. Se stai cercando di massimizzare l'utilizzo delle risorse fornendo ai tuoi job quanta più memoria possibile per un particolare tipo di istanza, puoi osservare la memoria disponibile per quella risorsa di elaborazione e quindi assegnare ai job quella quantità di memoria.

**Per visualizzare la memoria delle risorse di calcolo**

1. Apri la console alla [https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. Scegli **Cluster**, quindi scegli il cluster che ospita le risorse di elaborazione da visualizzare.

   Il nome del cluster dell'ambiente di calcolo inizia con il nome dell'ambiente di calcolo.

1. **Scegli Infrastruttura.**

1. In **Istanze di container**, scegli l'istanza del contenitore.

1. La sezione **Risorse e reti** mostra la memoria registrata e disponibile per la risorsa di calcolo.

   Il valore di memoria **della capacità totale** è quello che la risorsa di elaborazione ha registrato con Amazon ECS al momento del primo avvio, mentre il valore di memoria **disponibile** è quello che non è già stato allocato ai lavori.

# Considerazioni su AWS Batch memoria e vCPU per Amazon EKS
<a name="memory-cpu-batch-eks"></a>

In AWS Batch Amazon EKS, puoi specificare le risorse messe a disposizione di un contenitore. Ad esempio, è possibile specificare `requests` o `limits` valori per vCPU e risorse di memoria.

Di seguito sono riportati i vincoli per specificare le risorse vCPU:
+ È necessario specificare almeno una vCPU `requests` o `limits` un valore.
+ Un'unità vCPU equivale a un core fisico o virtuale. 
+ Il valore vCPU deve essere immesso in numeri interi o in incrementi di 0,25. 
+ Il valore vCPU più piccolo valido è 0,25.
+ Se vengono specificati entrambi, il `requests` valore deve essere inferiore o uguale al `limits` valore. In questo modo, è possibile configurare configurazioni vCPU sia soft che hard.
+ I valori vCPU non possono essere specificati nel formato MilliCPU. Ad esempio, `100m` non è un valore valido.
+ AWS Batch utilizza il `requests` valore per ridimensionare le decisioni. Se non `requests` viene specificato un valore, il `limits` valore viene copiato nel `requests` valore.

Di seguito sono riportati i vincoli per specificare le risorse di memoria:
+ È necessario specificare almeno una memoria `requests` o un `limits` valore.
+ I valori di memoria devono essere in mebibytes (MiBs).
+ Se vengono specificati entrambi, il `requests` valore deve essere uguale al `limits` valore.
+ AWS Batch utilizza il `requests` valore per ridimensionare le decisioni. Se non viene specificato un `requests` valore, il `limits` valore viene copiato nel `requests` valore.

Di seguito sono riportati i vincoli per specificare le risorse GPU:
+ Se vengono specificati entrambi, il `requests` valore deve essere uguale al valore. `limits`
+ AWS Batch utilizza il `requests` valore per ridimensionare le decisioni. Se non `requests` viene specificato un valore, il `limits` valore viene copiato nel `requests` valore.

## Esempio: definizioni delle mansioni
<a name="memory-cpu-batch-eks-example-job-definition"></a>

Quanto segue AWS Batch su Amazon EKS Job Definition configura le condivisioni soft vCPU. Ciò consente ad AWS Batch Amazon EKS di utilizzare tutta la capacità vCPU per il tipo di istanza. Tuttavia, se ci sono altri job in esecuzione, al job viene assegnato un massimo di `2` v. CPUs La memoria è limitata a 2 GB.

```
{
   "jobDefinitionName": "MyJobOnEks_Sleep",
   "type": "container",
   "eksProperties": {
       "podProperties": {
           "containers": [
               {
                   "image": "public.ecr.aws/amazonlinux/amazonlinux:2",
                   "command": ["sleep", "60"],
                   "resources": {
                       "requests": {
                           "cpu": "2",
                           "memory": "2048Mi"
                       }
                   }
               }
           ]
       }
   }
}
```

La seguente definizione di processo AWS Batch su Amazon EKS ha un `request` valore `1` e assegna un massimo di `4` v CPUs al lavoro.

```
{
   "jobDefinitionName": "MyJobOnEks_Sleep",
   "type": "container",
   "eksProperties": {
       "podProperties": {
           "containers": [
               {
                   "image": "public.ecr.aws/amazonlinux/amazonlinux:2",
                   "command": ["sleep", "60"],
                   "resources": {
                       "requests": {
                           "cpu": "1"
                       },
                       "limits": {
                           "cpu": "4",
                           "memory": "2048Mi"
                       }
                   }
               }
           ]
       }
   }
}
```

La seguente definizione del processo AWS Batch su Amazon EKS imposta un valore vCPU `1` e un `limits` valore di memoria `limits` di 1 GB.

```
{
   "jobDefinitionName": "MyJobOnEks_Sleep",
   "type": "container",
   "eksProperties": {
       "podProperties": {
           "containers": [
               {
                   "image": "public.ecr.aws/amazonlinux/amazonlinux:2",
                   "command": ["sleep", "60"],
                   "resources": {
                       "limits": {
                           "cpu": "1",
                           "memory": "1024Mi"
                       }
                   }
               }
           ]
       }
   }
}
```

Quando AWS Batch traduce un lavoro AWS Batch su Amazon EKS in un pod Amazon EKS, AWS Batch copia il `limits` valore nel `requests` valore. Questo è se non viene specificato un `requests` valore. Quando inviate la definizione di lavoro di esempio precedente, il contenitore `spec` è il seguente.

```
apiVersion: v1
kind: Pod
...
spec:
  ...
  containers:
    - command:
        - sleep
        - 60
      image: public.ecr.aws/amazonlinux/amazonlinux:2
      resources:
        limits:
          cpu: 1
          memory: 1024Mi
        requests:
          cpu: 1
          memory: 1024Mi
      ...
```

## Nodo, CPU e prenotazioni di memoria
<a name="memory-cpu-batch-eks-node-cpu-memory-reservations"></a>

AWS Batch si basa sulla logica predefinita del `bootstrap.sh` file per le prenotazioni di vCPU e memoria. [Per ulteriori informazioni sul `bootstrap.sh` file, vedere bootstrap.sh.](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2/runtime/bootstrap.sh) Per quanto riguarda le dimensioni della vCPU e delle risorse di memoria, considera gli esempi seguenti.

**Nota**  
Se nessuna istanza è in esecuzione, le prenotazioni di vCPU e memoria possono inizialmente AWS Batch influire sulla logica di scalabilità e sul processo decisionale. Dopo l'esecuzione delle istanze, AWS Batch regola le allocazioni iniziali.

## Esempio: prenotazione della CPU del nodo
<a name="memory-cpu-batch-eks-node-cpu-reservations"></a>

Il valore di prenotazione della CPU viene calcolato in millicore utilizzando il numero totale di v CPUs disponibili per l'istanza.


| Numero vCPU | Percentuale riservata | 
| --- | --- | 
| 1 | 6% | 
| 2 | 1% | 
| 3-4 | 0,5% | 
| 4 e versioni successive | 0,25% | 

Utilizzando i valori precedenti, è vero quanto segue:
+ Il valore di prenotazione della CPU per un'`c5.large`istanza con 2 v CPUs è 70 m. Viene calcolato nel modo seguente: *(1\$160) \$1 (1\$110)* = 70 m.
+ Il valore di riserva della CPU per un'`c5.24xlarge`istanza con 96 v CPUs è 310 m. Viene calcolato nel modo seguente: (1\$160) \$1 (1\$110) \$1 (2\$15) \$1 (92\$12,5) = 310 m.

In questo esempio, sono disponibili 1930 unità vCPU millicore (calcolate 2000-70) per eseguire processi su un'istanza. `c5.large` Supponiamo che il processo richieda `2` (2\$11000 m) unità vCPU, il processo non si adatta a una singola istanza. `c5.large` Tuttavia, un lavoro che richiede unità `1.75` vCPU è adatto.

## Esempio: prenotazione della memoria del nodo
<a name="memory-cpu-batch-eks-node-memory-reservations"></a>

Il valore di prenotazione della memoria viene calcolato in mebibyte utilizzando quanto segue:
+ La capacità dell'istanza in mebibyte. Ad esempio, un'istanza da 8 GB è pari a 7.748. MiB
+ Il `kubeReserved` valore. Il `kubeReserved` valore è la quantità di memoria da riservare ai demoni di sistema. Il `kubeReserved` valore viene calcolato nel modo seguente: *((11 \$1 numero massimo di pod supportato dal tipo di istanza) \$1 255)*. [Per informazioni sul numero massimo di pod supportato da un tipo di istanza, consulta .txt eni-max-pods](https://github.com/awslabs/amazon-eks-ami/blob/main/nodeadm/internal/kubelet/eni-max-pods.txt) 
+ Il valore. `HardEvictionLimit` Quando la memoria disponibile scende al di sotto del `HardEvictionLimit` valore, l'istanza tenta di eliminare i pod.

La formula per calcolare la memoria allocabile è la seguente: (*instance\$1capacity\$1in\$1MiB*) - (11 \$1 ()) - 255 - (*maximum\$1number\$1of\$1pods*)). *`HardEvictionLimit` value.*

 Un'`c5.large`istanza supporta fino a 29 pod. Per un'`c5.large`istanza da 8 GB con un `HardEvictionLimit` valore di 100 MiB, la memoria allocabile è 7074. MiB Viene calcolato nel modo seguente: *(7748 - (11 \$1 29) -255 -100) = 7074* MiB. In questo esempio, un MiB job di 8.192 non rientra in questa istanza anche se si tratta di un'istanza 8 (). gibibyte GiB

## DaemonSets
<a name="memory-cpu-batch-eks-reservations-daemonset-scaling"></a>

Quando si utilizzaDaemonSets, si consideri quanto segue:
+ Se nessuna istanza di AWS Batch Amazon EKS è in esecuzione, DaemonSets può inizialmente influire sulla logica di AWS Batch scalabilità e sul processo decisionale. AWS Batch inizialmente alloca 0,5 unità vCPU e 500 MiB come previsto. DaemonSets Dopo l'esecuzione delle istanze, AWS Batch regola le allocazioni iniziali.
+ Se a DaemonSet definisce limiti di vCPU o memoria, AWS Batch su Amazon EKS i job hanno meno risorse. Ti consigliamo di mantenere il numero DaemonSets di AWS Batch lavori assegnati al più basso possibile.

# Ambienti di elaborazione Fargate
<a name="fargate"></a>

Fargate è una tecnologia che puoi utilizzare AWS Batch per eseguire [container](https://aws.amazon.com/what-are-containers) senza dover gestire server o cluster di istanze Amazon EC2. Con Fargate, non è più necessario effettuare il provisioning, configurare o dimensionare i cluster di macchine virtuali per eseguire i container. Viene anche eliminata la necessità di scegliere i tipi di server, di decidere quando dimensionare i cluster o ottimizzarne il packing.

Quando si eseguono lavori con le risorse Fargate, si impacchetta l'applicazione in contenitori, si specificano i requisiti di CPU e memoria, si definiscono le politiche di rete e IAM e si avvia l'applicazione. Ogni job Fargate ha il proprio limite di isolamento e non condivide il kernel sottostante, le risorse della CPU, le risorse di memoria o l'interfaccia elastica di rete con un altro lavoro.

**Topics**
+ [Quando usare Fargate](when-to-use-fargate.md)
+ [Definizioni di lavoro su Fargate](fargate-job-definitions.md)
+ [Job in coda a Fargate](fargate-job-queues.md)
+ [Ambienti di calcolo su Fargate](fargate-compute-environments.md)

# Quando usare Fargate
<a name="when-to-use-fargate"></a>

Consigliamo di utilizzare Fargate nella maggior parte degli scenari. Fargate avvia e ridimensiona l'elaborazione per soddisfare al meglio i requisiti di risorse specificati per il contenitore. Con Fargate, non è necessario fornire troppo o pagare server aggiuntivi. Inoltre, non è necessario preoccuparsi delle specifiche dei parametri relativi all'infrastruttura, come il tipo di istanza. Quando l'ambiente di elaborazione deve essere ampliato, i lavori eseguiti con risorse Fargate possono iniziare più rapidamente. In genere, sono necessari alcuni minuti per avviare una nuova istanza Amazon EC2. Tuttavia, è possibile eseguire il provisioning dei lavori eseguiti su Fargate in circa 30 secondi. Il tempo esatto richiesto dipende da diversi fattori, tra cui la dimensione dell'immagine del contenitore e il numero di lavori.

Tuttavia, ti consigliamo di utilizzare Amazon EC2 se i tuoi lavori richiedono uno dei seguenti requisiti:
+ Più di 16 v CPUs
+ Più di 120 gibibyte (GiB) di memoria
+ UNA GPU
+ Un'Amazon Machine Image (AMI) personalizzata
+ Qualsiasi parametro [LinuxParameters](job_definition_parameters.md#ContainerProperties-linuxParameters)

Se hai un numero elevato di lavori, ti consigliamo di utilizzare l'infrastruttura Amazon EC2. Ad esempio, se il numero di lavori in esecuzione contemporaneamente supera i limiti di limitazione di Fargate. Questo perché, con EC2, i lavori possono essere assegnati a una velocità maggiore alle risorse EC2 rispetto alle risorse di Fargate. Inoltre, è possibile eseguire più lavori contemporaneamente quando si utilizza EC2. Per ulteriori informazioni, consulta le [quote dei servizi Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-quotas.html#service-quotas-fargate) nella *Amazon Elastic Container Service* Developer Guide.

# Definizioni di lavoro su Fargate
<a name="fargate-job-definitions"></a>

AWS Batch jobs on AWS Fargate non supporta tutti i parametri di definizione dei processi disponibili. Alcuni parametri non sono affatto supportati e altri si comportano in modo diverso per i lavori di Fargate.

L'elenco seguente descrive i parametri di definizione dei processi che non sono validi o altrimenti limitati nei lavori Fargate.

`platformCapabilities`  
Deve essere specificato come`FARGATE`.  

```
"platformCapabilities": [ "FARGATE" ]
```

`type`  
Deve essere specificato come`container`.  

```
"type": "container"
```

Parametri in `containerProperties`    
`executionRoleArn`  
Deve essere specificato per i lavori eseguiti su risorse Fargate. Per ulteriori informazioni, consulta [Ruoli IAM per le attività](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) nella *Guida per sviluppatori di Amazon Elastic Container Service*.  

```
"executionRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole"
```  
`fargatePlatformConfiguration`  
(Facoltativo, solo per le definizioni dei job di Fargate). Specificate la versione della piattaforma Fargate `LATEST` o una versione recente della piattaforma. I valori possibili per `platformVersion` sono `1.3.0``1.4.0`, e `LATEST` (impostazione predefinita).  

```
"fargatePlatformConfiguration": { "platformVersion": "1.4.0" }
```

`instanceType``ulimits`  
Non applicabile ai lavori eseguiti su risorse Fargate.

`memory``vcpus`  
Queste impostazioni devono essere specificate in `resourceRequirements`

`privileged`  
O non specificate questo parametro oppure specificatelo`false`.  

```
"privileged": false
```

`resourceRequirements`  
I requisiti di memoria e vCPU devono essere specificati utilizzando i valori [supportati](job_definition_parameters.md#ContainerProperties-resourceRequirements-Fargate-memory-vcpu). Le risorse GPU non sono supportate per i job eseguiti su risorse Fargate.  
Se si utilizza GuardDuty Runtime Monitoring, si verifica un leggero sovraccarico di memoria per il GuardDuty security agent. Pertanto, il limite di memoria deve includere la dimensione del GuardDuty security agent. Per informazioni sui limiti di memoria del GuardDuty Security Agent, vedere [Limiti di CPU e memoria](https://docs.aws.amazon.com/guardduty/latest/ug/prereq-runtime-monitoring-ecs-support.html#ecs-runtime-agent-cpu-memory-limits) nella *Guida per l'GuardDuty utente*. Per informazioni sulle best practice, consulta [Come posso rimediare agli errori di memoria esaurita nelle mie attività di Fargate dopo aver abilitato il monitoraggio del runtime](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-guard-duty-troubleshooting.html#memory-error) nella *Amazon ECS* Developer Guide.  

```
"resourceRequirements": [
  {"type": "MEMORY", "value": "512"},
  {"type": "VCPU",   "value": "0.25"}
]
```

Parametri in `linuxParameters`    
`devices``maxSwap``sharedMemorySize``swappiness``tmpfs`  
Non applicabile ai lavori eseguiti su risorse Fargate.

Parametri in `logConfiguration`    
`logDriver`  
Solo `awslogs` e `splunk` sono supportati. Per ulteriori informazioni, consulta [Usa il driver di registro awslogs](using_awslogs.md).

Membri in `networkConfiguration`    
`assignPublicIp`  
Se la sottorete privata non dispone di un gateway NAT collegato per inviare traffico a Internet, `[assignPublicIp](https://docs.aws.amazon.com/batch/latest/APIReference/API_NetworkConfiguration.html#Batch-Type-NetworkConfiguration-assignPublicIp)` deve essere "»`ENABLED`. Per ulteriori informazioni, consulta [AWS Batch Ruolo di esecuzione IAM](execution-IAM-role.md).

# Job in coda a Fargate
<a name="fargate-job-queues"></a>

AWS Batch le code di lavoro sono sostanzialmente AWS Fargate invariate. L'unica restrizione è che gli ambienti di elaborazione elencati `computeEnvironmentOrder` devono essere tutti ambienti di calcolo Fargate (o). `FARGATE` `FARGATE_SPOT` Gli ambienti di calcolo EC2 e Fargate non possono essere combinati.

# Ambienti di calcolo su Fargate
<a name="fargate-compute-environments"></a>

AWS Batch gli ambienti di calcolo attivi AWS Fargate non supportano tutti i parametri dell'ambiente di calcolo disponibili. Alcuni parametri non sono affatto supportati. Altri hanno requisiti specifici per Fargate.

L'elenco seguente descrive i parametri dell'ambiente di calcolo che non sono validi o altrimenti limitati nei lavori Fargate.

`type`  
Questo parametro deve essere. `MANAGED`  

```
"type": "MANAGED"
```

Parametri nell'`computeResources`oggetto    
`allocationStrategy``bidPercentage``desiredvCpus``imageId``instanceTypes``ec2Configuration``ec2KeyPair``instanceRole``launchTemplate``minvCpus``placementGroup``spotIamFleetRole`  
Questi non sono applicabili agli ambienti di calcolo Fargate e non possono essere forniti.  
`subnets`  
Se alle sottoreti elencate in questo parametro non sono collegati gateway NAT, il `assignPublicIp` parametro nella definizione del processo deve essere impostato su. `ENABLED`  
`tags`  
Questo non è applicabile agli ambienti di calcolo Fargate e non può essere fornito. Per specificare i tag per gli ambienti di calcolo Fargate, utilizzate il `tags` parametro che non si trova nell'oggetto. `computeResources`  
`type`  
Questo deve essere `FARGATE` o `FARGATE_SPOT`.  

```
"type": "FARGATE_SPOT"
```

# Ambienti di elaborazione Amazon EKS
<a name="eks"></a>

[Guida introduttiva ad AWS Batch Amazon EKS](getting-started-eks.md)fornisce una breve guida alla creazione di ambienti di calcolo EKS. Questa sezione fornisce maggiori dettagli sugli ambienti di calcolo Amazon EKS.

![\[AWS Batch workflow diagram showing integration with Amazon EKS, ECS, Fargate, and EC2.\]](http://docs.aws.amazon.com/it_it/batch/latest/userguide/images/batch-on-eks.png)


AWS Batch semplifica i carichi di lavoro in batch sui cluster Amazon EKS fornendo funzionalità batch gestite. Ciò include l'accodamento, il monitoraggio delle dipendenze, la gestione delle priorità e dei nuovi tentativi di lavoro, la gestione dei pod e la scalabilità dei nodi. AWS Batch può gestire più zone di disponibilità e più tipi e dimensioni di istanze Amazon EC2. AWS Batch integra diverse best practice Spot di Amazon EC2 per eseguire i carichi di lavoro con tolleranza ai guasti, riducendo al minimo le interruzioni. Puoi utilizzarlo AWS Batch per eseguire una manciata di lavori durante la notte o milioni di lavori cruciali con sicurezza.

![\[AWS Batch workflow on Amazon EKS, showing job queue, compute environment, and EC2 instances.\]](http://docs.aws.amazon.com/it_it/batch/latest/userguide/images/batch-on-eks-detail.png)


AWS Batch è un servizio gestito che orchestra carichi di lavoro in batch nei Kubernetes cluster gestiti da Amazon Elastic Kubernetes Service (Amazon EKS). AWS Batch esegue questa orchestrazione all'esterno dei cluster utilizzando un modello «overlay». Poiché AWS Batch si tratta di un servizio gestito, non ci sono Kubernetes componenti (ad esempio, operatori o risorse personalizzate) da installare o gestire nel cluster. AWS Batch richiede solo che il cluster sia configurato con Role-Based Access Controls (RBAC) che consentono di comunicare con AWS Batch il server API. Kubernetes AWS Batch chiamate Kubernetes APIs per creare, monitorare ed eliminare Kubernetes pod e nodi.

AWS Batch dispone di una logica di scalabilità integrata per scalare Kubernetes i nodi in base al carico della coda di lavoro con ottimizzazioni in termini di allocazione della capacità lavorativa. Quando la coda dei processi è vuota, riduce AWS Batch i nodi alla capacità minima impostata, che per impostazione predefinita è zero. AWS Batch gestisce l'intero ciclo di vita di questi nodi e decora i nodi con etichette e macchie. In questo modo, altri Kubernetes carichi di lavoro non vengono collocati sui nodi gestiti da. AWS Batch L'eccezione è che possono indirizzare AWS Batch i nodi per fornire il monitoraggio e altre funzionalità necessarie per la corretta esecuzione dei lavori. `DaemonSets` Inoltre, AWS Batch non esegue job, in particolare pod, su nodi del cluster che non gestisce. In questo modo, è possibile utilizzare logiche e servizi di scalabilità separati per altre applicazioni del cluster.

Per inviare lavori AWS Batch, interagisci direttamente con l' AWS Batch API. AWS Batch traduce i lavori `podspecs` e quindi crea le richieste per posizionare i pod sui nodi gestiti da AWS Batch nel tuo cluster Amazon EKS. Puoi utilizzare strumenti come visualizzare i pod e `kubectl` i nodi in esecuzione. Quando un pod ha completato la sua esecuzione, AWS Batch elimina il pod che ha creato per mantenere un carico inferiore sul Kubernetes sistema.

Puoi iniziare collegando un cluster Amazon EKS valido con AWS Batch. Quindi allega una coda di AWS Batch lavoro e registra una definizione di processo Amazon EKS utilizzando attributi `podspec` equivalenti. Infine, invia i lavori utilizzando l'operazione [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)API che fa riferimento alla definizione del lavoro. Per ulteriori informazioni, consulta [Guida introduttiva ad AWS Batch Amazon EKS](getting-started-eks.md).

## Amazon EKS
<a name="compute-environments-eks"></a>

**Topics**
+ [Amazon EKS](#compute-environments-eks)
+ [AMI Amazon EKS predefinita](eks-ce-ami-selection.md)
+ [Ambienti AMI misti](mixed-ami-environments.md)
+ [Versioni di Kubernetes supportate](supported_kubernetes_version.md)
+ [Aggiorna la Kubernetes versione dell'ambiente di calcolo](updating-k8s-version-ce.md)
+ [Responsabilità condivisa dei nodi Kubernetes](eks-ce-shared-responsibility.md)
+ [Esegui un DaemonSet su nodi AWS Batch gestiti](daemonset-on-batch-eks-nodes.md)
+ [Personalizza i modelli di lancio di Amazon EKS](eks-launch-templates.md)
+ [Come eseguire l'aggiornamento da EKS a EKS AL2 AL2023](eks-migration-2023.md)

# AMI Amazon EKS predefinita
<a name="eks-ce-ami-selection"></a>

Quando crei un ambiente di calcolo Amazon EKS, non è necessario specificare un'Amazon Machine Image (AMI). AWS Batch seleziona un'AMI ottimizzata per Amazon EKS in base alla Kubernetes versione e ai tipi di istanza specificati nella [CreateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html)richiesta. In generale, ti consigliamo di utilizzare la selezione AMI predefinita. Per ulteriori informazioni su Amazon EKS optimized AMIs, consulta [Amazon Linux ottimizzato per Amazon EKS AMIs](https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html) nella *Guida per l'utente di Amazon EKS*.

**Importante**  
Amazon Linux 2023 AMIs è l'impostazione predefinita AWS Batch per Amazon EKS.  
AWS terminerà il supporto per Amazon EKS AL2 ottimizzato e AL2 accelerato AMIs a partire dal 26/11/25. Puoi continuare a utilizzare Amazon Linux 2 ottimizzato per Amazon EKS AWS Batch fornito AMIs sui tuoi ambienti di calcolo Amazon EKS oltre la end-of-support data del 26/11/25, tuttavia questi ambienti di elaborazione non riceveranno più nuovi aggiornamenti software, patch di sicurezza o correzioni di bug. AWS*Per ulteriori informazioni sull'aggiornamento da a, consulta la Guida per l'utente. AL2 AL2023 [Come eseguire l'aggiornamento da EKS a EKS AL2 AL2023](eks-migration-2023.md)AWS Batch *

Esegui il comando seguente per vedere quale tipo di AMI è AWS Batch stato selezionato per il tuo ambiente di calcolo Amazon EKS. L'esempio seguente è un tipo di istanza non GPU.

```
# compute CE example: indicates Batch has chosen the AL2 x86 or ARM EKS 1.32 AMI, depending on instance types
    $ aws batch describe-compute-environments --compute-environments My-Eks-CE1 \
        | jq '.computeEnvironments[].computeResources.ec2Configuration'
    [
      {
        "imageType": "EKS_AL2",
        "imageKubernetesVersion": "1.32"
      }
    ]
```

L'esempio seguente è un tipo di istanza GPU.

```
# GPU CE example: indicates Batch has choosen the AL2 x86 EKS Accelerated 1.32 AMI
    $ aws batch describe-compute-environments --compute-environments My-Eks-GPU-CE \
        | jq '.computeEnvironments[].computeResources.ec2Configuration'
    [
      {
        "imageType": "EKS_AL2_NVIDIA",
        "imageKubernetesVersion": "1.32"
      }
    ]
```

# Ambienti AMI misti
<a name="mixed-ami-environments"></a>

Puoi utilizzare le sostituzioni dei modelli di avvio per creare ambienti di calcolo con Amazon Linux 2 () AL2 e Amazon Linux 2023 (). AL2023 AMIs Ciò è utile per utilizzare architetture diverse AMIs per diverse o durante i periodi di migrazione durante la transizione da a. AL2 AL2023

**Nota**  
AWS terminerà il supporto per Amazon EKS AL2 ottimizzato e AL2 accelerato AMIs a partire dal 26/11/25. Sebbene tu possa continuare a utilizzare Amazon Linux 2 ottimizzato per Amazon EKS AWS Batch fornito AMIs sui tuoi ambienti di calcolo Amazon EKS oltre la end-of-support data del 26/11/25, questi ambienti di elaborazione non riceveranno più nuovi aggiornamenti software, patch di sicurezza o correzioni di bug. AWS Gli ambienti AMI misti possono essere utili durante il periodo di transizione, consentendoti di migrare gradualmente i carichi di lavoro verso, pur AL2023 mantenendo la compatibilità con i carichi di lavoro AL2 basati su quelli esistenti.

Esempio di configurazione che utilizza entrambi i tipi di AMI:

```
{
  "computeResources": {
    "launchTemplate": {
      "launchTemplateId": "TemplateId",
      "version": "1",
      "userdataType": "EKS_BOOTSTRAP_SH",
      "overrides": [
        {
          "instanceType": "c5.large",
          "imageId": "ami-al2-custom",
          "userdataType": "EKS_BOOTSTRAP_SH"
        },
        {
          "instanceType": "c6a.large",
          "imageId": "ami-al2023-custom",
          "userdataType": "EKS_NODEADM"
        }
      ]
    },
    "instanceTypes": ["c5.large", "c6a.large"]
  }
}
```

# Versioni di Kubernetes supportate
<a name="supported_kubernetes_version"></a>

AWS Batch su Amazon EKS attualmente supporta le seguenti Kubernetes versioni:
+ `1.34`
+ `1.33`
+ `1.32`
+ `1.31`
+ `1.30`
+ `1.29`

Potresti visualizzare un messaggio di errore simile al seguente quando utilizzi l'operazione `CreateComputeEnvironment` API o l'operazione `UpdateComputeEnvironment` API per creare o aggiornare un ambiente di calcolo. Questo problema si verifica se si specifica una versione non supportata Kubernetes in. `EC2Configuration`

```
At least one imageKubernetesVersion in EC2Configuration is not supported.
```

Per risolvere questo problema, elimina l'ambiente di calcolo e quindi ricrealo con una versione supportata. Kubernetes 

Puoi eseguire un aggiornamento di versione minore sul tuo cluster Amazon EKS. Ad esempio, puoi aggiornare il cluster da `1.xx` a `1.yy` anche se la versione secondaria non è supportata. 

Tuttavia, lo stato dell'ambiente di calcolo potrebbe cambiare `INVALID` dopo un aggiornamento della versione principale. Ad esempio, se si esegue un aggiornamento della versione principale da `1.xx` a`2.yy`. Se la versione principale non è supportata da AWS Batch, viene visualizzato un messaggio di errore analogo al seguente.

```
reason=CLIENT_ERROR - ... EKS Cluster version [2.yy] is unsupported
```

# Aggiorna la Kubernetes versione dell'ambiente di calcolo
<a name="updating-k8s-version-ce"></a>

Con AWS Batch, puoi aggiornare la Kubernetes versione di un ambiente di calcolo per supportare gli upgrade dei cluster Amazon EKS. La Kubernetes versione di un ambiente di calcolo è la versione AMI di Amazon EKS per i Kubernetes nodi che vengono AWS Batch avviati per eseguire processi. Puoi eseguire un upgrade di Kubernetes versione sui loro nodi Amazon EKS prima o dopo aver aggiornato la versione del piano di controllo del cluster Amazon EKS. Ti consigliamo di aggiornare i nodi dopo aver aggiornato il piano di controllo. Per ulteriori informazioni, consulta [Aggiornamento di una Kubernetes versione del cluster Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/update-cluster.html) nella *Guida per l'utente di Amazon EKS*.

Per aggiornare la Kubernetes versione di un ambiente di calcolo, utilizza l'operazione [https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html)API.

```
$ aws batch update-compute-environment \
    --compute-environment <compute-environment-name> \
    --compute-resources \
      'ec2Configuration=[{imageType=EKS_AL2,imageKubernetesVersion=1.32}]'
```

# Responsabilità condivisa dei nodi Kubernetes
<a name="eks-ce-shared-responsibility"></a>

La manutenzione degli ambienti di elaborazione è una responsabilità condivisa.
+ Non modificare o rimuovere AWS Batch nodi, etichette, tinte, namespace, modelli di avvio o gruppi con ridimensionamento automatico. Non aggiungere macchie ai nodi gestiti. AWS Batch Se apporti una di queste modifiche, l'ambiente di calcolo non può essere supportato e si verificano errori, comprese le istanze inattive.
+ Non indirizzate i pod verso nodi gestiti. AWS Batch Se indirizzate i pod verso i nodi gestiti, si verificheranno problemi di scalabilità e code di lavoro bloccate. Esegui carichi di lavoro che non vengono utilizzati AWS Batch su nodi autogestiti o gruppi di nodi gestiti. Per ulteriori informazioni, consulta [Gruppi di nodi gestiti](https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html) nella *Guida per l'utente di Amazon EKS*.
+ Puoi scegliere come target DaemonSet a da eseguire su nodi AWS Batch gestiti. Per ulteriori informazioni, consulta [Esegui un DaemonSet su nodi AWS Batch gestiti](daemonset-on-batch-eks-nodes.md).

AWS Batch non aggiorna automaticamente l'ambiente di calcolo. AMIs È tua responsabilità aggiornarli. Esegui il seguente comando per aggiornare il tuo AMI AMIs alla versione più recente.

```
$ aws batch update-compute-environment \
    --compute-environment <compute-environment-name> \
    --compute-resources 'updateToLatestImageVersion=true'
```

AWS Batch non aggiorna automaticamente la Kubernetes versione. Esegui il comando seguente per aggiornare la Kubernetes versione del tuo ambiente informatico a*1.32*.

```
$ aws batch update-compute-environment \
    --compute-environment <compute-environment-name> \
    --compute-resources \
      'ec2Configuration=[{imageType=EKS_AL2,imageKubernetesVersion=1.32}]'
```

Quando esegui l'aggiornamento a un'AMI o alla Kubernetes versione più recente, puoi specificare se terminare i lavori quando vengono aggiornati (`terminateJobsOnUpdate`) e per quanto tempo attendere prima che un'istanza venga sostituita se i lavori in esecuzione non finiscono (`jobExecutionTimeoutMinutes`.) Per ulteriori informazioni, consulta [Aggiornare un ambiente di calcolo in AWS Batch](updating-compute-environments.md) e la policy di aggiornamento dell'infrastruttura ([https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdatePolicy.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdatePolicy.html)) impostata nell'operazione [https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html)API.

# Esegui un DaemonSet su nodi AWS Batch gestiti
<a name="daemonset-on-batch-eks-nodes"></a>

AWS Batch imposta le macchie sui nodi AWS Batch gestitiKubernetes. Puoi scegliere come target DaemonSet a da eseguire su nodi AWS Batch gestiti con quanto segue`tolerations`.

```
tolerations:
  - key: "batch.amazonaws.com/batch-node"
    operator: "Exists"
```

Un altro modo per eseguire questa operazione è il seguente`tolerations`.

```
tolerations:
  - key: "batch.amazonaws.com/batch-node"
    operator: "Exists"
    effect: "NoSchedule"
  - key: "batch.amazonaws.com/batch-node"
    operator: "Exists"
    effect: "NoExecute"
```

# Personalizza i modelli di lancio di Amazon EKS
<a name="eks-launch-templates"></a>

AWS Batch su Amazon EKS supporta i modelli di lancio. Esistono dei vincoli su ciò che il modello di lancio può fare.

**Importante**  
Per EKS AL2 AMIs, corre AWS Batch . `/etc/eks/bootstrap.sh` Non eseguirlo `/etc/eks/bootstrap.sh` nel modello o negli cloud-init user-data script di lancio. È possibile aggiungere parametri aggiuntivi oltre al `--kubelet-extra-args` parametro di [bootstrap.sh](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2/runtime/bootstrap.sh). A tale scopo, impostate la `AWS_BATCH_KUBELET_EXTRA_ARGS` variabile nel `/etc/aws-batch/batch.config` file. Vedi l'esempio seguente per i dettagli.
Per EKS AL2023, AWS Batch utilizza il [NodeConfigSpec](https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#nodeconfigspec)formato EKS per far sì che le istanze si uniscano al cluster EKS. AWS Batch vengono [ClusterDetails](https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#clusterdetails)compilati [NodeConfigSpec](https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#nodeconfigspec)per il cluster EKS e non è necessario specificarli.

**Nota**  
Ti consigliamo di non impostare nessuna delle seguenti [https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#nodeconfigspec](https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#nodeconfigspec)impostazioni nel modello di lancio poiché AWS Batch sostituiranno i tuoi valori. Per ulteriori informazioni, consulta [Responsabilità condivisa dei nodi Kubernetes](eks-ce-shared-responsibility.md).  
`Taints`
`Cluster Name`
`apiServerEndpoint`
`certificatAuthority`
`CIDR`
Non creare etichette con il prefisso `batch.amazonaws.com/`

**Nota**  
Se il modello di avvio viene modificato dopo la [CreateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html)chiamata, [https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html)deve essere chiamato per valutare la versione del modello di avvio da sostituire.

**Topics**
+ [Aggiungi argomenti `kubelet` aggiuntivi](#kubelet-extra-args)
+ [Configura il runtime del contenitore](#change-container-runtime)
+ [Montare un volume Amazon EFS](#mounting-efs-volume)
+ [IPv6 supporto](#eks-ipv6-support)

## Aggiungi argomenti `kubelet` aggiuntivi
<a name="kubelet-extra-args"></a>

AWS Batch supporta l'aggiunta di argomenti aggiuntivi al `kubelet` comando. Per l'elenco dei parametri supportati, [https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/](https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/)consultate la *Kubernetesdocumentazione*. Nell'esempio seguente per EKS AL2 AMIs, `--node-labels mylabel=helloworld` viene aggiunto alla `kubelet` riga di comando.

```
MIME-Version: 1.0
      Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

      --==MYBOUNDARY==
      Content-Type: text/x-shellscript; charset="us-ascii"

      #!/bin/bash
      mkdir -p /etc/aws-batch

      echo AWS_BATCH_KUBELET_EXTRA_ARGS=\"--node-labels mylabel=helloworld\" >> /etc/aws-batch/batch.config

      --==MYBOUNDARY==--
```

Per EKS AL2023 AMIs il formato di file è YAML. *Per l'elenco dei parametri supportati, consulta la [https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#nodeconfigspec](https://awslabs.github.io/amazon-eks-ami/nodeadm/doc/api/#nodeconfigspec)Kubernetesdocumentazione.* Nell'esempio seguente per EKS AL2023 AMIs, `--node-labels mylabel=helloworld` viene aggiunto alla `kubelet` riga di comando.

```
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

--==MYBOUNDARY==
Content-Type: application/node.eks.aws

apiVersion: node.eks.aws/v1alpha1
kind: NodeConfig
spec:
  kubelet:
    flags:
    - --node-labels=mylabel=helloworld

--==MYBOUNDARY==--
```

## Configura il runtime del contenitore
<a name="change-container-runtime"></a>

È possibile utilizzare la variabile di AWS Batch `CONTAINER_RUNTIME` ambiente per configurare il runtime del contenitore su un nodo gestito. L'esempio seguente imposta il runtime del contenitore su `containerd` when `bootstrap.sh` run. Per ulteriori informazioni, [https://kubernetes.io/docs/setup/production-environment/container-runtimes/#containerd](https://kubernetes.io/docs/setup/production-environment/container-runtimes/#containerd)consultate la *Kubernetesdocumentazione*. 

Se si utilizza un'`EKS_AL2023_NVIDIA`AMI ottimizzata `EKS_AL2023` o non è necessario specificare il runtime del contenitore poiché è supportato solo **containerd**.

**Nota**  
La variabile di `CONTAINER_RUNTIME` ambiente è equivalente all'`--container-runtime`opzione di. `bootstrap.sh` Per ulteriori informazioni, [https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/#options](https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/#options)consulta la *Kubernetesdocumentazione*.

```
MIME-Version: 1.0
      Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

      --==MYBOUNDARY==
      Content-Type: text/x-shellscript; charset="us-ascii"

      #!/bin/bash
      mkdir -p /etc/aws-batch

      echo CONTAINER_RUNTIME=containerd >> /etc/aws-batch/batch.config

      --==MYBOUNDARY==--
```

## Montare un volume Amazon EFS
<a name="mounting-efs-volume"></a>

Puoi utilizzare i modelli di avvio per montare volumi sul nodo. Nell'esempio seguente, vengono utilizzate `runcmd` le impostazioni `cloud-config` `packages` e. Per ulteriori informazioni, consulta gli [esempi di configurazione di Cloud](https://cloudinit.readthedocs.io/en/latest/topics/examples.html) nella *cloud-initdocumentazione*.

```
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="==MYBOUNDARY=="

--==MYBOUNDARY==
Content-Type: text/cloud-config; charset="us-ascii"

packages:
- amazon-efs-utils

runcmd:
- file_system_id_01=fs-abcdef123
- efs_directory=/mnt/efs

- mkdir -p ${efs_directory}
- echo "${file_system_id_01}:/ ${efs_directory} efs _netdev,noresvport,tls,iam 0 0" >> /etc/fstab
- mount -t efs -o tls ${file_system_id_01}:/ ${efs_directory}

--==MYBOUNDARY==--
```

Per utilizzare questo volume nel job, è necessario aggiungerlo nel parametro [EksProperties](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksProperties.html) a. [RegisterJobDefinition](https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html) L'esempio seguente è una parte importante della definizione del processo.

```
{
    "jobDefinitionName": "MyJobOnEks_EFS",
    "type": "container",
    "eksProperties": {
        "podProperties": {
            "containers": [
                {
                    "image": "public.ecr.aws/amazonlinux/amazonlinux:2",
                    "command": ["ls", "-la", "/efs"],
                    "resources": {
                        "limits": {
                            "cpu": "1",
                            "memory": "1024Mi"
                        }
                    },
                    "volumeMounts": [
                        {
                            "name": "efs-volume",
                            "mountPath": "/efs"
                        }
                    ]
                }
            ],
            "volumes": [
                {
                    "name": "efs-volume",
                    "hostPath": {
                        "path": "/mnt/efs"
                    }
                }
            ]
        }
    }
}
```

Nel nodo, il volume Amazon EFS è montato nella `/mnt/efs` directory. Nel contenitore per il job Amazon EKS, il volume viene montato nella `/efs` directory.

## IPv6 supporto
<a name="eks-ipv6-support"></a>

AWS Batch supporta i cluster Amazon EKS con IPv6 indirizzi. Non sono richieste personalizzazioni per AWS Batch il supporto. Tuttavia, prima di iniziare, ti consigliamo di rivedere le considerazioni e le condizioni descritte nella sezione [Assegnazione di IPv6 indirizzi a pod e servizi nella](https://docs.aws.amazon.com/eks/latest/userguide/cni-ipv6.html) *Amazon* EKS User Guide.

# Come eseguire l'aggiornamento da EKS a EKS AL2 AL2023
<a name="eks-migration-2023"></a>

Gli Amazon EKS ottimizzati AMIs sono disponibili in due famiglie basate su Amazon Linux 2 (AL2) e Amazon Linux 2023 (AL2023). AL2023 è un sistema operativo basato su Linux progettato per fornire un ambiente sicuro, stabile e ad alte prestazioni per le tue applicazioni cloud. Per ulteriori informazioni sulle differenze AL2 e AL2023 consulta [l'aggiornamento da Amazon Linux 2 ad Amazon Linux 2023](https://docs.aws.amazon.com/eks/latest/userguide/al2023.html) nella *Amazon EKS User Guide*.

**Importante**  
AWS terminerà il supporto per Amazon EKS AL2 ottimizzato e AL2 accelerato AMIs a partire dal 26/11/25. Consigliamo di migrare gli ambienti di calcolo AWS Batch Amazon EKS su Amazon Linux 2023 prima del 26/11/25 per mantenere prestazioni e sicurezza ottimali. Sebbene tu possa continuare a utilizzare Amazon Linux 2 ottimizzato per Amazon EKS AWS Batch fornito AMIs sui tuoi ambienti di calcolo Amazon EKS oltre la end-of-support data del 26/11/25, questi ambienti di elaborazione non riceveranno più nuovi aggiornamenti software, patch di sicurezza o correzioni di bug. AWS Successivamente end-of-life, è tua [responsabilità mantenere](eks-ce-shared-responsibility.md#eks-ce-shared-responsibility.title) questi ambienti di calcolo sull'AMI Amazon Linux 2 ottimizzata per Amazon EKS.

A seconda di come è configurato l'ambiente di calcolo, puoi utilizzare uno dei seguenti percorsi di aggiornamento da a AL2 . AL2023

**Effettua l'aggiornamento utilizzando Ec2Configuration. ImageType**
+ [Se non stai utilizzando un modello di avvio o sostituzioni di modelli di avvio, modifica Ec2Configuration. ImageType](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageType)a `EKS_AL2023` o `EKS_AL2023_NVIDIA` e poi esegui. [UpdateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html) 
+ Se si specifica una configurazione [Ec2. ](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride)ImageIdOverride[quindi Ec2Configuration. ImageType](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageType)deve corrispondere al tipo di AMI specificato in [Ec2Configuration. ImageIdOverride](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html#Batch-Type-Ec2Configuration-imageIdOverride). 

  In caso di mancata corrispondenza `ImageIdOverride``ImageType`, il nodo non entrerà a far parte del cluster. 

**Esegui l'aggiornamento utilizzando i modelli di avvio**
+ Se in un modello di avvio o in un modello di avvio sono stati definiti argomenti `kubelet` aggiuntivi, è necessario aggiornarli al nuovo [formato degli argomenti `kubelet` aggiuntivi](eks-launch-templates.md#kubelet-extra-args.title).

  Se il formato degli argomenti `kubelet` aggiuntivi non corrisponde, gli argomenti aggiuntivi non vengono applicati.
+ Infatti AL2023 AMIs, **containerd** è l'unico runtime di container supportato. Non è necessario specificare il runtime del contenitore `EKS_AL2023` nel modello di avvio.

  Non è possibile specificare un runtime di contenitore personalizzato con`EKS_AL2023`.
+ Se utilizzi un modello di avvio o un override del modello di avvio che specifica un AMI basato su, `EKS_AL2023` devi impostare [UserDataType](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html) su. `EKS_NODEADM` 

  Se non combini con l'AMI `userdataType` e, il nodo non entrerà a far parte del cluster EKS.