温馨提示×

Debian上Hadoop故障排查步骤有哪些

小樊
39
2025-12-11 07:29:18
栏目: 智能运维

Debian上Hadoop故障排查步骤

一 快速定位流程

  • 查看进程:运行jps,核对是否存在NameNode、DataNode、ResourceManager、NodeManager等关键进程,缺失即定位到对应组件异常。
  • 查看日志:到**$HADOOP_HOME/logs目录,用tail -f *.loggrep “ERROR” *.log聚焦最近报错,优先看以.log**结尾的文件(启动脚本提示的.out只是重定向,详细错误在.log)。
  • 检查配置:核对core-site.xml、hdfs-site.xml、mapred-site.xml/yarn-site.xmlhadoop-env.sh中的关键项(如JAVA_HOME、fs.defaultFS、dfs.datanode.data.dir、yarn.resourcemanager.hostname等)。
  • 验证网络:节点间执行ping <IP/主机名>;必要时用ssh <节点>测试免密登录;排查/etc/hosts与DNS解析是否一致;检查iptables/ufw是否放行相关端口。
  • 资源与系统:用top、iostat -x 1、vmstat 1观察CPU、内存、磁盘IO;查看**/var/log/syslog、dmesg、journalctl -xe**获取系统级错误。
  • Web UI:访问http://<NameNode_IP>:50070(HDFS NameNode)与http://<RM_IP>:8088(YARN ResourceManager)查看集群健康与任务状态。

二 常见故障与修复要点

  • 环境类
    • jps: command not found”:未正确设置JAVA_HOME或未把**$JAVA_HOME/bin加入PATH**;在**~/.bashrc/etc/profile**中导出变量并source使其生效。
    • Hadoop脚本找不到或Java不匹配:在hadoop-env.sh中显式设置JAVA_HOME,确保与Hadoop版本兼容。
  • 配置类
    • Could not resolve hostname”:检查**/etc/hosts主机名与IP映射、环境变量(如HADOOP_HOME**)及本机主机名配置。
    • 首次部署或元数据异常:按需执行hdfs namenode -format(仅在首次或明确数据可丢弃时执行,避免数据丢失)。
  • 网络与SSH类
    • 节点间不通或SSH失败:核对ping、ssh连通性,排查防火墙/安全组策略,统一**/etc/hosts解析,确保SSH免密**配置正确。
  • 进程与数据目录类
    • DataNode反复退出或无法注册:检查dfs.datanode.data.dir目录权限/磁盘空间;必要时清理DataNode数据目录后重启(会丢数据,谨慎)。
  • 日志与告警类
    • 大量“WARN util.NativeCodeLoader: Unable to load native-hadoop library …”:为兼容性提示,通常可忽略,不影响功能。

三 关键端口与连通性检查

  • 常用端口与用途
    • 50070:HDFS NameNode Web UI
    • 50075:DataNode Web UI
    • 50090:SecondaryNameNode Web UI
    • 8088:YARN ResourceManager Web UI
    • 9000:HDFS RPC(fs.defaultFS常用端口)
    • 50010/50020:DataNode数据传输端口
    • 19888:MapReduce JobHistory Server
  • 快速自检命令
    • 端口连通性:nc -vz <IP> <端口>telnet <IP> <端口>
    • 本机监听:netstat -tulpen | grep <端口>
    • 防火墙放行(示例):sudo ufw allow 50070,8088,9000,50010,50020,50075,50090,19888/tcp
    • 主机名解析:nslookup <主机名>getent hosts <主机名>
    • 节点间SSH:ssh <用户名>@<节点IP>(应免密直达)

四 服务重启与变更控制

  • 重启顺序建议:先停YARN再停HDFS,启动则相反。
    • 停止:./sbin/stop-yarn.sh./sbin/stop-dfs.sh
    • 启动:./sbin/start-dfs.sh./sbin/start-yarn.sh
  • 如仍异常,可全停后全启:./stop-all.sh./start-all.sh(脚本存在与否取决于发行与版本)。
  • 变更前务必备份重要数据与配置,变更后在Web UI日志中复核状态。

五 性能与稳定性排查

  • 资源瓶颈:用top、iostat -x 1、vmstat 1识别CPU、内存、IO瓶颈;必要时扩容或调整YARN容器资源。
  • 系统健康:查看**/var/log/syslog、dmesg、journalctl -xe**排查内核/驱动/磁盘错误。
  • 版本与依赖:保持DebianJDK/Hadoop版本兼容,必要时升级或回滚已知问题版本。
  • 监控与告警:结合Ambari、Ganglia、NagiosCloudera Manager建立持续监控与阈值告警。

0