Come posso risolvere “Exit status: -100. Diagnostica: Errori del container rilasciato su un “nodo *lost*” in Amazon EMR?

4 minuti di lettura
0

Il mio processo Amazon EMR ha esito negativo e viene visualizzato un messaggio di errore simile al seguente: ExecutorLostFailure (executor 12 exited caused by one of the running tasks) Reason: Container marked as failed: container_1572839353552_0008_01_000002 on host: ip-xx-xxx-xx-xx Exit status: -100. Diagnostica: Container rilasciato su un nodo lost

Breve descrizione

Questo errore si verifica in genere in una delle seguenti situazioni:

  • Un nodo core o attività viene terminato a causa dell'elevato utilizzo dello spazio su disco.
  • Un nodo non risponde a causa dell'elevato utilizzo prolungato della CPU o della scarsa memoria disponibile.

Questo articolo si concentra sui problemi relativi allo spazio su disco.

Quando l'utilizzo del disco su un disco core o nodo attività (ad esempio, /mnt o /mnt1) supera il 90%, il disco non è considerato integro. Se meno del 25% dei dischi di un nodo è integro, YARN ResourceManager disattiva il nodo in modo automatico. Per risolvere questo problema, aggiungi altra capacità di Amazon Elastic Block Store (Amazon EBS) al cluster EMR. È possibile eseguire questa operazione quando si avvia un nuovo cluster o si modifica un cluster in esecuzione.

Soluzione

Determinare la causa principale

Per determinare la causa dell'errore, controlla i seguenti parametri di Amazon CloudWatch per il cluster EMR:

  • Nodi non integri MR: Se questa metrica mostra un nodo non integro, il problema è causato dalla mancanza di spazio su disco.
  • MR ha perso i nodi: Se questa metrica mostra un nodo perso, indica che un nodo è stato perso a causa di un guasto hardware o che il nodo non è stato raggiungibile a causa dell'elevato utilizzo della CPU o dell'elevato utilizzo della memoria.

Utilizza una delle seguenti opzioni per risolvere gli errori dei nodi persi causati dalla mancanza di spazio su disco.

Nuovi cluster: Aggiungi ulteriore capacità EBS

Per aggiungere più capacità EBS quando avvii un cluster EMR, scegli un tipo di istanza Amazon Elastic Compute Cloud (Amazon EC2) più grande. Le istanze EC2 più grandi includono una maggiore capacità di spazio di archiviazione EBS. Per ulteriori informazioni, vedere Archiviazione EBS predefinita per le istanze. (È possibile anche modificare la dimensione del volume o aggiungere altri volumi quando crei il cluster, indipendentemente dal tipo di istanza scelto.)

Cluster nuovi o in esecuzione: Aggiungi altri nodi principali o attività

Cluster in esecuzione: Aggiungi altri volumi EBS

Effettua le seguenti operazioni per collegare più volumi EBS a un cluster in esecuzione:

1.    Se volumi EBS più grandi non risolvono il problema, collega più volumi EBS ai nodi core e attività.

2.    Formattare e montare i volumi collegati. Assicurarsi di utilizzare il numero di disco corretto (ad esempio, /mnt1 o /mnt2 anziché /data).

3.    Connettiti al nodo tramite SSH.

4.    Aggiungi il percorso ** /mnt1/yarn** all'interno della proprietà yarn.nodemanager.local-dirs di /etc/hadoop/conf/yarn-site.xml. Esempio:

<property>
    <name>yarn.nodemanager.local-dirs</name>
    <value>/mnt/yarn,/mnt1/yarn</value>
</property>

5.    Riavvia il servizio NodeManager:

sudo stop hadoop-yarn-nodemanager
sudo start hadoop-yarn-nodemanager

6.    Abilita la protezione dalla terminazione.

Se i problemi di spazio su disco persistono, prova quanto segue:

  • Rimuovi i file non necessari.
  • Aumenta la soglia di utilizzo del disco dal 90% al 99%. A tale scopo, modifica la proprietà yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage in yarn-default.xml su tutti i nodi. Quindi, riavvia il servizio hadoop-yarn-nodemanager.

Informazioni correlate

Il cluster termina con NO_SLAVE_LEFT e i nodi principali FAILED_BY_MASTER

Perché il nodo principale del mio cluster Amazon EMR sta esaurendo lo spazio su disco?

AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa