2014-02-05 3 views
0

8 노드 IB (OFED-1.5.3-4.0.42) 클러스터에 Hadoop-RDMA를 배포하려고하는데 다음과 같은 문제가 있습니다. (일명 파일 ... 0 만 노드에 복제 될 수있는 대신 하나의) :Hadoop : 파일 ... 1 대신 0 노드로 복제 될 수 있습니다.

 
[email protected]:~/hadoop-rdma-0.9.8> ./bin/hadoop dfs -copyFromLocal ../pg132.txt /user/frolo/input/pg132.txt 
Warning: $HADOOP_HOME is deprecated. 

14/02/05 19:06:30 WARN hdfs.DFSClient: DataStreamer Exception: java.lang.reflect.UndeclaredThrowableException 
    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(Unknown Source) 
    at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(Unknown Source) 
    at com.sun.proxy.$Proxy1.addBlock(Unknown Source) 
    at org.apache.hadoop.hdfs.From.Code(Unknown Source) 
    at org.apache.hadoop.hdfs.From.F(Unknown Source) 
    at org.apache.hadoop.hdfs.From.F(Unknown Source) 
    at org.apache.hadoop.hdfs.The.run(Unknown Source) 
Caused by: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /user/frolo/input/pg132.txt could only be replicated to 0 nodes, instead of 1 
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(Unknown Source) 
    at org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(Unknown Source) 
    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(Unknown Source) 
    at org.apache.hadoop.ipc.rdma.madness.Code(Unknown Source) 
    at org.apache.hadoop.ipc.rdma.madness.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at javax.security.auth.Subject.doAs(Subject.java:415) 
    at org.apache.hadoop.security.UserGroupInformation.doAs(Unknown Source) 
    at org.apache.hadoop.ipc.rdma.be.run(Unknown Source) 
    at org.apache.hadoop.ipc.rdma.RDMAClient.Code(Unknown Source) 
    at org.apache.hadoop.ipc.rdma.RDMAClient.call(Unknown Source) 
    at org.apache.hadoop.ipc.Tempest.invoke(Unknown Source) 
    ... 12 more` 

14/02/05 19:06:30 WARN hdfs.DFSClient: Error Recovery for null bad datanode[0] nodes == null 
14/02/05 19:06:30 WARN hdfs.DFSClient: Could not get block locations. Source file "/user/frolo/input/pg132.txt" - Aborting... 
14/02/05 19:06:30 INFO hdfs.DFSClient: exception in isClosed 

은 내가 HDFS 로컬 파일 시스템에서 복사를 시작할 때 데이터가되는 DataNode로 전송되지 않는 것 같다. 나는 데이터 노드의 가용성을 테스트했다 :

 
[email protected]:~/hadoop-rdma-0.9.8> ./bin/hadoop dfsadmin -report 
Warning: $HADOOP_HOME is deprecated. 

Configured Capacity: 0 (0 KB) 
Present Capacity: 0 (0 KB) 
DFS Remaining: 0 (0 KB) 
DFS Used: 0 (0 KB) 
DFS Used%: �% 
Under replicated blocks: 0 
Blocks with corrupt replicas: 0 
Missing blocks: 0` 

------------------------------------------------- 
Datanodes available: 0 (4 total, 4 dead)` 

`Name: 10.10.1.13:50010 
Decommission Status : Normal 
Configured Capacity: 0 (0 KB) 
DFS Used: 0 (0 KB) 
Non DFS Used: 0 (0 KB) 
DFS Remaining: 0(0 KB) 
DFS Used%: 100% 
DFS Remaining%: 0% 
Last contact: Wed Feb 05 19:02:54 MSK 2014 


Name: 10.10.1.14:50010 
Decommission Status : Normal 
Configured Capacity: 0 (0 KB) 
DFS Used: 0 (0 KB) 
Non DFS Used: 0 (0 KB) 
DFS Remaining: 0(0 KB) 
DFS Used%: 100% 
DFS Remaining%: 0% 
Last contact: Wed Feb 05 19:02:54 MSK 2014 


Name: 10.10.1.16:50010 
Decommission Status : Normal 
Configured Capacity: 0 (0 KB) 
DFS Used: 0 (0 KB) 
Non DFS Used: 0 (0 KB) 
DFS Remaining: 0(0 KB) 
DFS Used%: 100% 
DFS Remaining%: 0% 
Last contact: Wed Feb 05 19:02:54 MSK 2014 


Name: 10.10.1.11:50010 
Decommission Status : Normal 
Configured Capacity: 0 (0 KB) 
DFS Used: 0 (0 KB) 
Non DFS Used: 0 (0 KB) 
DFS Remaining: 0(0 KB) 
DFS Used%: 100% 
DFS Remaining%: 0% 
Last contact: Wed Feb 05 19:02:55 MSK 2014 

그리고 성공한 HDFS 파일 시스템에서 mkdir을 시도했다. Hadoop 데몬을 다시 시작해도 긍정적 인 효과가 발생하지 않습니다.

이 문제로 저를 도울 수 있습니까? 고맙습니다.

최저

, 알렉스

+0

가능한 복제본 [HDFS 오류 : 1 대신에 0 노드에만 복제 가능] (http://stackoverflow.com/questions/5293446/hdfs-error-could-only-be-replicated-to-0 -nodes-of-1) – vefthym

+0

용량이 0KB라는 것을 알지 못하는 것 같습니다. 이유를 이해할 수 없습니까? – Alexander

+0

데이터 노드가 작동하지 않으면 데이터 노드 로그를 확인하십시오. "사용 가능한 데이터 노드 : 0 (총 4, 사망 4)" – rVr

답변

4

나는 내 문제를 발견했다. 이 문제는 NFS 파티션으로 설정된 hadoop.tmp.dir의 구성과 관련이 있습니다. 기본적으로 로컬 fs 인/tmp로 구성됩니다. core-site.xml에서 hadoop.tmp.dir을 제거한 후 문제가 해결되었습니다.