gpt4 book ai didi

hadoop - 使用s3 dist cp将数据从非emr群集复制到s3时出现权限问题

转载 作者:行者123 更新时间:2023-12-02 20:45:59 25 4
gpt4 key购买 nike

陈述我的问题
1)我想将我们的cdh hadoop集群备份到s3
2)我们正在运行一个emr集群
3)我试图从emr群集运行s3distcp,将src作为cdh远程群集的hdfs URL并将目标作为s3。

有以下错误:
造成原因:org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.AccessControlException):权限被拒绝:user = mapred,access = RE
AD_EXECUTE,inode =“/ tmp / hadoop-mapred / mapred / staging”

在这里浏览文档后,以下是我的问题

http://docs.aws.amazon.com/emr/latest/ReleaseGuide/UsingEMR_s3distcp.html

1)这可行吗?从s3distcp文档中可以看到,可以指定任何hdfs网址。但是我找不到任何有关在外部集群的情况下如何工作的文档。

2)我想知道登台目录的位置(曾提到s3distcp在将数据复制到s3之前将数据复制到此目录),该文件是在远程群集或emr群集中创建的。

最佳答案

绝对有可能。看不到distcp命令很难说。这里是一些一般信息...

我们构建了一个相当复杂的过程,将CDH集群备份到S3。我们不必做任何特殊的处理临时目录。我们使用了CDH发行版中包含的distcp,它工作正常。

所有这些都从Shell脚本运行。我们得出的关键命​​令是

hadoop distcp $distcp_opts -m 20 -numListstatusThreads 15 -strategy dynamic -update -delete $distcp_source $distcp_target

首先设置这些变量:
distcp_opts="-Dfs.s3a.multipart.uploads.enabled=false -Dmapreduce.map.memory.mb=5000 -Dmapreduce.task.timeout=2400000 -Dmapreduce.map.maxattempts=8 -Dmapreduce.reduce.maxattempts=8 -Dfs.s3a.access.key=$AWS_ACCESS_KEY_ID -Dfs.s3a.secret.key=$AWS_SECRET_ACCESS_KEY"

distcp_source="hdfs://nameservice1/foo/$table/"
distcp_target="s3a://my-aws-bucket/foo/$table"
distcp_opts正是我们发现最终对我们可靠的。

现在,我们已转向EMR流程,而CDH上只有少量剩余流程。但是它仍然可以正常工作。在EMR集群中,我们使用AWS s3-dist-cp命令,它比我们使用的apache版本更加强大和强大。可能值得在您的群集上使用它并进行尝试。

关于hadoop - 使用s3 dist cp将数据从非emr群集复制到s3时出现权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48006897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com