我已经建立了一个伪分布式Hadoop集群(与JobTracker的,一个的TaskTracker,和NameNode的都在同一箱)每教程说明和它的正常工作。我现在正在尝试将另一个节点添加到此群集中作为另一个任务跟踪器。的UnknownHostException上的TaskTracker在Hadoop集群
当我检查节点2上的日志时,除了tasktracker之外,所有日志都很好看。我收到了下面列出的错误消息的无限循环。似乎任务跟踪器试图使用主机名SSP-SANDBOX-1.mysite.com而不是IP地址。这个主机名不在/ etc/hosts中,所以我猜这是问题来自哪里。我没有root访问权限以便将其添加到/ etc/hosts。
是否有任何财产或配置,我可以改变,这样它会停止尝试使用主机名进行连接?
非常感谢,
2011-01-18 17:43:22,896 ERROR org.apache.hadoop.mapred.TaskTracker:
Caught exception: java.net.UnknownHostException: unknown host: SSP-SANDBOX-1.mysite.com
at org.apache.hadoop.ipc.Client$Connection.<init>(Client.java:195)
at org.apache.hadoop.ipc.Client.getConnection(Client.java:850)
at org.apache.hadoop.ipc.Client.call(Client.java:720)
at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:220)
at $Proxy5.getProtocolVersion(Unknown Source)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:359)
at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:106)
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:207)
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:170)
at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:82)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1378)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:66)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1390)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:196)
at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175)
at org.apache.hadoop.mapred.TaskTracker.offerService(TaskTracker.java:1033)
at org.apache.hadoop.mapred.TaskTracker.run(TaskTracker.java:1720)
at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:2833)
感谢您的帮助。我最终只是与管理员交谈,并让他们编辑/ etc/hosts文件以添加该计算机的主机名/ IP地址。它现在工作正常。 – knt 2011-01-19 21:20:17