EMR 단계를 사용하여 S3에서 HDFS로 파일을 복사하는 EMR 클러스터를 생성했으며 s3-dist-cp를 사용하여 그 반대의 경우도 마찬가지입니다. 이 클러스터는 주문형 클러스터이므로 IP를 추적하지 않습니다.EMR에서 런타임시 HDFS 경로를 유추
첫 번째 EMR 단계는 다음과 같습니다. hadoop fs -mkdir /input
-이 단계가 성공적으로 완료되었습니다. 다음은 내가 사용하고있는 명령입니다 :
두 번째 EMR 단계는
s3-dist-cp --s3Endpoint=s3.amazonaws.com --src=s3://<bucket-name>/<folder-name>/sample.txt --dest=hdfs:///input
-
Error: java.lang.IllegalArgumentException: java.net.UnknownHostException: sample.txt at org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:378) at org.apache.hadoop.hdfs.NameNodeProxies.createNonHAProxy(NameNodeProxies.java:310) at org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:176) at org.apache.hadoop.hdfs.DFSClient.(DFSClient.java:678) at org.apache.hadoop.hdfs.DFSClient.(DFSClient.java:619) at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:149) at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2717) at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:93) at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2751) at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2733) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:377) at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295) at com.amazon.elasticmapreduce.s3distcp.CopyFilesReducer.reduce(CopyFilesReducer.java:213) at com.amazon.elasticmapreduce.s3distcp.CopyFilesReducer.reduce(CopyFilesReducer.java:28) at org.apache.hadoop.mapreduce.Reducer.run(Reducer.java:171) at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:635) at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:390) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698) at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) Caused by: java.net.UnknownHostException: sample.txt
을하지만이 파일은 않습니다 S3에 존재하며 EMR의 스파크 애플리케이션을 통해 읽을 수 있습니다.
왜 EMRFS를 사용하지 않고 직접 HDFS S3 마운트 포인트를 볼 수 있습니까? 이 오류는 종종 지역에 의해 발생할 수 있습니다. – Henry
s3EndPoint 인수없이 명령을 실행 해 볼 수 있습니까? 계정에 지정된 값이 있으면 끝점을 통해 전송됩니다. 그것도 작동하지 않으면 hadoop distcp를 한 번 사용해보십시오. – Chirag
@Chirag : 우리는 그것을 시도하고 그것은 작동하지 않았다. – sashmi