2016-10-02 14 views
0

emr-5.0.0 버전에서 s3-dist-cp 명령과 관련된 문제가 있습니다. 내 응용 프로그램에서는 hdfs에서 S3로 일부 파일을 푸시해야합니다. 나는 이것을 달성하기 위해 s3-dist-cp 명령을 사용하고있다. emr-4.2.0에서 정상적으로 작동했습니다. 하지만 emr-5.0.0에서는 작동하지 않습니다. 명령을 수동으로 실행하면 정상적으로 작동합니다. 하지만 내 응용 프로그램에서는 실패합니다. emr-5에서 실행하기 위해 응용 프로그램을 변경하지 않았습니다.EMR5에서 S3-Dist-Cp 오류가 발생했습니다.

emr-5를 사용해야하는 경우 변경해야합니까? emr-5에서 s3-dist-cp 명령을 사용하는 방식이 변경 되었습니까?

내가 다음 명령을 사용하고 있습니다 :

s3-dist-cp --src /user/hive/warehouse/abc.text --dest s3n://bucket/abc.text 
+0

질문에 오류를 포함하면 ... –

+0

또한 AFAIK's3n'은 더 이상 사용되지 않으므로's3 : //'부터 사용하십시오 – Kristian

답변

0

당신이 S3 - 거리-CP에 사용한 구문은 올바르지 않습니다. 아래 명령을 사용하여 다시 시도하십시오.

s3-dist-cp --src hdfs:///user/hive/warehouse/abc.text --dest s3n://bucket/abc.text 

이 문제가 해결되면 알려주십시오.

0

우선, s3n://은 더 이상 사용되지 않으며 S3 경로의 경우 s3://을 사용합니다. 당신은 단지 클러스터의 로컬 파일에서 S3로 파일을 복사하는 경우

둘째, 당신은 aws s3 cp를 사용할 수 있습니다

aws s3 cp /user/hive/warehouse/abc.text s3://bucket/abc.text 
0

S3 - 거리-CP는 마스터 노드에서만 사용할 수 있습니다 (s3-dist-cp.jar).

다음은 응용 프로그램의 위치입니다.

/usr/share/aws/emr/s3-dist-cp/ 

S3에서 - 거리 - cp.jar

는 슬레이브 노드에서 사용할 수 없습니다.
슬레이브 머신에 로그인하여이를 확인할 수 있습니다.

응용 프로그램 오류 일 수있는 이유는 새로운 emr에서 슬레이브에 응용 프로그램을 배포하고 거기에서 시작하는 일부 워크 플로 관리 도구를 사용하고있을 수 있습니다. s3 s3-dist-cp는 사용할 수 없으므로 실패합니다.

일 정도 첫 번째 옵션

부트 스트랩 (S3) - 거리 - cp.jars

hadoop jar s3-dist-cp.jar --src location --dest location 

두 번째 항아리 및 사용에 다음 명령을 번들 클러스터

당신도 자바 프로그램으로 실행할 수 있습니다