首页 > 解决方案 > Hadoop distcp 到 AWS s3 存储桶

问题描述

我正在尝试使用以下命令将文件从 hdfs 传输到 aws s3 存储桶。

下面是代码

  hadoop distcp \
  -Dfs.s3a.access.key=AKIXXXXXXXX4C7GA \
  -Dfs.s3a.secret.key=N12XXXXXXXXary24OXPt \
  -Dfs.s3a.fast.upload=true \
  hdfs://qa/user/dev_test/KL/TEST.csv s3a://Cust- 
   import/dcp/ua.10456754/119XXXX079

我收到以下超时错误。

18/11/14 00:47:45 INFO http.AmazonHttpClient:无法执行 HTTP 请求:连接到 Cust-import.s3.amazonaws.com:443 超时 com.cloudera.org.apache.http.conn.ConnectTimeoutException:在 com.cloudera.org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:416) 在 com.cloudera.com.amazonaws.http 连接到 optimizely-import.s3.amazonaws.com:443 timed out .conn.ssl.SdkTLSSocketFactory.connectSocket(SdkTLSSocketFactory.java:128) 在 com.cloudera.org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180) 在 com.cloudera.org.apache.http .impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294) 在 com.cloudera.org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:643) 在 com.cloudera.org。apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:479) 在 com.cloudera.org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906) 在 com.cloudera.org。 apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805) 在 com.cloudera.com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:728) 在 com.cloudera.com.amazonaws.http。 AmazonHttpClient.executeHelper(AmazonHttpClient.java:489) 在 com.cloudera.com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:310) 在 com.cloudera.com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client. java:3785) 在 com.cloudera.com.amazonaws.services.s3.AmazonS3Client.headBucket(AmazonS3Client.java:1107) 在 com.cloudera.com.amazonaws.services.s3.AmazonS3Client。doBucketExist(AmazonS3Client.java:1070) 在 org.apache.hadoop.fs.s3a.S3AFileSystem.verifyBucketExists(S3AFileSystem.java:312) 在 org.apache.hadoop.fs.s3a.S3AFileSystem.initialize(S3AFileSystem.java:260)在 org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2815) 在 org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:98) 在 org.apache.hadoop.fs.FileSystem$ org.apache.hadoop.fs.FileSystem 的 Cache.getInternal(FileSystem.java:2852)$Cache.get(FileSystem.java:2834) 的 org.apache.hadoop.fs.FileSystem.get(FileSystem.java:387)在 org.apache.hadoop.fs.Path.getFileSystem(Path.java:296) 在 org.apache.hadoop.tools.DistCp.setTargetPathExists(DistCp.java:205) 在 org.apache.hadoop.tools.DistCp.run (DistCp.java:131) 在 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 在 org.apache.hadoop。工具.DistCp.main(DistCp.java:441)

标签: amazon-web-servicesamazon-s3aws-sdk

解决方案


推荐阅读