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

相关推荐
ServBay几秒前
DeepSeek 再次崩了,DeepSeek V5正在路上?
后端·deepseek
IT规划师1 小时前
编程术语中的同步与异步:从"等不等"到工程取舍
后端·面试
孟陬2 小时前
Foobar 技术周刊#159:当看不懂代码时,如何高效排障调试。脏页陷阱:一条只读查询,写入数 TB 数据。推测解码:大模型加速利器
前端·人工智能·后端
GoGeekBaird2 小时前
别再给每个 AI 做自我介绍了:我做了一个「个人上下文」管理系统
后端·github·agent
码事漫谈2 小时前
腾讯混元 Hy4 正式版发布了
后端
Mikko72 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端
苍何3 小时前
DeepSeek的Super-agent 设计,和我们的工程实践
后端
Patrick_Wilson4 小时前
第一次读 Go 项目:从两个源码文件弄清 package、import 和 go.mod
后端·go·编程语言
Patrick_Wilson4 小时前
执行 go build . 后,Go 怎样找到代码并生成程序
后端·go·编程语言
用户6919026813394 小时前
Redis 2:Redis 在怎么处理harness记忆
后端