Я создаю кластер hadoop с двумя ящиками Ubuntu. У меня есть специальный пользователь Hadoop на каждой машине под названием «hduser». Когда я использую "start-dfs.sh" на ведущем устройстве, DataNode создается как на ведущем, так и на ведомом устройстве. Но NameNode не создается на мастере. Даже когда я прошу демон специально запустить NameNode, это не работает.
hduser@hbase1:~$ bash /usr/local/hadoop/sbin/hadoop-daemon.sh start namenode
starting namenode, logging to /usr/local/hadoop/logs/hadoop-hduser-namenode-hbase1.out
hduser@hbase1:~$ jps
20992 Jps
19492 DataNode
Файл журнала содержит следующее:
2013-12-31 14:45:52,585 FATAL org.apache.hadoop.hdfs.server.namenode.NameNode:
Exception in namenode join
java.net.BindException: Port in use: 0.0.0.0:50070
at org.apache.hadoop.http.HttpServer.openListener(HttpServer.java:742)
at org.apache.hadoop.http.HttpServer.start(HttpServer.java:686)
at org.apache.hadoop.hdfs.server.namenode.NameNodeHttpServer.
start(NameNodeHttpServer.java:153)
at org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:626)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:488)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:684)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:669)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1254)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1320)
Caused by: java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:174)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:139)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:77)
at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
at org.apache.hadoop.http.HttpServer.openListener(HttpServer.java:738)
... 8 more
2013-12-31 14:45:52,588 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 1
2013-12-31 14:45:52,591 INFO org.apache.hadoop.hdfs.server.namenode.NameNode:SHUTDOWN_MSG:
2 ответа
Ваш порт 50070 занят какой-то другой службой.
Вы можете изменить настройки порта веб-интерфейса в core-site.xml на другой порт, отличный от 50070:
<property>
<name>dfs.http.address</name>
<value>50070</value>
</property>
Похоже, для меня проблема связана с конфигурацией. Вы указали 50070 в качестве порта, который будет использоваться NN в вашем core-site.xml? 50070 - это порт, используемый веб-интерфейсом HDFS. Кроме того, он не должен пытаться выполнить привязку к 0.0.0.0. Не могли бы вы показать мне свои файлы конфигурации?
Похожие вопросы
Связанные вопросы
Новые вопросы
ubuntu
Ubuntu - это бесплатная настольная и серверная операционная система, основанная на Debian GNU / Linux. Этот тег предназначен для вопросов программирования, специфичных для Ubuntu. Общая поддержка Ubuntu не по теме. Вопросы поддержки можно задать на https://askubuntu.com/.