在解决这个问题之前还有个小插曲:
cd /usr/local/hadoop
./sbin/start-all.sh
hive
报错:
- WARN:Establishing SSL connection without server’s identity verification is not recommended.
- Call from hostname/127.0.1.1 to localhost:9000 failed on connection exception.
首先解决第一个问题(小插曲):
配置hive-site.xml文件:
jdbc:mysql://localhost:3306/hive?vertifyServerCertificate=false&useSSL=false
加上黑体部分代码。
再解决主节点9000端口拒绝访问的问题:
我试了很多方法才成功,我把解决这个问题做过的调试全部记录下来。
- 修改/etc/hosts文件,将::1开头的那一行注释掉(代码前面加上#即可);
注意:修改该文件需要root权限,开启方法:sudo -i vim /etc/hosts #按i在原地插入,插入完之后按Esc,输入:wq,回车,完成修改。 exit
- 修改core-site.xml文件,将localhost改为主机名。
主机名查询方法:hostname
- 初始化名称节点:
bin/hadoop namenode -format
重启hadoop:./sbin/start-all.sh
- 关闭hadoop:
./sbin/stop-all.sh
关闭防火墙:service iptables stop
查询9000端口是否开启:lsof -i:9000
,若未开启,检查core-site.xml配置是否正确。
若开启,查询9000端口是否连接:netstat -tlpn
(我到这一步就成功了,主机ip成功连接上9000端口)