【发布时间】:2023-04-07 05:04:02
【问题描述】:
情况:
节点 0:已安装 mapr 客户端,不是集群的一部分,未安装外部资源
节点 1 到 10:安装了 mapr NodeManager 的 mapr 集群节点。每个节点都在/mnt/resource/下挂载了外部资源
如果我在 1 到 10 的任何节点上执行此代码 - 它可以工作:
hadoop distcp file:///mnt/resource/file maprfs:///tmp
当我在节点 0 上执行相同的代码时,我得到一个错误:
20/11/24 14:08:24 ERROR tools.DistCp: Invalid input: org.apache.hadoop.tools.CopyListing$InvalidInputException: file:///mnt/resource/file doesn't exist
我的预期是:节点 0 只是调用 YARN 来管理 distcp 命令。但看起来 distcp 试图直接从节点 0 访问 /mnt/resource/file
我想要实现的是在 docker 容器中执行 distcp 命令,但不想将 /mnt/resource 目录挂载到容器中。
我也尝试过使用disctp -f 选项并在列表中提供带有/mnt/resource/file 的文件,但结果是一样的。
你知道如何执行它吗?或解决方法?
【问题讨论】: