Hadoop无法访问NameNode Web页面解决方法

文章讲述了用户在搭建Hadoop集群时遇到NameNode无法从外部访问的问题,通过ChatGPT得到的解决方案包括检查防火墙设置、HDFS配置文件(dfs.namenode.http-address),以及确认网络配置允许远程访问。
摘要由CSDN通过智能技术生成

今天学习Hadoop组建集群,启动后外部使用192.168.100.110:9870访问NameNode显示连接拒绝,关掉防火墙后依然不行。只有Linux本地能访问。

折腾半天,最后问了ChatGPT,原来是HDFS配置文件的dfs.namenode.http-address配置有问题
修改hdfs-site.xml
原始配置:

<!-- NameNode Web端访问地址 -->
  <property>
    <name>dfs.namenode.http-address</name>
    <value>host110:9870</value><!--host110是我本机Linux的主机名 -->
  </property>

修改后:

  <!-- NameNode Web端访问地址 -->
  <property>
    <name>dfs.namenode.http-address</name>
    <value>0.0.0.0:9870</value>
  </property>

ChatGPT回复:

这个问题通常是由于防火墙或网络配置限制所导致的。首先,确保你的防火墙设置允许外部访问该端口。在Hadoop所在的机器上,检查防火墙设置并打开端口 9870:

如果你使用的是 iptables,你可以使用以下命令打开端口:

sudo iptables -I INPUT -p tcp --dport 9870 -j ACCEPT
sudo service iptables save
sudo systemctl restart iptables

如果你使用的是 firewalld,你可以使用以下命令打开端口:

sudo firewall-cmd --zone=public --add-port=9870/tcp --permanent
sudo firewall-cmd --reload

如果防火墙并不是问题,那么检查一下Hadoop的配置文件,确保NameNode的配置中没有指定仅允许本地访问。在 hdfs-site.xml 文件中查找类似以下内容的配置项:

<property>
  <name>dfs.namenode.http-address</name>
  <value>0.0.0.0:9870</value> <!--确保这里监听的是 0.0.0.0 而不是 127.0.0.1-->
</property>

如果 dfs.namenode.http-address 的值是 localhost127.0.0.1,请将其更改为 0.0.0.0,这样NameNode就可以接受来自任何IP的连接。

最后,确保网络配置没有限制Hadoop服务只能在本地访问。检查网络设置、路由器配置或任何其他可能影响外部访问的网络设备。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JAVA小菜鸡223

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值