Sostituzione di nodi non integri con Amazon EMR - Amazon EMR

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

Sostituzione di nodi non integri con Amazon EMR

Amazon EMR utilizza periodicamente il servizio di controllo dello NodeManager stato di salute in Apache Hadoop per monitorare lo stato dei nodi principali nei cluster Amazon EMR su Amazon. EC2 Se un nodo non funziona in modo ottimale, viene contrassegnato come non integro e il responsabile dello stato lo segnala al controller Amazon EMR. Il controller Amazon EMR aggiunge il nodo a una lista di negati, impedendo al nodo di ricevere nuove applicazioni YARN fino a quando lo stato del nodo non migliora.

Nota

Un motivo comune per cui un nodo non è integro è l'esaurimento dello spazio su disco. Per ulteriori informazioni su quando lo spazio su disco di un nodo principale è quasi esaurito, è utile il seguente articolo del Re:post Knowledge Center: Perché il nodo principale del mio cluster Amazon EMR sta esaurendo lo spazio su disco?

Nota

Hadoop offre la possibilità di eseguire controlli personalizzati dello stato dei nodi. Questo è spiegato più dettagliatamente nella documentazione di Apache Hadoop all'indirizzo. NodeManager

Puoi scegliere se Amazon EMR deve terminare i nodi non integri o mantenerli nel cluster. Se disattivi la sostituzione dei nodi non sani, questi restano nell'elenco dei nodi non accettati e continuano a essere conteggiati ai fini della capacità del cluster. Puoi comunque connetterti alla tua istanza EC2 principale di Amazon per la configurazione e il ripristino, in modo da poter ridimensionare il cluster se desideri aggiungere capacità. Per ulteriori informazioni su come funzionano la sostituzione e la terminazione dei nodi, consulta Utilizzo della protezione dalla terminazione.

Se è attivata la sostituzione dei nodi non integri, Amazon EMR termina un nodo principale non integro ed effettua il provisioning di una nuova istanza, in base al numero di istanze nel gruppo di istanze o in base alla capacità target per le flotte di istanze. Se alcuni nodi non sono integri per più di 45 minuti, Amazon EMR sostituirà correttamente i nodi. Se la disattivazione regolare di un nodo non viene completata entro un'ora, il nodo viene chiuso forzatamente, a meno che la chiusura non porti il cluster al di sotto dei limiti del fattore di replica o della capacità HDFS.

Importante

Tieni presente che il tempo necessario prima che un nodo venga disattivato o terminato correttamente può essere soggetto a modifiche.

Sebbene una sostituzione non corretta dei nodi riduca in modo significativo la possibilità di perdita di dati, non elimina completamente il rischio. I dati HDFS possono andare persi definitivamente durante la sostituzione graduale di un'istanza principale non integra. Ti consigliamo di eseguire sempre il backup dei dati.

Per ulteriori informazioni sull'identificazione dei nodi non integri e sul ripristino, consulta Errori nelle risorse. Inoltre, per ulteriori best practice da seguire per mantenere l'integrità di un cluster, consulta la seguente documentazione sull'errore di risorsa Il cluster Amazon EMR termina con NO_SLAVE_LEFT e i nodi principali FAILED_BY_MASTER.

Amazon EMR pubblica CloudWatch Amazon Events per la sostituzione di nodi non integri, così puoi tenere traccia di ciò che accade con le tue istanze principali non integre. Per ulteriori informazioni, consulta Eventi di sostituzione dei nodi non integri.

Impostazioni predefinite per la sostituzione dei nodi e la protezione dalla terminazione

La sostituzione dei nodi non integri è disponibile per tutte le versioni di Amazon EMR, ma le impostazioni predefinite dipendono dall'etichetta di rilascio scelta. Puoi modificare qualsiasi di queste impostazioni configurando la sostituzione dei nodi non integri quando crei un nuovo cluster o accedendo alla configurazione del cluster in qualsiasi momento.

Se stai creando un cluster a nodo singolo o un cluster ad alta disponibilità che esegue Amazon EMR versione 7.0 o precedente, l'impostazione predefinita della sostituzione dei nodi non integri dipende dalla protezione dalla terminazione:

  • L'attivazione della protezione dalla terminazione disabilita la sostituzione non corretta dei nodi.

  • La disabilitazione della protezione dalla terminazione consente la sostituzione non corretta dei nodi.

Configurazione della sostituzione di nodi non integri all'avvio di un cluster

