“could only be replicated to 0 nodes, instead of 1”的解决办法

来源:互联网 发布:青岛软件开发 编辑:程序博客网 时间:2024/05/17 01:58

“could only be replicated to 0 nodes, instead of 1”解决办法

.

.

        刚刚开始学习Hadoop,在执行其中一个例子://Hadoop文件夹中的上级文件夹的input文件夹上传到Hadoop文件系统中,命令如下:

 

                   bin/hadoop dfs –put ../input in       

 

         但是执行了之后却提示could only be replicated to 0 nodes,instead of 1,最开始的时候是只能将input目录中的1个test1.txt上传过去,后来进行了重启Hadoop操作之后可以将两个test1.txt和test2.txt都上传到Hadoop了,但是发现高兴的早了,因为两个文件的大小都为0,明明我向里面写数据了,但是上传之后都变成了0的大小,之后上网搜罗了半天试了好多,最终将问题解决,从几方面给大家提醒:

 

         1、使用jps命令,查看Datanode是否启动了,如果没有启动成功,进入Hadoop的存放数据节点的data目录(比如我的目录是usr/hadoop-0.20.2/data),将其中的所有文件删除(这样保证了下次启动Hadoop的时候Datanode可以启动起来),因为有可能是保留了以前不兼容的数据。

         2、关闭Hadoopbin/stop-all.sh

         3、关闭防火墙:  chkconfig iptables on/off                    //机器永久生效

                                               service iptables start/stop                //机器当次生效,重启失效

         4、启动Hadoopbin/start-all.sh;

 

         我的问题就这样解决了,但是有可能还不行的话,就在启动之前格式化一下Hadoop:

bin/hadoop dfs -format

 

 

原创粉丝点击