2016-08-29 1 views
3

나는 EMR의 내부 실행, 스파크 클러스터의 마스터 노드에 연결되어있어, 그리고 파이썬 기반의 응용 프로그램을 제출하는 것을 시도하고있다 :이 프로세스는 다음과 같은 확인을 포함하여 덤프 로그 세트를 생산aws emr에서 파이썬 응용 프로그램을 시작하는 올바른 방법은 무엇입니까?

spark-submit --verbose --deploy-mode cluster --master yarn-cluster --num-executors 3 --executor-cores 6 --executor-memory 1g test.py 

6/08/29 20:47:51 INFO Client: Uploading resource file:/home/hadoop/test.py -> hdfs://ip-xxx-xxx-xxx-xxx.ec2.internal:8020/user/hadoop/.sparkStaging/application_1472396426409_0007/test.py 
16/08/29 20:47:51 INFO Client: Uploading resource file:/usr/lib/spark/python/lib/pyspark.zip -> hdfs://ip-xxx-xxx-xxx-xxx.ec2.internal:8020/user/hadoop/.sparkStaging/application_1472396426409_0007/pyspark.zip 
16/08/29 20:47:51 INFO Client: Uploading resource file:/usr/lib/spark/python/lib/py4j-0.10.1-src.zip -> hdfs://ip-xxx-xxx-xxx-xxx.ec2.internal:8020/user/hadoop/.sparkStaging/application_1472396426409_0007/py4j-0.10.1-src.zip 

아직 응용 프로그램이 실행되지 않아 py4j 라이브러리가 누락되었습니다. :

6/08/29 20:48:47 INFO Client: Application report for application_1472396426409_0007 (state: ACCEPTED) 
16/08/29 20:48:48 INFO Client: Application report for application_1472396426409_0007 (state: FAILED) 
16/08/29 20:48:48 INFO Client: 
    client token: N/A 
    diagnostics: Application application_1472396426409_0007 failed 2 times due to AM Container for appattempt_1472396426409_0007_000002 exited with exitCode: -1000 
For more detailed output, check application tracking page:http://ip-xxx-xxx-xxx-xxx.ec2.internal:8088/cluster/app/application_1472396426409_0007Then, click on links to logs of each attempt. 
Diagnostics: File does not exist: hdfs://ip-xxx-xxx-xxx-xxx.ec2.internal:8020/user/hadoop/.sparkStaging/application_1472396426409_0007/py4j-0.10.1-src.zip 
java.io.FileNotFoundException: File does not exist: hdfs://ip-xxx-xxx-xxx-xxx.ec2.internal:8020/user/hadoop/.sparkStaging/application_1472396426409_0007/py4j-0.10.1-src.zip 
    at org.apache.hadoop.hdfs.DistributedFileSystem$22.doCall(DistributedFileSystem.java:1309) 
    at org.apache.hadoop.hdfs.DistributedFileSystem$22.doCall(DistributedFileSystem.java:1301) 

명령을 잘못 사용하고 있습니까?

답변

1

이것은 aws 시스템의 버그 인 것으로 보입니다. 원사는 시스템을 모니터링하고 배포 된 코드가 더 이상 존재하지 않는다는 사실을 알게됩니다. 실제로는 스파크가 처리를 완료한다는 신호입니다.

yarn logs -applicationId application_1472396426409_0007 

두 번 확인 당신이 성공 메시지를 참조하십시오 마스터 노드에 대해이 같은 실행 즉, -

이 문제, 응용 프로그램에 대한 로그를 읽어 이중 체크되어 있는지 확인하려면 로그 :

INFO ApplicationMaster: Unregistering ApplicationMaster with SUCCEEDED 
관련 문제