分享

兄弟们,遇到这样的问题could only be replicated to 0 nodes, instead of 1

chenabc 发表于 2014-4-30 11:53:37 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 5 6231
本帖最后由 pig2 于 2014-4-30 12:01 编辑
兄弟们,遇到这样的问题could only be replicated to 0 nodes, instead of 1
bin/hadoop fs -put ../input ./in
14/04/28 14:03:56 WARN hdfs.DFSClient: DataStreamer Exception: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /user/hp/in/text3.txt could only be replicated to 0 nodes, instead of 1
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1920)
at org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:783)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:587)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1432)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1428)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1426)

at org.apache.hadoop.ipc.Client.call(Client.java:1113)
at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:229)
at com.sun.proxy.$Proxy1.addBlock(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:85)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:62)




已有(5)人评论

跳转到指定楼层
hyj 发表于 2014-4-30 11:56:34
jps看看 是不是datanode没起来呢
回复

使用道具 举报

pig2 发表于 2014-4-30 12:05:24
可以看:
Hadoop常见错误问题及解决方法总结
第四个错误
4、could only be replicatied to 0 nodes, instead of 1
报错:
hdfs.DFSClient: DataStreamer Exception: org.apache.hadoop
.ipc.RemoteException: java.io.IOException: ... could only be replicated to 0 nodes, instead of 1 ...
可能出现的现象:用jps查看进程都正常。但是用web查看的话,live nodes 为0,这说明datanode没有正常启动,可是datanode进程又启动了。

解决方法:
(1) 防火墙原因:
           永久关闭防火墙命令:chkconfig iptables stop
(2)namespaceid不一致
(3) 磁盘空间原因:
           df –ah      #查看磁盘空间
如果是磁盘空间不够,则调整磁盘空间(像下图就是磁盘空间不够)


如果上述方法不行,可用以下方法(只不过会丢失数据,慎用)
A. 先运行stop-all.sh
B. 格式化namenode,不过在这之前先删除原目录,
即core-site.xml下配置的<name>hadoop.tmp.dir</name>指向的目录,
删除后切记重新建立配置的空目录,然后运行命令hadoop namenode-format。
回复

使用道具 举报

chenabc 发表于 2014-4-30 12:06:24
本帖最后由 pig2 于 2014-5-1 22:58 编辑

解决了,namespaceid不一致造成的
回复

使用道具 举报

天宇 发表于 2014-5-1 22:57:59
关闭防火墙:service iptables stop  试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条