Hadoop 3.x 伪分布式 8088端口无法访问问题处理

【Hadoop】YARN ResourceManager 启动后 8088 端口无法访问问题排查与解决(伪分布式启动Hadoop)

在配置和启动 Hadoop YARN 模块时,发现虽然 ResourceManager 正常启动,JPS 进程中也显示无误,但通过浏览器访问 http://主机IP:8088 时却无法打开 YARN 的 Web UI 页面。本文记录了详细的排查过程与解决方案。


🧩 问题表现

Hadoop 启动正常,JPS 显示:

yaml 复制代码
[hadoop@localhost module]$ jps
2256 NodeManager
2146 ResourceManager
2627 Jps
1915 SecondaryNameNode
1596 NameNode
1710 DataNode

使用 netstat 查看监听端口:

ruby 复制代码
[hadoop@localhost module]$ netstat -tnlp | grep :8088
tcp  0  0 127.0.0.1:8088  0.0.0.0:*  LISTEN  2146/java

发现 8088 只绑定在 127.0.0.1,无法从外部访问。


📄 配置文件内容

配置文件为 ${HADOOP_HOME}/etc/hadoop/yarn-site.xml,内容如下:

xml 复制代码
<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>localhost</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
</configuration>

🛠️ 原因分析

默认配置将 ResourceManager 的监听地址绑定在 localhost(即 127.0.0.1),这意味着只有本机可以访问 8088 端口,其他设备访问时会出现连接超时或拒绝连接的问题。


✅ 解决方法

1️⃣ 修改 ResourceManager 主机名

localhost 修改为机器的实际 IP 地址,例如 192.168.0.110

xml 复制代码
<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>192.168.0.110</value>
</property>

2️⃣ 添加 Web UI 绑定地址

让 ResourceManager 的 Web 页面监听所有 IP:

xml 复制代码
<property>
  <name>yarn.resourcemanager.webapp.address</name>
  <value>0.0.0.0:8088</value>
</property>

📌 最终配置如下:

xml 复制代码
<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>192.168.0.110</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>0.0.0.0:8088</value>
  </property>
</configuration>

3️⃣ 重启 YARN 服务

arduino 复制代码
stop-yarn.sh
start-yarn.sh

检查监听:

perl 复制代码
netstat -tnlp | grep 8088

确认输出:

bash 复制代码
tcp  0  0 0.0.0.0:8088  0.0.0.0:*  LISTEN  xxxx/java

4️⃣ 放通防火墙端口(如有)

css 复制代码
sudo firewall-cmd --add-port=8088/tcp --permanent
sudo firewall-cmd --reload

5️⃣ 访问测试

在浏览器中访问:

arduino 复制代码
http://192.168.0.110:8088

即可正常打开 ResourceManager 的 Web UI 页面。


🔚 总结

遇到 YARN 8088 端口无法访问的问题,通常是由于默认监听在 localhost 导致的。通过修改 yarn-site.xml 配置绑定实际 IP,并设置 Web UI 监听 0.0.0.0,即可顺利解决该问题。

相关推荐
洛克大航海12 小时前
5-SpringCloud-服务链路追踪 Micrometer Tracing
后端·spring·spring cloud·zipkin·micrometer
小咕聊编程12 小时前
【含文档+PPT+源码】基于spring boot的固定资产管理系统
java·spring boot·后端
用户685453759776913 小时前
🎮 Java设计模式:从青铜到王者的代码修炼手册
java·后端
兮动人13 小时前
Java 线程详解
后端
纪卓志George13 小时前
从 AWS 故障反思:广告系统的全球单元化部署
后端·架构
用户9047066835713 小时前
redis-cli Could not connect to Redis at 127.0.0.1:6379: Connection refused
后端
学习OK呀13 小时前
python 多环境下配置运行
后端
这里有鱼汤13 小时前
📊量化实战篇:如何计算RSI指标的“拥挤度指标”?
后端·python
魔术师卡颂14 小时前
不就写提示词?提示词工程为啥是工程?
前端·人工智能·后端
程序员清风14 小时前
快手二面:乐观锁是怎么用它来处理多线程问题的?
java·后端·面试