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

相关推荐
陈随易1 小时前
编程语言级别的Skill市场,AI Agent 的未来形态
前端·后端·程序员
IT_陈寒4 小时前
Vite的热更新突然不香了,排查三小时差点砸键盘
前端·人工智能·后端
子兮曰5 小时前
Agency-Agents 深度解析:400+ AI 专家的"梦之队"如何重塑开发工作流
前端·后端·vibecoding
用户8356290780515 小时前
Python 实现 PDF 文件加密与解密方法
后端·python
小满zs5 小时前
Go语言第二章(小无相功)
后端·go
用户8356290780515 小时前
使用 Python 冻结与拆分 Excel 窗格教程
后端·python
karry_k5 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
妙码生花6 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十九):点选验证码代码逐行目检
前端·后端·go
贰先生6 小时前
Xiuno BBS X版 用户封禁系统
后端
karry_k6 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端