阿里云上dataNode无法启动,并报错:java.net.BindException: Port in use: master:50070 at org.apache.hadoop"/>
hadoop 在阿里云上dataNode无法启动,并报错:java.net.BindException: Port in use: master:50070 at org.apache.hadoop
报错信息
发现hadoop没有启动NameNode和dataNode,并生成如下的报错:
java.BindException: Port in use: master:50070at org.apache.hadoop.http.HttpServer2.constructBindException(HttpServer2.java:1344)at org.apache.hadoop.http.HttpServer2.bindForSinglePort(HttpServer2.java:1366)at org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:1429)at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:1275)at org.apache.hadoop.hdfs.server.namenode.NameNodeHttpServer.start(NameNodeHttpServer.java:170)at org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:954)at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:765)at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:1020)at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:995)at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1769)at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1834)
诡异的地方:通过查看本地端口,50070并没有被占用。
解决办法
通过查阅阿里云的一些使用文档可以知道,本地启动很多服务在地址写法上是有限制的,比如,localhost和127.0.0.1不能指代本地地址。所以这里我们打开:/etc/hosts,将master对应的地址改为局域网地址:
(1)查看局域网ip地址方法
(2)修改/etc/hosts的方法
vim etc/hosts
这里只用修改master的hosts的文件即可
访问web端
成功的访问了web端
更多推荐
hadoop 在阿里云上dataNode无法启动,并报错:java.net.BindException: Port in use: master:50070 a
发布评论