Ошибка Hadoop в EC2: может быть реплицирована только на 0 узлов вместо 1 - PullRequest
0 голосов
/ 18 января 2011

Я использую очень маленький кластер hadoop на EC2.

Я запускаю кластер, используя whirr (версия: whirr-0.2.0-инкубация) с 1 (jobtracker + namenode) и 4 (датододы + tasktracker):

    whirr.hardware-id=c1.medium
    whirr.instance-templates=1 jt+nn,4 dn+tt
    whirr.provider=ec2

Когда я запускаю свою работу, я получаю следующую ошибку: не сразу, а через некоторое время :

.....
11/01/17 17:31:47 INFO mapred.JobClient:  map 100% reduce 66%
11/01/17 17:31:49 INFO mapred.JobClient:  map 100% reduce 68%
11/01/17 17:31:52 INFO mapred.JobClient:  map 100% reduce 70%
11/01/17 17:31:56 INFO mapred.JobClient:  map 100% reduce 73%
11/01/17 17:32:01 INFO mapred.JobClient: Task Id : attempt_201101172141_0002_r_000000_0, Status : FAILED
org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /user/root/test/test2/test3/_temporary/_attempt_201101172141_0002_r_000000_0/parts/81/part-00000 could only be replicated to 0 nodes, instead of 1
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1271)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:422)
        at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:508)
.... 

Я обнаружил ту же ошибку в файле журнала Tasktracker:

....
2011-01-17 22:31:36,968 INFO org.apache.hadoop.mapred.JobTracker: Adding task (cleanup)'attempt_201101172141_0002_m_000004_1' to tip task_201101172141_0002_m_000004, for tracker 'tracker_ip-11-222-333-444.ec2.internal:localhost/127.0.0.1:44840'
2011-01-17 22:31:39,972 INFO org.apache.hadoop.mapred.JobTracker: Removed completed task 'attempt_201101172141_0002_m_000004_1' from 'tracker_ip-11-222-333-444.ec2.internal:localhost/127.0.0.1:44840'
2011-01-17 22:31:57,985 INFO org.apache.hadoop.mapred.TaskInProgress: Error from attempt_201101172141_0002_r_000000_0: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /user/root/dsp-test/test1/test2/_temporary/_attempt_201101172141_0002_r_000000_0/parts/81/part-00000 could only be replicated to 0 nodes, instead of 1
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1271)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:422)
    at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

В конфигурации задания у меня есть:

dfs.replication=2
mapred.child.java.opts=-server -Xmx180m -XX:ErrorFile=/mnt/hadoop/logs/logs/java/java_error.log

У кого-нибудь есть идея, почему я получаю эту ошибку?

Заранее спасибо.

1 Ответ

0 голосов
/ 19 января 2011

Вам не хватило места на диске?Иногда, если вам не хватает места на диске, он будет жаловаться таким образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...