温馨提示×

Ubuntu Hadoop 日志查看方法

小樊
48
2025-11-23 04:22:46
栏目: 智能运维

Ubuntu Hadoop 日志查看方法

一 日志位置与目录结构

  • 服务日志默认位于 Hadoop 安装目录的 $HADOOP_HOME/logs,常见文件命名模式:
    • HDFS:hadoop-<用户名>-namenode-<主机名>.loghadoop-<用户名>-datanode-<主机名>.log
    • YARN:yarn-<用户名>-resourcemanager-<主机名>.logyarn-<用户名>-nodemanager-<主机名>.log
  • 作业日志(MapReduce on YARN)位于 $HADOOP_HOME/logs/userlogs/,按应用与容器分层,每个容器目录包含 stdout、stderr、syslog 三个文件,用于定位任务运行输出与异常。
  • 日志目录可通过环境变量 HADOOP_LOG_DIR 自定义(例如在 hadoop-env.sh 中设置)。

二 命令行快速查看

  • 实时查看:tail -f
    • 示例:tail -f $HADOOP_HOME/logs/hadoop--namenode-.log
  • 检索关键字:grep
    • 示例:grep -n “ERROR” $HADOOP_HOME/logs/*.log
  • 分页查看大文件:less
    • 示例:less $HADOOP_HOME/logs/yarn--resourcemanager-.log(在 less 中可用 / 搜索,q 退出)
  • 查看文件开头:head
    • 示例:head -n 200 $HADOOP_HOME/logs/hadoop--datanode-.log
  • 以上命令可组合使用,如先定位 ERROR 再分页细看对应行上下文。

三 按组件定位常见故障

  • 先确认进程是否存活:jps
    • 正常应见到 NameNode、DataNode、ResourceManager、NodeManager 等进程,缺失则优先查对应服务日志。
  • NameNode 无法启动
    • 查看:hadoop--namenode-.log;常见为元数据或配置问题,必要时按规范重新格式化:hdfs namenode -format(仅在确认安全的前提下执行)。
  • DataNode 无法启动
    • 查看:hadoop--datanode-.log;核对 hdfs-site.xmldfs.datanode.data.dir 等配置与目录权限。
  • ResourceManager / NodeManager 异常
    • 查看:yarn--resourcemanager-.logyarn--nodemanager-.log;核对 yarn-site.xml 与节点资源、网络连通性。
  • 节点间网络问题
    • 使用 ping 测试连通性,排查防火墙/安全组策略。

四 Web 界面查看

  • HDFS NameNode Web UI:默认 50070(查看集群概况、节点健康、日志入口等)
  • YARN ResourceManager Web UI:默认 8088(查看应用列表、容器日志聚合入口、节点状态)
  • 在 UI 中可直接跳转到对应节点的日志页面,便于跨节点问题定位。

五 YARN 作业日志与日志聚合

  • 查看应用日志(聚合或本地)
    • 聚合日志(推荐):yarn logs -applicationId <app_id>
    • 如未启用聚合,到各节点的 $HADOOP_HOME/logs/userlogs/<app_id>/ 下按容器查看 stdout/stderr/syslog
  • 作业历史与审计
    • 历史服务器(JobHistory)日志默认在 $HADOOP_HOME/logs/history/,用于查看作业级启动/结束时间、计数器等信息。

0