【发布时间】:2015-01-31 02:11:46
【问题描述】:
我在 GCE hadoop 集群上执行 hadoop fs shell 命令 -appendToFile 时遇到问题。我在 GCE 集群上使用其他 hadoop shell 命令(例如 -cat、-put、-mv)取得了成功。此外,我可以在不同的 hadoop 集群上使用 -appendToFile。但是,我无法在 GCE hadoop 集群上使用 -appendToFile。我尝试过的语法:
hdfs dfs -appendToFile two.log /tmp/test/one.log
产量:
"appendToFile: 无法关闭文件 /tmp/test/one.log。租约恢复正在进行中。稍后再试。"其中 one.log 是 hdfs 上的现有文件,而 two.log 是本地文件系统上的现有文件。
另外:
hadoop fs -appendToFile two.log /tmp/test/one.log
产生许多以以下开头的错误:
java.io.IOException: 由于没有更多好的数据节点可供尝试,无法替换现有管道上的坏数据节点。
我不熟悉这些错误,我相信我的语法使用是正确的。我已经确认其他 hadoop 命令正在使用类似的语法。同样的命令也适用于其他集群。任何意见,将不胜感激。谢谢!
【问题讨论】:
-
如果您使用 bdutil,DEFAULT_FS 的值是多少,或者 /home/hadoop/hadoop-install/conf/core-site.xml 中的 fs.default.name 的值是多少? (或者其他 ${HADOOP_HOME}/conf/core-site.xml 如果您没有使用 bdutil 或 Click-to-Deploy)?
标签: hadoop google-compute-engine google-cloud-platform