无法远程操作容器的中的hdfs集群


我在一台虚拟机上启动了3个容器,在容器中分别部署了namenode和两个datanode。

下面是一个拷贝本地文件到hdfs的程序:
public class CopyFile {
public static void main(String[] args) throws IOException {
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://master:9000");
FileSystem fs = FileSystem.get(conf);
Path src = new Path("D:/db/yy");
Path dst = new Path("user/op3");
fs.copyFromLocalFile(src, dst);
fs.close();
}
}

在宿主机上或者以上容器中运行都是是成功的,在其他服务器运行报下面的错误:
org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /user/root/user/op3 could only be replicated to 0 nodes instead of minReplication (=1). There are 2 datanode(s) running and 2 node(s) are excluded in this operation.

求教怎么解决?找了一天没找着原因。
已邀请:

徐磊 - BlackOps@Qunar

赞同来自:


这也不是docker的问题啊,随手搜了一把,希望对你有帮助

http://stackoverflow.com/quest ... ation

智云同学 - 装逼招雷劈,人帅被人欺

赞同来自:


你先在容器内部使用hdfs的命令试试能不能执行copyFromLocal指令

wencan - IT杂工

赞同来自:


看错误信息,应该是namenode与datanode没连上

要回复问题请先登录注册