centos linux 系统:
新增加了一个datanode节点,启动时发现如下错误..........
2012-12-31 15:49:11,853 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.net.UnknownHostException: locahost: locahost
at java.net.InetAddress.getLocalHost(InetAddress.java:1374)
at org.apache.hadoop.security.SecurityUtil.getLocalHostName(SecurityUtil.java:252)
at org.apache.hadoop.security.SecurityUtil.login(SecurityUtil.java:270)
at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:291)
at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1582)
at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1521)
at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1539)
at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1665)
at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1682)
- UnknownHostException
不可解析的网络名称,只要在出错误salve DataNode的机器 /etc/hosts 下增加一行
127.0.0.1 错误的网络名称
保存退出,主机重启hdfs,OK了。
但,奇怪的是机器名称locahost 不在 /etc/sysconfig/network中;找了很久,发现在/proc/sys/kernel/hostname文件中。
临时修改下,输入命令:
hostname 新的网络名称
但这种在机器重启后自动失效
/etc/sysconfig/network 文件中
HOSTNAME=新的网络名称
检查当前机器的网络名称,3种都等效
- [root@locahost logs]# cat /proc/sys/kernel/hostname
host26 - [root@locahost logs]# uname -n
host26 - [root@locahost logs]# hostname
host26
还是很奇怪,[root@locahost logs],这里还是显示locahost,这个名称在哪能能修改?