使用了3台在不同地区的服务器搭建集群,导致master机器的namenode无法启动的问题
最开始遇到这个问题的时候,在master主机上使用jps命令发现master的namenode没有启动抵赖。于是我去看日志,发现报了一个BindException的错误。然后通过google先把/etc/hosts文件里面的ip映射改了一下,最开始是
外网ip master
这种方式配置的hosts。
我改为了127.0.0.1 master
,然后启动,发现namenode能正常启动了,但是去slave机器看的时候,发现slave机器的DateNode无法与master的NameNode通信。最后又去找了下资料,然后把hosts配置中的127.0.0.1 master
改为了master主机的内网IP master
, 最后再启动发现slave的datanode能正常连接master的NameNode了。
启动yarn报错Unresolved address
在使用start-all.sh启动完毕集群后,去访问8088yarn管理页面的时候,无法访问,然后查看yarn resourcemanager的日志时发现这个报错:
这个错显然是resourcemanager的主机名配置错了,查看hosts文件:
然后把yarn-site.xml的配置改过来,改成chinamaster:
然后集群中的所有yarn-site.xml配置文件都要改过来。