使用不同s3目标的hadoop distcp命令

mf98qq94  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(401)

我使用的是一个桉树私有云,我已经在其上设置了一个cdh5 hdfs。我想把我的hdfs备份到eucalyptus s3。使用distcp的经典方法如下:http://wiki.apache.org/hadoop/amazons3 ,即 hadoop distp hdfs://namenode:9000/user/foo/data/fil1 s3://$AWS_ACCESS_KEY:$AWS_SECRET_KEY@bucket/key 不起作用。
似乎hadoop在amazon上预先配置了一个s3位置,我无法找到这个配置的位置,以便将其更改为运行在eucalyptus上的s3服务的ip地址。我希望能够以使用hdfs://前缀时更改namenode uri的相同方式更改s3的uri。但这似乎是不可能的。。。有什么见解吗?
我已经找到了传输数据的解决方法。特别是这里的s3cmd工具:https://github.com/eucalyptus/eucalyptus/wiki/howto-use-s3cmd-with-eucalyptus 这里的s3curl脚本:aws.amazon.com/developertools/amazon-s3/288034384551917工作得很好,但是我更愿意使用map reduce和distcp命令传输数据。

kiz8lqtg

kiz8lqtg1#

看起来hadoop正在使用jets3t库进行s3访问。您可能可以使用本博客中描述的配置来访问eucalyptus,但请注意,对于版本4以后的版本,路径是“/services/objectstorage”,而不是“/services/walrus”。

相关问题