首先,这个坑逼错误可能是由于端口号没有开启导致的(比如9000端口),使用命令查看一下相应端口号是否存在。
sudo netstat -tpnl
若看到9000端口,则说明端口号正常开启,导致报错的原因是主节点9000端口打开了,但是不允许远程访问。
若未看到9000端口,说明datanode以及namenode没有成功启动,此时可以看一下配置文件(core-site.xml以及hdfs-site.xml)是否出现问题,真不行的话格式化namenode,命令如下。之后重启hdfs。
hdfs namenode -format
若看到9000端口,则说明此时9000端口不允许远程访问。
更改core-site.xml
及中间的master名字不要填写为localhost,需要更改为当前主机的主机名字。
同时检查Hadoop的各个节点在etc/hosts中的配置是否有127.0.1.1 xxxxxx。如果有把其屏蔽或者删除,重启各节点即可,保持ip地址与主机名字之间的干净映射。
原因:127.0.1.1是debian中的本地回环。这个造成了hadoop解析出现问题。这个设置应该是在做伪分布式的hadoop集群的时候,留下来的。
如果照上面的方法还是出现同样的问题,自求多福吧那就。