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,即可顺利解决该问题。

相关推荐
devlei7 小时前
从源码泄露看AI Agent未来:深度对比Claude Code原生实现与OpenClaw开源方案
android·前端·后端
努力的小郑8 小时前
Canal 不难,难的是用好:从接入到治理
后端·mysql·性能优化
Victor3569 小时前
MongoDB(87)如何使用GridFS?
后端
Victor3569 小时前
MongoDB(88)如何进行数据迁移?
后端
小红的布丁9 小时前
单线程 Redis 的高性能之道
redis·后端
GetcharZp9 小时前
Go 语言只能写后端?这款 2D 游戏引擎刷新你的认知!
后端
宁瑶琴11 小时前
COBOL语言的云计算
开发语言·后端·golang
普通网友11 小时前
阿里云国际版服务器,真的是学生党的性价比之选吗?
后端·python·阿里云·flask·云计算
IT_陈寒12 小时前
Vue的这个响应式问题,坑了我整整两小时
前端·人工智能·后端
Soofjan13 小时前
Go 内存回收-GC 源码1-触发与阶段
后端