Hadoop名称节点未开始使用

时间:2016-04-25 20:31:37

标签: hadoop bigdata

我正在尝试在完全分布式模式下配置Hadoop,其中1个主服务器和1个从服务器作为不同的节点。我附上了一个截图,显示了我的主节点和从节点的状态。

在硕士中: ubuntu @ hadoop-master:/ usr / local / hadoop / etc / hadoop $ $ HADOOP_HOME / bin / hdfs dfsadmin -refreshNodes

refreshNodes:本地异常失败:com.google.protobuf.InvalidProtocolBufferException:协议消息标记的线路类型无效。主机详细信息:本地主机为:“hadoop-master / 127.0.0.1”;目的地主机是:“hadoop-master”:8020;

这是我尝试运行refresh nodes命令时遇到的错误。谁能告诉我我错过了什么或我做了什么错误?

Master & Slave Screenshot

  

2016-04-26 03:29:17,090 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem:为待机状态启动停止服务       2016-04-26 03:29:17,095 INFO org.mortbay.log:已停止HttpServer2 $SelectChannelConnectorWithSafeStartup@0.0.0.0:50070       2016-04-26 03:29:17,095 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl:停止NameNode指标系统...       2016-04-26 03:29:17,095 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl:NameNode指标系统已停止。       2016-04-26 03:29:17,096 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl:NameNode metrics系统关闭完成。       2016-04-26 03:29:17,097 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode:无法启动namenode。       java.net.BindException:绑定到[hadoop-master:8020]的问题java.net.BindException:地址已在使用中;有关详细信息,请参阅:http://wiki.apache.org/hadoop/BindException           at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)           at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)           at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)           at java.lang.reflect.Constructor.newInstance(Constructor.java:526)           在org.apache.hadoop.net.NetUtils.wrapWithMessage(NetUtils.java:792)           在org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:721)           在org.apache.hadoop.ipc.Server.bind(Server.java:425)           在org.apache.hadoop.ipc.Server $ Listener。(Server.java:574)           在org.apache.hadoop.ipc.Server。(Server.java:2215)           在org.apache.hadoop.ipc.RPC $ Server。(RPC.java:938)           在org.apache.hadoop.ipc.ProtobufRpcEngine $ Server。(ProtobufRpcEngine.java:534)           在org.apache.hadoop.ipc.ProtobufRpcEngine.getServer(ProtobufRpcEngine.java:509)           在org.apache.hadoop.ipc.RPC $ Builder.build(RPC.java:783)           在org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer。(NameNodeRpcServer.java:344)           at org.apache.hadoop.hdfs.server.namenode.NameNode.createRpcServer(NameNode.java:673)           在org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:646)           在org.apache.hadoop.hdfs.server.namenode.NameNode。(NameNode.java:811)           在org.apache.hadoop.hdfs.server.namenode.NameNode。(NameNode.java:795)           at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1488)           at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1554)       引起:java.net.BindException:地址已在使用中           在sun.nio.ch.Net.bind0(原生方法)           在sun.nio.ch.Net.bind(Net.java:463)           在sun.nio.ch.Net.bind(Net.java:455)           at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)           at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)           在org.apache.hadoop.ipc.Server.bind(Server.java:408)           ......还有13个       2016-04-26 03:29:17,103 INFO org.apache.hadoop.util.ExitUtil:退出状态1       2016-04-26 03:29:17,109 INFO org.apache.hadoop.hdfs.server.namenode.NameNode:SHUTDOWN_MSG:       / ******************* ***********       SHUTDOWN_MSG:在hadoop-master / 127.0.0.1上关闭NameNode       ************************************************** ********** /       的ubuntu @ Hadoop的主:在/ usr /本地/ hadoop的$

4 个答案:

答案 0 :(得分:0)

需要格式化DFS。只需发出以下命令;

hadoop namenode -format

或者

hdfs namenode -format

答案 1 :(得分:0)

检查core-site.xml中的namenode地址。更改为50070或9000并尝试

namenode Web UI的默认地址为http://localhost:50070/。您可以在浏览器中打开此地址并查看名称节点信息。

namenode服务器的默认地址是hdfs:// localhost:8020 /。您可以通过HDFS api连接到它以访问HDFS。这是真实的服务地址。

http://blog.cloudera.com/blog/2009/08/hadoop-default-ports-quick-reference/

答案 2 :(得分:0)

尝试格式化Namenode。 $] hadoop namenode -format

答案 3 :(得分:0)

您的错误日志清楚地表明它无法绑定默认端口。

java.net.BindException: Problem binding to [hadoop-master:8020] java.net.BindException: Address already in use; For more details see:  http://wiki.apache.org/hadoop/BindException

您需要将默认端口更改为某个免费的端口。

以下是hdfs-default.xmlhere中提供的端口列表。