You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS免费层4节点Ubuntu环境执行start-dfs.sh后Hadoop Datanode无法启动

Hadoop 3.2.2 4节点集群Datanode未启动排查方案

1. 排查前置操作

你当前提供的是SecondaryNameNode的运行日志,未包含Datanode启动失败的相关报错信息。请先登录所有未正常启动的Datanode节点,进入${HADOOP_HOME}/logs目录,查看文件名前缀为hadoop-<运行用户名>-datanode-<主机名>.log的日志内容,可直接定位具体报错原因。

2. 高频故障及修复方案

  • 集群ID不匹配
    仅清理NameNode节点tmp目录并格式化、未同步清理所有Datanode节点tmp目录会导致该问题:Datanode本地存储的旧集群ID与新格式化的NameNode集群ID不一致,无法完成注册。
    修复步骤:
    1. 停止所有集群服务:stop-dfs.sh && stop-yarn.sh
    2. 登录集群所有节点(NameNode、SecondaryNameNode、全部Datanode),删除core-site.xml中hadoop.tmp.dir配置对应目录下的所有内容
    3. 重新格式化NameNode:hdfs namenode -format
    4. 重新启动集群:start-dfs.sh && start-yarn.sh
  • 网络与访问规则配置错误
    AWS EC2默认安全组未开放HDFS通信端口、节点本地防火墙未放行相关端口、节点间hosts映射配置错误都会导致Datanode无法与NameNode通信。
    修复步骤:
    1. 确认所有节点的/etc/hosts文件均配置了集群所有节点的内网IP与主机名映射,无错漏、无重复
    2. 确认所有节点本地UFW防火墙已关闭,或已放行9000、9820、9866、9867等HDFS通信端口
    3. 确认AWS EC2实例安全组的入站规则已开放上述端口,允许集群内网网段的访问请求
  • 集群配置文件错误
    核心配置项不匹配会导致Datanode无法正常启动:
    1. 确认Hadoop 3.x使用的workers配置文件(已废弃原slaves文件)已填写所有Datanode的主机名,且与/etc/hosts中的配置完全一致
    2. 确认hdfs-site.xml中dfs.namenode.name.dir、dfs.datanode.data.dir配置的目录对Hadoop运行用户有读写权限
    3. 确认core-site.xml中fs.defaultFS配置的NameNode地址可被所有Datanode正常访问
  • 权限配置错误
    节点间SSH免密登录配置失效、存储目录权限不足会导致NameNode无法远程拉起Datanode进程:
    1. 确认NameNode节点可通过SSH免密登录所有Datanode节点,无需手动输入密码
    2. 递归修改Hadoop安装目录与数据存储目录的所有者为Hadoop运行用户:sudo chown -R <hadoop用户名>:<hadoop用户组> <目录路径>

内容的提问来源于stack exchange,提问作者kuollam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 15:06:04