hadoop报错could only be replicated to 0 nodes instead of minReplication (=1). There are 1 datanode(s)

执行命令

hdfs dfs -put etc/hadoop/* input

报错 

hdfs.DFSClient: DataStreamer Exception
org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /user/hadoop/input/httpfs-site.xml._COPYING_ could only be replicated to 0 nodes instead of minReplication (=1).  There are 1 datanode(s) running and 1 node(s) are excluded in this operation.
        at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget4NewBlock(BlockManager.java:1547)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getNewBlockTargets(FSNamesystem.java:3107)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:3031)

按照网上的方法解决不了问题

在hdfs-site.xml 需要加上,并重启 stop-all.sh、start-all.sh
 
        dfs.datanode.use.datanode.hostname
        true
 

另外网上也有讲防火墙问题的,对我来讲不存在防火墙问题, 但是文件确实写入了

不影响使用

我的理解可能是因为我从别的机器整体copy过来的, 原来的机器的blockId是带上原机器的ip的

这个ip我试图修改成本机的ip,包括BlockId一并修改的,但是不行, 仍然在找旧的ip

你可能感兴趣的:(hadoop,大数据,分布式)