idea本地配置连接远程hadoop集群的一些网络问题解决汇总

1.Hadoop本地开发,9000端口拒绝访问

解决
将hosts中的主机名hadoop001指向0.0.0.0而不是127.0.0.1
原理参考博客: https://blog.csdn.net/yjc_1111/article/details/53817750

[hadoop@hadoop001 data]$ vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# 127.0.0.1   hadoop001
0.0.0.0   hadoop001

2.外网无法访问云主机HDFS文件系统&外网无法访问云主机datanode

报错:
Failed to connect to /127.0.0.1:50010 for block BP-***, add to deadNodes and continue.
报错截图
解决办法:
在hdfs-site.xml中增加dfs.datanode.use.datanode.hostname属性,表示datanode之间的通信也通过域名方式。
本地hdfs-site.xml中添加

<property>
    <name>dfs.datanode.use.datanode.hostname</name>
    <value>true</value>
</property>

参考博文:https://my.oschina.net/gordonnemo/blog/3017724

3.京东云修改Hostname,Centos7修改Hostname

使用命令 hostnamectl set-hostname 主机名主机名来修改,修改完毕后重新 SHELL 登录即可。

# 修改hostname并退出
[root@JD ~]# hostnamectl set-hostname hadoop001
[root@JD ~]# exit
logout
# 再次登陆可以发现修改成功
Welcome to JDCLOUD Elastic Compute Service
[root@hadoop001 ~]#

参考:https://blog.csdn.net/SUDDEV/article/details/100069638

4.各版本winutils.exe和hadoop.dll下载

GitHub: https://github.com/4ttty/winutils
下载解压,并将解压的bin目录配置到本地的%HADOOP_HOME%变量
如果还报错再手动加载dll

static {
	System.load("D:/Hadoop/hadoop-2.7.3/bin/hadoop.dll");
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章