

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

# Ridimensiona manualmente un cluster Amazon EMR in esecuzione
<a name="emr-manage-resize"></a>

Puoi aggiungere e rimuovere istanze da gruppi di istanze core e task e flotte di istanze in un cluster in esecuzione con o l' Console di gestione AWS AWS CLI API Amazon EMR. Se un cluster utilizza gruppi di istanze, deve essere cambiato esplicitamente il conteggio delle istanze. Se il cluster utilizza parchi di istanze, è possibile modificare le unità di destinazione per le istanze on demand e le istanze Spot. Il parco di istanze aggiunge e rimuove le istanze per soddisfare la nuova destinazione. Per ulteriori informazioni, consulta [Opzioni del parco istanze](emr-instance-fleet.md#emr-instance-fleet-options). Le applicazioni possono utilizzare le nuove istanze Amazon EC2 fornite per ospitare i nodi non appena sono disponibili. Quando le istanze vengono rimosse, Amazon EMR chiude le attività in modo da non interrompere i lavori e proteggerli dalla perdita di dati. Per ulteriori informazioni, consulta [Terminazione al completamento dell'attività](emr-scaledown-behavior.md#emr-scaledown-terminate-task).

## Ridimensionamento di un cluster con la console
<a name="resize-console"></a>

È possibile utilizzare la console di Amazon EMR per ridimensionare un cluster in esecuzione.

------
#### [ Console ]

**Modifica del conteggio delle istanze di un cluster esistente con la nuova console**

1. [Accedi a e apri Console di gestione AWS la console Amazon EMR su https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. In **EMR on EC2** (EMR su EC2), nel riquadro di navigazione a sinistra, scegli **Clusters** (Cluster) e seleziona il cluster da aggiornare. Il cluster deve essere in esecuzione; non è possibile ridimensionare un cluster di provisioning o terminato.

1. Nella scheda **Instances** (Istanze) della pagina dei dettagli del cluster, visualizza il pannello **Instance groups** (Gruppi di istanze). 

1. Per ridimensionare un gruppo di istanze esistente, utilizza il pulsante di opzione accanto al gruppo di istanze core o attività che desideri ridimensionare, quindi scegli **Resize instance group** (Ridimensiona gruppo di istanze). Specifica il nuovo numero di istanze per il gruppo di istanze, quindi seleziona **Resize** (Ridimensiona).
**Nota**  
Se scegli di ridurre le dimensioni di un gruppo di istanze in esecuzione, Amazon EMR selezionerà in modo intelligente le istanze da rimuovere dal gruppo per ridurre al minimo la perdita di dati. Per un controllo più granulare dell'operazione di ridimensionamento, puoi selezionare l'**ID** del gruppo di istanze, scegliere le istanze che desideri rimuovere e quindi utilizzare l'opzione **Terminate** (Termina). Per ulteriori informazioni sul comportamento di riduzione intelligente, consulta la sezione [Opzioni di scalabilità verso il basso per i cluster Amazon EMR](emr-scaledown-behavior.md).

1. Se desideri annullare l'operazione di ridimensionamento, puoi utilizzare il pulsante di opzione per un gruppo di istanze con lo stato **Resizing** (In fase di ridimensionamento) e quindi scegliere **Stop resize** (Interrompi il ridimensionamento) dall'elenco delle operazioni.

1. Per aggiungere uno o più gruppi di istanze attività al cluster in risposta all'aumento del carico di lavoro, scegli **Add task instance group** (Aggiungi gruppo di istanze attività) dall'elenco delle operazioni. Scegli il tipo di istanza Amazon EC2, inserisci il numero di istanze per il gruppo di attività, quindi seleziona **Add task instance group** (Aggiungi gruppo di istanze attività) per tornare al pannello **Instance groups** (Gruppi di istanze) del cluster.

------

Quando si modifica il numero di nodi, **Status (Stato)** del gruppo di istanze viene aggiornato. Quando la modifica richiesta è completata, lo **Status (Stato)** è **Running (In esecuzione)**.

## Ridimensiona un cluster con AWS CLI
<a name="ResizingParameters"></a>

È possibile utilizzare il AWS CLI per ridimensionare un cluster in esecuzione. Si può aumentare o diminuire il numero di nodi di attività e si può aumentare il numero di nodi principali in un cluster in esecuzione. È anche possibile chiudere un'istanza nel gruppo di istanze principale con AWS CLI o l'API. Questo deve essere fatto con cautela. La chiusura di un'istanza nel gruppo di istanze core comporta la perdita di dati e l'istanza non viene sostituita automaticamente.

Oltre a ridimensionare i gruppi core e attività, è inoltre possibile aggiungere uno o più gruppi di istanze attività a un cluster in esecuzione con il comando AWS CLI. <a name="IncreaseDecreaseNodesawscli"></a>

**Per ridimensionare un cluster modificando il conteggio delle istanze con AWS CLI**

È possibile aggiungere istanze al gruppo principale o al gruppo di attività e rimuovere istanze dal gruppo di attività con il AWS CLI `modify-instance-groups` sottocomando con il parametro. `InstanceCount` Per aggiungere istanze ai gruppi principali o di attività, aumentare il `InstanceCount`. Per ridurre il numero di istanze nel gruppo di attività, diminuire `InstanceCount`. La modifica del conteggio delle istanze del gruppo di attività a 0 rimuove tutte le istanze ma non il gruppo di istanze.
+ Per aumentare il numero di istanze nel gruppo di istanze di attività da 3 a 4, digita il comando seguente e sostituiscilo *ig-31JXXXXXXBTO* con l'ID del gruppo di istanze.

  ```
  aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-31JXXXXXXBTO,InstanceCount=4
  ```

  Per recuperare `InstanceGroupId`, utilizzare il sottocomando `describe-cluster`. L'output è un oggetto JSON chiamato `Cluster` contenente l'ID dell'istanza di ciascun gruppo. Per utilizzare questo comando, è necessario l'ID del cluster (che è possibile recuperare con il comando `aws emr list-clusters` o la console). Per recuperare l'ID del gruppo di istanze, digitate il comando seguente e sostituitelo *j-2AXXXXXXGAPLF* con l'ID del cluster.

  ```
  aws emr describe-cluster --cluster-id j-2AXXXXXXGAPLF
  ```

  Con AWS CLI, potete anche terminare un'istanza nel gruppo di istanze principale con il `--modify-instance-groups` sottocomando.
**avvertimento**  
La specifica di `EC2InstanceIdsToTerminate` deve essere eseguita con cautela. Le istanze vengono terminate immediatamente, indipendentemente dallo stato delle applicazioni in esecuzione su di esse, e l'istanza non viene sostituita automaticamente. Questo è vero indipendentemente dalla configurazione del **Scale down behavior (Comportamento di ridimensionamento)** del cluster. La cessazione di un'istanza in questo modo comporta il rischio di perdita di dati e di un comportamento imprevedibile del cluster.

  Per terminare un'istanza specifica sono necessari l'ID del gruppo di istanze (restituito dal `aws emr describe-cluster --cluster-id` sottocomando) e l'ID dell'istanza (restituito dal `aws emr list-instances --cluster-id` sottocomando). Digitate il comando seguente, sostituitelo con l'ID del gruppo di istanze e *i-f9XXXXf2* sostituitelo *ig-6RXXXXXX07SA* con l'ID dell'istanza.

  ```
  1. aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-6RXXXXXX07SA,EC2InstanceIdsToTerminate=i-f9XXXXf2
  ```

  Per ulteriori informazioni sull'utilizzo dei comandi Amazon EMR in AWS CLI, consulta. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

**Per ridimensionare un cluster aggiungendo gruppi di istanze di attività con AWS CLI**

Con AWS CLI, è possibile aggiungere da 1 a 48 gruppi di istanze di attività a un cluster con il sottocomando. `--add-instance-groups` I gruppi di istanze attività possono essere aggiunti solo a un cluster contenente un gruppo di istanze primarie e un gruppo di istanze core. Quando si utilizza il AWS CLI, è possibile aggiungere fino a cinque gruppi di istanze di task ogni volta che si utilizza il sottocomando. `--add-instance-groups`

1. Per aggiungere un singolo gruppo di istanze di task a un cluster, digita il comando seguente e sostituiscilo *j-JXBXXXXXX37R* con l'ID del cluster.

   ```
   1. aws emr add-instance-groups --cluster-id j-JXBXXXXXX37R --instance-groups InstanceCount=6,InstanceGroupType=task,InstanceType=m5.xlarge
   ```

1. Per aggiungere più gruppi di istanze di attività a un cluster, digita il comando seguente e sostituiscilo *j-JXBXXXXXX37R* con l'ID del cluster. È possibile aggiungere fino a cinque gruppi di istanze di attività in un unico comando.

   ```
   aws emr add-instance-groups --cluster-id j-JXBXXXXXX37R --instance-groups InstanceCount=6,InstanceGroupType=task,InstanceType=m5.xlarge InstanceCount=10,InstanceGroupType=task,InstanceType=m5.xlarge
   ```

   Per ulteriori informazioni sull'utilizzo dei comandi Amazon EMR in AWS CLI, consulta. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

## Interruzione di un ridimensionamento
<a name="interruptible-resize"></a>

Utilizzando Amazon EMR versione 4.1.0 o successive, è possibile emettere un ridimensionamento nel corso di un'operazione di ridimensionamento. Inoltre, è possibile interrompere una richiesta di ridimensionamento precedentemente inviata o inviare una nuova richiesta per sovrascrivere una richiesta precedente senza attendere che termini. È possibile arrestare un ridimensionamento esistente anche dalla console o con la chiamata API `ModifyInstanceGroups` con il conteggio corrente come conteggio target del cluster.

Il seguente screenshot mostra un gruppo di istanze di attività di ridimensionamento, ma possono essere arrestate scegliendo **Stop (Interrompi)**.

![\[Task instance group showing resizing status with options to resize or stop.\]](http://docs.aws.amazon.com/it_it/emr/latest/ManagementGuide/images/resize-stop.png)


**Per interrompere un ridimensionamento con AWS CLI**

È possibile utilizzare il AWS CLI per interrompere un ridimensionamento con il sottocomando. `modify-instance-groups` Supponiamo di avere sei istanze nel proprio gruppo di istanze e di volerle portare a 10. In seguito si decide di annullare la richiesta:
+ La richiesta iniziale:

  ```
  aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-myInstanceGroupId,InstanceCount=10
  ```

  La seconda richiesta di bloccare la prima richiesta:

  ```
  aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-myInstanceGroupId,InstanceCount=6
  ```

**Nota**  
Poiché questo processo è asincrono, è possibile vedere i conteggi delle istanze cambiare rispetto alle richieste API precedenti prima che le richieste successive vengano onorate. In caso di riduzione, è possibile che, se si ha un lavoro in corso sui nodi, il gruppo di istanze non si riduca fino a quando i nodi non hanno completato il loro lavoro.

## Stato sospeso
<a name="emr-manage-resizeSuspended"></a>

Un gruppo di istanze entra in uno stato di sospensione se incontra troppi errori durante il tentativo di avviare i nuovi nodi del cluster. Ad esempio, se i nuovi nodi hanno esito negativo durante l'esecuzione delle operazioni di bootstrap, il gruppo di istanze passa allo stato *SUSPENDED (SOSPESO)* piuttosto che al provisioning continuo dei nuovi nodi. Dopo aver risolto il problema sottostante, reimpostare il numero desiderato di nodi sul gruppo di istanze del cluster, quindi il gruppo di istanze riprende l'allocazione dei nodi. La modifica di un gruppo di istanze istruisce Amazon EMR a tentare di fornire nuovamente i nodi. Nessun nodo in esecuzione viene riavviato o terminato.

In AWS CLI, il `list-instances` sottocomando restituisce tutte le istanze e i relativi stati, così come il sottocomando. `describe-cluster` Se Amazon EMR rileva un guasto in un gruppo di istanze, modifica lo stato del gruppo su `SUSPENDED`. 

**Per ripristinare un cluster in uno stato SUSPENDED con AWS CLI**

Digitare il sottocomando `describe-cluster` con il parametro `--cluster-id` per visualizzare lo stato delle istanze nel cluster.
+ Per visualizzare le informazioni su tutte le istanze e i gruppi di istanze in un cluster, digita il comando seguente e sostituiscilo *j-3KVXXXXXXY7UG* con l'ID del cluster.

  ```
  1. aws emr describe-cluster --cluster-id j-3KVXXXXXXY7UG
  ```

  L'output mostra le informazioni sui gruppi di istanze e lo stato delle istanze:

  ```
   1. {
   2.     "Cluster": {
   3.         "Status": {
   4.             "Timeline": {
   5.                 "ReadyDateTime": 1413187781.245,
   6.                 "CreationDateTime": 1413187405.356
   7.             },
   8.             "State": "WAITING",
   9.             "StateChangeReason": {
  10.                 "Message": "Waiting after step completed"
  11.             }
  12.         },
  13.         "Ec2InstanceAttributes": {
  14.             "Ec2AvailabilityZone": "us-west-2b"
  15.         },
  16.         "Name": "Development Cluster",
  17.         "Tags": [],
  18.         "TerminationProtected": false,
  19.         "RunningAmiVersion": "3.2.1",
  20.         "NormalizedInstanceHours": 16,
  21.         "InstanceGroups": [
  22.             {
  23.                 "RequestedInstanceCount": 1,
  24.                 "Status": {
  25.                     "Timeline": {
  26.                         "ReadyDateTime": 1413187775.749,
  27.                         "CreationDateTime": 1413187405.357
  28.                     },
  29.                     "State": "RUNNING",
  30.                     "StateChangeReason": {
  31.                         "Message": ""
  32.                     }
  33.                 },
  34.                 "Name": "MASTER",
  35.                 "InstanceGroupType": "MASTER",
  36.                 "InstanceType": "m5.xlarge",
  37.                 "Id": "ig-3ETXXXXXXFYV8",
  38.                 "Market": "ON_DEMAND",
  39.                 "RunningInstanceCount": 1
  40.             },
  41.             {
  42.                 "RequestedInstanceCount": 1,
  43.                 "Status": {
  44.                     "Timeline": {
  45.                         "ReadyDateTime": 1413187781.301,
  46.                         "CreationDateTime": 1413187405.357
  47.                     },
  48.                     "State": "RUNNING",
  49.                     "StateChangeReason": {
  50.                         "Message": ""
  51.                     }
  52.                 },
  53.                 "Name": "CORE",
  54.                 "InstanceGroupType": "CORE",
  55.                 "InstanceType": "m5.xlarge",
  56.                 "Id": "ig-3SUXXXXXXQ9ZM",
  57.                 "Market": "ON_DEMAND",
  58.                 "RunningInstanceCount": 1
  59.             }
  60. ...
  61. }
  ```

  Per visualizzare le informazioni su un particolare gruppo di istanze, digitare il sottocomando `list-instances` con i parametri `--cluster-id` e `--instance-group-types`. È possibile visualizzare informazioni per i gruppi primari, core o attività.

  ```
  1. aws emr list-instances --cluster-id j-3KVXXXXXXY7UG --instance-group-types "CORE"
  ```

  Usare il sottocomando `modify-instance-groups` con il parametro `--instance-groups` per resettare un cluster nello stato `SUSPENDED`. Il sottocomando `describe-cluster` restituisce l'id del gruppo di istanze.

  ```
  1. aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-3SUXXXXXXQ9ZM,InstanceCount=3
  ```

## Considerazioni sulla riduzione delle dimensioni del cluster
<a name="resize-considerations"></a>

Se scegli di ridurre le dimensioni di un cluster in esecuzione, considera il comportamento di Amazon EMR e le best practice seguenti:
+ Per ridurre l'impatto sui processi in corso, Amazon EMR seleziona in modo intelligente le istanze da rimuovere. Per maggiori informazioni sul comportamento di riduzione del cluster, consulta [Terminazione al completamento dell'attività](emr-scaledown-behavior.md#emr-scaledown-terminate-task) nella Guida alla gestione di Amazon EMR. 
+ Quando riduci le dimensioni di un cluster, Amazon EMR copia i dati dalle istanze rimosse alle istanze rimanenti. Verifica che vi sia una capacità di archiviazione sufficiente per questi dati nelle istanze che rimangono nel gruppo.
+ Amazon EMR tenta di rimuovere le autorizzazioni HDFS sulle istanze del gruppo. Prima di ridurre le dimensioni di un cluster, ti consigliamo di ridurre al minimo le operazioni I/O di scrittura HDFS.
+ Per un controllo più granulare quando si riducono le dimensioni di un cluster, puoi visualizzare il cluster nella console e accedere alla scheda **Instances** (Istanze). Seleziona l'**ID** per il gruppo di istanze che desideri ridimensionare. Quindi utilizza l'opzione **Terminate** (Termina) per le istanze specifiche che desideri rimuovere. 