Hadoop格式化HDFS报错java.net.UnknownHostException: localhost.localdomain: localhost.localdomain

转载 2015年07月07日 19:50:35

http://blog.csdn.net/shirdrn/article/details/6562292

异常描述


在对HDFS格式化,执行hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示:

  1.  [shirdrn@localhost bin]$ hadoop namenode -format  
  2. 11/06/22 07:33:31 INFO namenode.NameNode: STARTUP_MSG:   
  3. /************************************************************  
  4. STARTUP_MSG: Starting NameNode  
  5. STARTUP_MSG:   host = java.net.UnknownHostException: localhost.localdomain: localhost.localdomain  
  6. STARTUP_MSG:   args = [-format]  
  7. STARTUP_MSG:   version = 0.20.0  
  8. STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/core/branches/branch-0.20 -r 763504; compiled by 'ndaley' on Thu Apr  9 05:18:40 UTC 2009  
  9. ************************************************************/  
  10. Re-format filesystem in /tmp/hadoop/hadoop-shirdrn/dfs/name ? (Y or N) Y  
  11. 11/06/22 07:33:36 INFO namenode.FSNamesystem: fsOwner=shirdrn,shirdrn  
  12. 11/06/22 07:33:36 INFO namenode.FSNamesystem: supergroup=supergroup  
  13. 11/06/22 07:33:36 INFO namenode.FSNamesystem: isPermissionEnabled=true  
  14. 11/06/22 07:33:36 INFO metrics.MetricsUtil: Unable to obtain hostName  
  15. java.net.UnknownHostException: localhost.localdomain: localhost.localdomain  
  16.         at java.net.InetAddress.getLocalHost(InetAddress.java:1353)  
  17.         at org.apache.hadoop.metrics.MetricsUtil.getHostName(MetricsUtil.java:91)  
  18.         at org.apache.hadoop.metrics.MetricsUtil.createRecord(MetricsUtil.java:80)  
  19.         at org.apache.hadoop.hdfs.server.namenode.FSDirectory.initialize(FSDirectory.java:73)  
  20.         at org.apache.hadoop.hdfs.server.namenode.FSDirectory.<init>(FSDirectory.java:68)  
  21.         at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:370)  
  22.         at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:853)  
  23.         at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:947)  
  24.         at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:964)  
  25. 11/06/22 07:33:36 INFO common.Storage: Image file of size 97 saved in 0 seconds.  
  26. 11/06/22 07:33:36 INFO common.Storage: Storage directory /tmp/hadoop/hadoop-shirdrn/dfs/name has been successfully formatted.  
  27. 11/06/22 07:33:36 INFO namenode.NameNode: SHUTDOWN_MSG:   
  28. /************************************************************  
  29. SHUTDOWN_MSG: Shutting down NameNode at java.net.UnknownHostException: localhost.localdomain: localhost.localdomain  
  30. ************************************************************/  
我们通过执行hostname命令可以看到:
  1. [shirdrn@localhost bin]# hostname  
  2. localhost.localdomain  
也就是说,Hadoop在格式化HDFS的时候,通过hostname命令获取到的主机名是localhost.localdomain,然后在/etc/hosts文件中进行映射的时候,没有找到,看下我的/etc/hosts内容:
  1. [root@localhost bin]# cat /etc/hosts  
  2. # Do not remove the following line, or various programs  
  3. # that require network functionality will fail.  
  4. 127.0.0.1               localhost       localhost  
  5. 192.168.1.103           localhost       localhost  
也就说,通过localhost.localdomain根本无法映射到一个IP地址,所以报错了。

此时,我们查看一下/etc/sysconfig/network文件:

  1. NETWORKING=yes  
  2. NETWORKING_IPV6=yes  
  3. HOSTNAME=localhost.localdomain  

可见,执行hostname获取到这里配置的HOSTNAME的值。


解决方法


修改/etc/sysconfig/network中HOSTNAME的值为localhost,或者自己指定的主机名,保证localhost在/etc/hosts文件中映射为正确的IP地址,然后重新启动网络服务:

  1. [root@localhost bin]# /etc/rc.d/init.d/network restart  
  2. Shutting down interface eth0:  [  OK  ]  
  3. Shutting down loopback interface:  [  OK  ]  
  4. Bringing up loopback interface:  [  OK  ]  
  5. Bringing up interface eth0:    
  6. Determining IP information for eth0... done.  
  7. [  OK  ]  

这时,再执行格式化HDFS命令,以及启动HDFS集群就正常了。

