温馨提示×

linux hadoop怎么连不上

小樊
46
2026-09-16 17:03:12
栏目: 智能运维

“Linux 下 Hadoop 连不上”是个比较笼统的问题,通常可以从 网络、配置、服务状态、防火墙、日志 几个方向排查。下面给你一个系统性的排查清单(最常见原因都在里面)。


一、先确认 Hadoop 服务是否真的启动了

在 Hadoop 机器上执行:

jps

正常情况下至少应有:

  • NameNode
  • DataNode
  • ResourceManager(YARN)
  • NodeManager

如果缺少关键进程:

start-dfs.sh
start-yarn.sh

或:

start-all.sh

二、检查 Hadoop 配置文件(最容易出错)

1. core-site.xml

<property>
  <name>fs.defaultFS</name>
  <name>hdfs://localhost:9000</name>
</property>

如果你在另一台机器连,localhost 必须改成 IP 或 hostname。

2. hdfs-site.xml

确认:

dfs.namenode.rpc-address

3. yarn-site.xml

yarn.resourcemanager.hostname

三、网络与主机名问题(非常常见)

1. /etc/hosts 是否正确

cat /etc/hosts

应有类似:

192.168.1.10 master
192.168.1.11 slave1

2. hostname 是否一致

hostname

必须和配置文件中写的 hostname 一致。


四、防火墙 / 端口问题(超常见)

查看端口是否监听

netstat -tunlp | grep 9000

关闭防火墙(测试用)

systemctl stop firewalld
# 或
iptables -F

生产环境请只开放需要的端口(9000、50070、8088 等)


五、SSH 是否配置好(Hadoop 启动依赖)

ssh localhost

如果不行:

ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

六、从客户端怎么“连不上”

1. 用 hdfs 命令测试

hdfs dfs -ls /

报错示例:

  • Connection refused → 端口/服务问题
  • UnknownHost → hosts/配置问题
  • Permission denied → 用户/权限问题

2. Web 页面能否打开

  • NameNode: http://ip:50070
  • YARN: http://ip:8088

七、看日志(最重要)

cd $HADOOP_HOME/logs
tail -100 hadoop-*-namenode-*.log

常见错误:

  • java.net.BindException
  • Cannot assign requested address
  • NameNode is not formatted

八、最常见 5 个原因总结

  1. core-site.xml 写成 localhost,但远程连接
  2. 防火墙没关
  3. /etc/hosts 配错
  4. Hadoop 根本没启动
  5. SSH 没配置免密

如果你愿意,可以把下面信息发我,我可以直接帮你定位:

  • 报错信息(完整)
  • Hadoop 版本
  • 单机还是集群
  • hdfs 连不上,还是 Web 连不上,还是 Java 程序连不上

我可以直接帮你改配置。

0