원사에 불꽃이 어디에 있습니까?
-
26-12-2019 - |
문제
나는 불꽃을 촉발시킨다.이제 원사에서 Spark 0.9.1을 실행할 수 있습니다 (2.0.0-CDH4.2.1).그러나 실행 후 로그가 없습니다.
다음 명령은 스파크 예제를 실행하는 데 사용됩니다.그러나 로그는 일반 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
.
로그 / stderr / stdout을 어디에서 찾을 수 있습니까?
구성을 설정할 수있는 곳이 있습니까? 나는 콘솔에서 출력을 찾았습니다.
14/04/14 18:51:52 info client : applicationmaster 명령 : $ java_home / bin / java -server -xmx640m -djava.io.tmpdir= $ pwd / tmp org.apache.spark.deploy.yarn.applicationmaster --class simpleapp --jar ./spark-example-1.0.0.jar - exampple-standalone '- worker-memory 1024 - worker-cores 1 - num-workers 3 1>
/ stdout 2> / stderr
이 라인에서 1> $LOG_DIR/stdout 2> $LOG_DIR/stderr
여기서 log_dir을 설정할 수 있습니까?
해결책
이 질문에 대한 예쁜 기사 :
원사에 불꽃을 - "응용 프로그램 디버깅"절을 참조하십시오.필요한 모든 예를 사용하여 알맞은 설명
다른 팁
명령을 통해 로그를 액세스 할 수 있습니다.
yarn logs -applicationId <application ID> [OPTIONS]
일반 옵션은 다음과 같습니다.
-
appOwner <Application Owner>
- AppOwner (지정되지 않은 경우 현재 사용자로 가정) -
containerId <Container ID>
- containerID (노드 인 경우 지정되어야 함) 주소가 지정됨) -
nodeAddress <Node Address>
-nodename:port
형식의 nodeAddress (컨테이너 ID가 지정된 경우 지정되어야 함)
예 :
yarn logs -applicationId application_1414530900704_0003
yarn logs -applicationId application_1414530900704_0003 myuserid
// the user ids are different
yarn logs -applicationId <appid> --appOwner <userid>
. 답변 중 누구도 로그를 찾을 수있는 곳에서 맑은 곳을 찾을 수 있습니다 (조각에서는 조각으로 수행하십시오).
로그 집합이 켜져있는 경우 (yarn.log-aggregation-enable yarn-site.xml로) 그런 다음이 작업을 수행하십시오.
yarn logs -applicationId <app ID>
.
그러나 이것이 켜지지 않으면 데이터 노드 시스템을 사용하여
를보아야합니다.$HADOOP_HOME/logs/userlogs/application_1474886780074_XXXX/
.
application_1474886780074_xxxx 응용 프로그램 ID
로그에 로그온합니다 :
/var/log/hadoop-yarn/containers/[application id]/[container id]/stdout
.
로그는 스파크 작업이 실행되는 모든 노드에 있습니다.