2014-12-06 15 views
12

Sto lanciando un'applicazione Spark distribuita in modalità client YARN, su un cluster Cloudera. Dopo un po 'di tempo vedo alcuni errori su Cloudera Manager. Alcuni esecutori vengono scollegati e questo accade sistematicamente. Vorrei eseguire il debug del problema, ma l'eccezione interna non viene segnalata da YARN.Esegui esecutore spark su YARN

Exception from container-launch with container ID: container_1417503665765_0193_01_000003 and exit code: 1 
ExitCodeException exitCode=1: 
    at org.apache.hadoop.util.Shell.runCommand(Shell.java:538) 
    at org.apache.hadoop.util.Shell.run(Shell.java:455) 
    at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:702) 
    at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:196) 
    at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:299) 
    at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:81) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:262) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:745) 

Come posso vedere lo stacktrace dell'eccezione? Sembra che YARN riferisca solo che l'applicazione è stata interrotta in modo anomalo. C'è un modo per vedere il log di spark executor in configurazione YARN?

risposta

3

Controllare la proprietà yarn.nodemanager.log-dir di NodeManager. È il percorso del log in cui è in esecuzione il contenitore di Spark executor.

Si noti che quando l'applicazione finisce NodeManager può rimuovere i file (Log Aggregation). Controlla questo documento per i dettagli. http://hortonworks.com/blog/simplifying-user-logs-management-and-access-in-yarn/

+0

Grazie per la risposta. Questo non mi ha permesso di trovare la traccia dello stack completo dell'eccezione, ma ora conosco la causa del problema (OperationNotSupportedException, solo la descrizione è presente nel log che hai suggerito). Se conosci un modo per trovare la traccia dello stack completo, fammelo sapere. –

+0

È possibile che si desideri rilevare l'eccezione per cui la funzione passata alle trasformazioni. – gonbe

+0

Sto provando a prenderlo e scaricare la traccia in un file locale nella cartella/tmp. Speravo che ci fosse una soluzione più pulita .. –

Problemi correlati