gpt4 book ai didi

hadoop distcp 故障转移 hftp 协议(protocol)

转载 作者:可可西里 更新时间:2023-11-01 15:39:19 24 4
gpt4 key购买 nike

我想通过 hftp 协议(protocol)使用 distcp 从 cdh3 和 cdh4 复制文件。命令是这样的:hadoop distcp hftp://cluster1:50070/folder1 hdfs://cluster2/folder2

但由于来自 jobtracker UI 的一些http 连接错误,作业失败

INFO org.apache.hadoop.tools.DistCp: FAIL test1.dat : java.io.IOException: HTTP_OK expected, received 503 
*at org.apache.hadoop.hdfs.HftpFileSystem$RangeHeaderUrlOpener.connect(HftpFileSystem.java:376)
at org.apache.hadoop.hdfs.ByteRangeInputStream.openInputStream(ByteRangeInputStream.java:119)
at org.apache.hadoop.hdfs.ByteRangeInputStream.getInputStream(ByteRangeInputStream.java:103)
at org.apache.hadoop.hdfs.ByteRangeInputStream.read(ByteRangeInputStream.java:187)
at java.io.DataInputStream.read(DataInputStream.java:83)
at org.apache.hadoop.tools.DistCp$CopyFilesMapper.copy(DistCp.java:424)
at org.apache.hadoop.tools.DistCp$CopyFilesMapper.map(DistCp.java:547)
at org.apache.hadoop.tools.DistCp$CopyFilesMapper.map(DistCp.java:314)
at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:417)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:332)
at org.apache.hadoop.mapred.Child$4.run(Child.java:268)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1408)
at org.apache.hadoop.mapred.Child.main(Child.java:262)*

folder1 中的大部分文件将被复制到 folder2,除了一些文件由于上述异常而失败。有没有人和我有同样的问题,如何解决这个问题?提前致谢。

最佳答案

HFTP 使用数据节点上的 HTTP Web 服务器来获取数据。检查此 HTTP Web 服务器是否在所有数据节点上工作。我得到了这个确切的错误,调试后我发现由于一些损坏的 jar 文件,一些数据节点上的这个 web 服务器没有启动。

这个网络服务器在你启动一个数据节点时启动。您可以检查 datanode 日志的前 500 行以查看网络服务器是否正在启动。

关于hadoop distcp 故障转移 hftp 协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19372904/

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