0

次のコマンドを使用して、Amazon S3 からローカル Hadoop クラスターに NCDC データをコピーしようとしています。

hadoop distcp -Dfs.s3n.awsAccessKeyId='ABC' -Dfs.s3n.awsSecretAccessKey='XYZ' s3n://hadoopbook/ncdc/all input/ncdc/all

そして、以下に示すエラーが発生します:

java.lang.IllegalArgumentException: AWS Secret Access Key must be specified as           the password of a s3n URL, or by setting the fs.s3n.awsSecretAccessKey property

次の質問に答えましたが、大きな助けにはなりません。

ローカル データのコピーに関する問題

問題の解決方法に関するヒント。詳細な回答は、理解を深めるために非常に高く評価されます。ありがとう

4

2 に答える 2

1

これを試しましたか:

AmazonS3 Wikiからの抜粋

これは、hdfs の /user/nutch にある 0070206153839-1998 という名前の nutch セグメントを、「nutch」という名前の S3 バケットにコピーする例です (S3 AWS_ACCESS_KEY_ID を 123、S3 AWS_ACCESS_KEY_SECRET を 456 とします)。

% ${HADOOP_HOME}/bin/hadoop distcp hdfs://domU-12-31-33-00-02-DF:9001/user/nutch/0070206153839-1998 s3://123:456@nutch/

あなたの場合、それは次のようなものでなければなりません:

hadoop distcp s3n://ABC:XYZ@hadoopbook/ncdc/all hdfs://IPaddress:port/input/ncdc/all
于 2013-07-21T23:48:45.740 に答える
0

core-site.xml で aws ID とパスワードを設定する必要があります

<property>
<name>fs.s3n.awsAccessKeyId</name>
<value>xxxxxxx</value>
</property>
<property>
<name>fs.s3n.awsSecretAccessKey</name>
<value>xxxxxxxxx</value>
</property>

クラスターを再起動します

于 2014-04-30T10:30:41.470 に答える