У меня есть несколько java-систем, которые я хочу использовать с ним hadoop, но всякий раз, когда я подключаюсь к localhost с помощью этой команды
hadoop fs -ls /
, он всегда запрашивает
java.net.UnknownHostException: local.localdomain: diginiqlinux.localdomain
at java.net.InetAddress.getLocalHost(InetAddress.java:1466)
edit
вот мой // etc / hosts
127.0.0.1 localhost
полный журнал трассировки
[root@diginiqlinux ~]# hadoop fs -ls
13/12/30 16:44:36 INFO metrics.MetricsUtil: Unable to obtain hostName
java.net.UnknownHostException: diginiqlinux.localdomain: diginiqlinux.localdomai n
at java.net.InetAddress.getLocalHost(InetAddress.java:1466)
at org.apache.hadoop.metrics.MetricsUtil.getHostName(MetricsUtil.java:91 )
at org.apache.hadoop.metrics.MetricsUtil.createRecord(MetricsUtil.java:8 0)
at org.apache.hadoop.security.UserGroupInformation$UgiMetrics.<init>(Use rGroupInformation.java:102)
at org.apache.hadoop.security.UserGroupInformation.<clinit>(UserGroupInf ormation.java:208)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:1757 )
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:1750 )
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1618)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:255)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:124)
at org.apache.hadoop.fs.FsShell.init(FsShell.java:86)
at org.apache.hadoop.fs.FsShell.run(FsShell.java:1813)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.fs.FsShell.main(FsShell.java:1974)
Caused by: java.net.UnknownHostException: diginiqlinux.localdomain
at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:894)
at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:128 6)
at java.net.InetAddress.getLocalHost(InetAddress.java:1462)
... 14 more
ls: Cannot access .: No such file or directory.
любое решение, как подключить localhost?
Добавьте запись 127.0.0.1 для localhost в файл /etc/hosts
.
127.0.0.1 localhost
В файле / etc / hosts может быть строка 127.0.1.1 [hostname]
. Я бы изменил это на 127.0.0.1 [hostname]
. Я считаю, что это необходимо для правильной работы sudo, и, как правило, в этом есть проблема. http://wiki.apache.org/hadoop/ConnectionRefused core-site.xml также может использовать localhost
или hostname
, убедитесь, что он настроен правильно.
<property>
<name>fs.defaultFS</name>
<value>hdfs://[hostname]:9000</value>
</property>