È possibile abilitare o disabilitare la sostituzione dei nodi non integri quando si avvia un cluster utilizzando la console, l'API o l' AWS CLI API.

L'impostazione predefinita per la sostituzione dei nodi non integri dipende da come si avvia il cluster:

  • Console Amazon EMR: la sostituzione dei nodi non integri è abilitata per impostazione predefinita.

  • AWS CLI aws emr create-cluster— la sostituzione dei nodi non integri è abilitata per impostazione predefinita, a meno che tu non lo specifichi. --no-unhealthy-node-replacement

  • Comando RunJobFlow API Amazon EMR: la sostituzione dei nodi non integri è abilitata per impostazione predefinita a meno che non imposti il valore UnhealthyNodeReplacement booleano su o. True False

Console
Per attivare o disattivare la sostituzione dei nodi non integri quando crei un cluster con la console
  1. Accedi a e apri AWS Management Console la console Amazon EMR su https://console.aws.amazon.com /emr.

  2. In EMR attivo EC2 nel riquadro di navigazione a sinistra, scegli Cluster, quindi scegli Crea cluster.

  3. Per la versione di rilascio EMR, scegli l'etichetta di rilascio di Amazon EMR che desideri.

  4. In Terminazione del cluster e sostituzione del nodo, assicurati che Unhealthy node replacement (consigliato) sia preselezionato oppure deseleziona la selezione per disattivarla.

  5. Scegli qualsiasi altra opzione applicabile al cluster.

  6. Per avviare il cluster, scegli Create cluster (Crea cluster).

AWS CLI
Per attivare o disattivare la sostituzione dei nodi non integri quando crei un cluster utilizzando il AWS CLI
  • Con AWS CLI, è possibile avviare un cluster con la sostituzione dei nodi non integri abilitata con il create-cluster comando con il --unhealthy-node-replacement parametro. La sostituzione dei nodi non integri è attiva per impostazione predefinita.

    L'esempio seguente crea un cluster con la sostituzione dei nodi non integri abilitata:

    Nota

    I caratteri di continuazione della riga Linux (\) sono inclusi per questioni di leggibilità. Possono essere rimossi o utilizzati nei comandi Linux. Per Windows, rimuovili o sostituiscili con un accento circonflesso (^).

    aws emr create-cluster --name "SampleCluster" --release-label emr-7.9.0 \ --applications Name=Hadoop Name=Hive Name=Pig \ --use-default-roles --ec2-attributes KeyName=myKey --instance-type m5.xlarge \ --instance-count 3 --unhealthy-node-replacement

    Per ulteriori informazioni sull'utilizzo dei comandi Amazon EMR in AWS CLI, consulta Comandi Amazon EMR. AWS CLI

Configurazione della sostituzione non corretta dei nodi in un cluster in esecuzione

Puoi attivare o disattivare la sostituzione dei nodi non integri per un cluster in esecuzione utilizzando la console AWS CLI, l'o l'API.

Console
Per attivare o disattivare la sostituzione di nodi non integri per un cluster in esecuzione con la console
  1. Accedi a e apri AWS Management Console la console Amazon EMR su https://console.aws.amazon.com /emr.

  2. In EMR attivo EC2 nel riquadro di navigazione a sinistra, scegli Cluster e seleziona il cluster che desideri aggiornare.

  3. Nella scheda Proprietà della pagina dei dettagli del cluster, trova la terminazione del cluster e la sostituzione dei nodi e seleziona Modifica.

  4. Seleziona o deseleziona la casella di controllo Sostituzione dei nodi non integri per attivare o disattivare la funzionalità. Quindi seleziona Save changes (Salva modifiche) per confermare.

AWS CLI
Per attivare o disattivare la sostituzione di nodi non integri per un cluster in esecuzione, utilizzare il AWS CLI
  • Per attivare la sostituzione di nodi non integri su un cluster in esecuzione con il AWS CLI, usa il modify-cluster-attributes comando con il --unhealthy-node-replacement parametro. Per disabilitarla, utilizza il parametro --no-unhealthy-node-replacement.

    L'esempio seguente attiva la sostituzione di nodi non integri nel cluster con ID: j-3KVTXXXXXX7UG

    aws emr modify-cluster-attributes --cluster-id j-3KVTXXXXXX7UG --unhealthy-node-replacement

    L'esempio seguente disattiva la sostituzione di nodi non integri sullo stesso cluster:

    aws emr modify-cluster-attributes --cluster-id j-3KVTXXXXXX7UG --no-unhealthy-node-replacement