格式化:

  1. [shirdrn@localhost bin]$ hadoop namenode -format  
  2. 11/06/22 08:02:37 INFO namenode.NameNode: STARTUP_MSG:   
  3. /************************************************************  
  4. STARTUP_MSG: Starting NameNode  
  5. STARTUP_MSG:   host = localhost/127.0.0.1  
  6. STARTUP_MSG:   args = [-format]  
  7. STARTUP_MSG:   version = 0.20.0  
  8. STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/core/branches/branch-0.20 -r 763504; compiled by 'ndaley' on Thu Apr  9 05:18:40 UTC 2009  
  9. ************************************************************/  
  10. 11/06/22 08:02:37 INFO namenode.FSNamesystem: fsOwner=shirdrn,shirdrn  
  11. 11/06/22 08:02:37 INFO namenode.FSNamesystem: supergroup=supergroup  
  12. 11/06/22 08:02:37 INFO namenode.FSNamesystem: isPermissionEnabled=true  
  13. 11/06/22 08:02:37 INFO common.Storage: Image file of size 97 saved in 0 seconds.  
  14. 11/06/22 08:02:37 INFO common.Storage: Storage directory /tmp/hadoop/hadoop-shirdrn/dfs/name has been successfully formatted.  
  15. 11/06/22 08:02:37 INFO namenode.NameNode: SHUTDOWN_MSG:   
  16. /************************************************************  
  17. SHUTDOWN_MSG: Shutting down NameNode at localhost/127.0.0.1  
  18. ************************************************************/  
启动:
  1. [shirdrn@localhost bin]$ start-all.sh   
  2. starting namenode, logging to /home/shirdrn/eclipse/eclipse-3.5.2/hadoop/hadoop-0.20.0/logs/hadoop-shirdrn-namenode-localhost.out  
  3. localhost: starting datanode, logging to /home/shirdrn/eclipse/eclipse-3.5.2/hadoop/hadoop-0.20.0/logs/hadoop-shirdrn-datanode-localhost.out  
  4. localhost: starting secondarynamenode, logging to /home/shirdrn/eclipse/eclipse-3.5.2/hadoop/hadoop-0.20.0/logs/hadoop-shirdrn-secondarynamenode-localhost.out  
  5. starting jobtracker, logging to /home/shirdrn/eclipse/eclipse-3.5.2/hadoop/hadoop-0.20.0/logs/hadoop-shirdrn-jobtracker-localhost.out  
  6. localhost: starting tasktracker, logging to /home/shirdrn/eclipse/eclipse-3.5.2/hadoop/hadoop-0.20.0/logs/hadoop-shirdrn-tasktracker-localhost.out  
查看:
  1. [shirdrn@localhost bin]$ jps  
  2. 8192 TaskTracker  
  3. 7905 DataNode  
  4. 7806 NameNode  
  5. 8065 JobTracker  
  6. 8002 SecondaryNameNode  
  7. 8234 Jps 

相关文章推荐

Hadoop格式化HDFS报错java.net.UnknownHostException: localhost.localdomain: localhost.localdomain

异常描述 在对HDFS格式化,执行hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示: [shirdrn@localhost bin]$ ...
  • shirdrn
  • shirdrn
  • 2011年06月22日 23:04
  • 51957

Hadoop格式化HDFS报错java.net.UnknownHostException: localhost.localdomain: localhost.localdomain

异常描述 在对HDFS格式化,执行hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示: [plain] view ...

Hadoop格式化报错java.net.UnknownHostException:

异常描述 在对HDFS格式化,执行Hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示: [plain] view ...

[ActiveMQ]java.net.UnknownHostException: localhost

问题描述: 今天在配置jms的时候,修改了jms的配置文件: 但是在启动jms的时候,报了一个错误: Loading message broker from: xbean:activemq.xm...

Starting MySQL...The server quit without updating PID file [失败]lib/mysql/localhost.localdomain.pid).

重启了一下服务器,启动后就报以下错误了:Starting MySQL...The server quit without updating PID file [失败]lib/mysql/localho...

hadoop java api操作hdfs出现Retrying connect to server: localhost/127.0.0.1:8020

写了一个简单的java代码查看hdfs 上文件内容,结果无法连接,出现Retrying connect to server: localhost/127.0.0.1:8020,具体如下: 4/03/...

android连接服务器时,报:java.net.ConnectException: localhost/127.0.0.1:8080

android连接服务器时,报:java.net.ConnectException: localhost/127.0.0.1:8080

严重:StandardServer.await:create[localhost 8005]:java.net.BindException

在使用tomcat服务器运行程序时,我们可能会遇到这样的问题:          由上面的信息可以发现,该问题是由于8005端口号已经被占用,所以我们需要对这样的端口号进行设置,因而找到tomca...
  • YSC1123
  • YSC1123
  • 2015年05月01日 21:07
  • 3211

to localhost:8020 failed on connection exception: java.net.ConnectException: 拒绝连接

在MapReduce程序中设定输入路径为“hdfs://127.0.0.1/home/in”,执行程序报如下错误: Exception in thread "main" java.net.Con...

hadoop异常:hdfs.server.datanode.DataNode: Problem connecting to server: localhost/127.0.0.1:8020

已经在我机子UBUNTU13.10上面安装了hadoop的伪节点分布,现在我想运行一个最基本的测试程序。 首先我的电脑名字是Tank, 我在这台电脑上的账户名是joe 我的hadoop安装...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hadoop格式化HDFS报错java.net.UnknownHostException: localhost.localdomain: localhost.localdomain
举报原因:
原因补充:

(最多只允许输入30个字)