Hadoop:TaskTracker赢了';t启动java.io.IOException

Hadoop:TaskTracker赢了';t启动java.io.IOException,exception,hadoop,hdfs,java-io,Exception,Hadoop,Hdfs,Java Io,我安装了Hadoop,格式化了HDFS,运行了bin/start-all.sh,运行了bin/stop-all.sh,没有任何问题 现在,每次我运行bin/start-all.sh时,任务跟踪器都无法启动,我在任务跟踪器日志中得到以下条目 2012-03-27 21:22:03,842 ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Ca

我安装了Hadoop,格式化了HDFS,运行了bin/start-all.sh,运行了bin/stop-all.sh,没有任何问题

现在,每次我运行bin/start-all.sh时,任务跟踪器都无法启动,我在任务跟踪器日志中得到以下条目

    2012-03-27 21:22:03,842 ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Call to localhost/127.0.0.1:9001 failed on local exception: java.io.IOException: Connection reset by peer
    at org.apache.hadoop.ipc.Client.wrapException(Client.java:1065)
    at org.apache.hadoop.ipc.Client.call(Client.java:1033)
    at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:224)
    at org.apache.hadoop.mapred.$Proxy5.getProtocolVersion(Unknown Source)
    at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:364)
    at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:347)
    at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:389)
    at org.apache.hadoop.ipc.RPC.waitForProxy(RPC.java:319)
    at org.apache.hadoop.ipc.RPC.waitForProxy(RPC.java:295)
    at org.apache.hadoop.mapred.TaskTracker$3.run(TaskTracker.java:708)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1059)
    at org.apache.hadoop.mapred.TaskTracker.initialize(TaskTracker.java:704)
    at org.apache.hadoop.mapred.TaskTracker.(TaskTracker.java:1328)
    at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:3430)
Caused by: java.io.IOException: Connection reset by peer
    at sun.nio.ch.FileDispatcher.read0(Native Method)
    at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:202)
    at sun.nio.ch.IOUtil.read(IOUtil.java:175)
    at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:243)
    at org.apache.hadoop.net.SocketInputStream$Reader.performIO(SocketInputStream.java:55)
    at org.apache.hadoop.net.SocketIOWithTimeout.doIO(SocketIOWithTimeout.java:142)
    at org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:155)
    at org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:128)
    at java.io.FilterInputStream.read(FilterInputStream.java:116)
    at org.apache.hadoop.ipc.Client$Connection$PingInputStream.read(Client.java:343)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    at java.io.DataInputStream.readInt(DataInputStream.java:370)
    at org.apache.hadoop.ipc.Client$Connection.receiveResponse(Client.java:767)
    at org.apache.hadoop.ipc.Client$Connection.run(Client.java:712)

2012-03-27 21:22:03,843 INFO org.apache.hadoop.mapred.TaskTracker: SHUTDOWN_MSG:
我在其他地方找到了一些关于这一点的参考资料,但一直无法找到解决办法。我必须承认,我是Hadoop新手,老实说,我不知道这个错误在说什么

如果您对我可以尝试的事情有任何想法或建议,我将不胜感激。我希望我已经发布了足够的信息,但不要太多。如果需要更多信息,请告诉我


提前谢谢

您是否确认本地计算机的端口9001上正在运行作业跟踪器:

  • 查找JobTracker的进程id(pid)(
    jps-v或ps-axww | grep JobTracker
  • netstat-atnp | grep${pid}
  • 检查作业跟踪器日志中是否有任何消息(
    ls-l/proc/${pid}/fd
    应列出作业跟踪器的所有打开文件,以便更轻松地定位日志文件)

您是否已确认本地计算机的端口9001上正在运行作业跟踪器:

  • 查找JobTracker的进程id(pid)(
    jps-v或ps-axww | grep JobTracker
  • netstat-atnp | grep${pid}
  • 检查作业跟踪器日志中是否有任何消息(
    ls-l/proc/${pid}/fd
    应列出作业跟踪器的所有打开文件,以便更轻松地定位日志文件)

我按照你说的做了,工作跟踪器正在运行。但是,名称节点似乎没有运行。名称节点日志包含以下条目:
2012-03-28 08:26:03873错误org.apache.hadoop.hdfs.server.namenode.namenode:org.apache.hadoop.hdfs.server.common.unconsistentsstateException:Directory/mnt/home/wenderni/hadoop-0.20.203.0/dfs/name处于不一致状态:存储目录不存在或不可访问。
看起来这是一个比我想象的更严重的问题。我从来没有发现到底是什么问题,但我真的把事情搞砸了。无论如何,我使用的是Alpha版本,所以我更新到了最新版本,并重新配置了所有内容。请告诉我,我现在没有任何问题。谢谢你的帮助,你的回答帮助我学会了如何有效地使用Hadoop日志。我按照你说的做了,job tracker正在运行。但是,名称节点似乎没有运行。名称节点日志包含以下条目:
2012-03-28 08:26:03873错误org.apache.hadoop.hdfs.server.namenode.namenode:org.apache.hadoop.hdfs.server.common.unconsistentsstateException:Directory/mnt/home/wenderni/hadoop-0.20.203.0/dfs/name处于不一致状态:存储目录不存在或不可访问。
看起来这是一个比我想象的更严重的问题。我从来没有发现到底是什么问题,但我真的把事情搞砸了。无论如何,我使用的是Alpha版本,所以我更新到了最新版本,并重新配置了所有内容。请告诉我,我现在没有任何问题。谢谢你的帮助,你的回答帮助我学会了如何有效地使用Hadoop日志。