hadoop - ¿Dónde están los registros en Chispa en HILO?
logging apache-spark (4)
Bonito artículo para esta pregunta:
Ejecutar Spark en YARN : consulte la sección "Depuración de su aplicación". Explicación decente con todos los ejemplos requeridos.
Lo único que debe seguir para obtener el servidor de historial de trabajo correcto para Spark es cerrar el contexto de Spark en su aplicación. De lo contrario, el servidor de historial de aplicaciones no lo verá como COMPLETO y no mostrará nada (a pesar de que la interfaz de usuario del historial es accesible pero no tan visible).
Soy nuevo en chispa. Ahora puedo ejecutar la chispa 0.9.1 en el hilo (2.0.0-cdh4.2.1). Pero no hay registro después de la ejecución.
El siguiente comando se usa para ejecutar un ejemplo de chispa. Pero los registros no se encuentran en el servidor de historial como en un trabajo normal de MapReduce.
SPARK_JAR=./assembly/target/scala-2.10/spark-assembly-0.9.1-hadoop2.0.0-cdh4.2.1.jar /
./bin/spark-class org.apache.spark.deploy.yarn.Client --jar ./spark-example-1.0.0.jar /
--class SimpleApp --args yarn-standalone --num-workers 3 --master-memory 1g /
--worker-memory 1g --worker-cores 1
¿Dónde puedo encontrar los registros / stderr / stdout?
¿Hay algún lugar para establecer la configuración? Encontré una salida de la consola diciendo:
14/04/14 18:51:52 Cliente de INFO: Comando para ApplicationMaster: $ JAVA_HOME / bin / java -server -Xmx640m -Djava.io.tmpdir = $ PWD / tmp org.apache.spark.deploy.yarn.ApplicationMaster --clase simple de clase --jar ./spark-example-1.0.0.jar --args ''yarn-independiente'' - memoria de trabajo 1024 - núcleos de trabajadores 1 - operadores de nulos 3 1> <DIR_LOGAR> / stdout 2> <LOG_DIR> / stderr
En esta línea, observe 1> $LOG_DIR/stdout 2> $LOG_DIR/stderr
¿Dónde se puede configurar LOG_DIR?
Ninguna de las respuestas deja claro dónde buscar troncos (aunque lo hacen en pedazos), así que lo estoy armando.
Si la agregación de registros está activada (con yarn.log-aggregation-enable yarn-site.xml), haga esto
yarn logs -applicationId <app ID>
Sin embargo, si esto no está activado, entonces hay que ir a la máquina de nodo de datos y mirar
$HADOOP_HOME/logs/userlogs/application_1474886780074_XXXX/
application_1474886780074_XXXX es la id de la aplicación
Puede acceder a los registros a través del comando
yarn logs -applicationId <application ID> [OPTIONS]
las opciones generales son: -appOwner AppOwner (se asume que es usuario actual si no se especifica) -containerId ContainerId (se debe especificar si se especifica la dirección del nodo) -nodeAddress NodeAddress en el formato nodename: port (se debe especificar si se especifica id del contenedor)
Ejemplos:
yarn logs -applicationId application_1414530900704_0003
yarn logs -applicationId application_1414530900704_0003 myuserid
// the user ids are different
yarn logs -applicationId <appid> --appOwner <userid>
Se conecta a:
/var/log/hadoop-yarn/containers/[application id]/[container id]/stdout
Los registros están en cada nodo en el que se ejecuta su trabajo Spark.