首页主机资讯Hadoop在Linux上的监控怎样实现

Hadoop在Linux上的监控怎样实现

时间2025-11-25 17:24:03发布访客分类主机资讯浏览672
导读:Linux上Hadoop监控的落地方案 一 监控路径总览 原生与命令行:使用 jps 检查进程存活,借助 hdfs dfsadmin -report、hdfs fsck /、yarn node -list -all、yarn applic...

Linux上Hadoop监控的落地方案

一 监控路径总览

  • 原生与命令行:使用 jps 检查进程存活,借助 hdfs dfsadmin -reporthdfs fsck /yarn node -list -allyarn application -listmapred job -list 等获取容量、健康、节点与应用状态。
  • Web 界面:直接访问组件 UI,包含 NameNode 50070/9870(Hadoop 2.x/3.x)、ResourceManager 8088DataNode 50075
  • 指标与日志:开启 JMX 远程监控;通过 Hadoop Metrics2 对接外部时序库;实时 tail -f $HADOOP_HOME/logs/ 检索异常。
  • 第三方平台:集中式监控与告警可用 Prometheus + GrafanaApache Ambari,也可用 Ganglia/Zabbix/Nagios 等。

二 快速检查与内置工具

  • 进程存活:在各节点执行 jps,确认存在 NameNode/DataNode/ResourceManager/NodeManager 等关键进程。
  • HDFS 状态:
    • 运行 hdfs dfsadmin -report 查看 DataNode 数量、容量、剩余空间 等;
    • 运行 hdfs fsck / 检查文件系统健康与块状态。
  • YARN 状态:
    • 运行 yarn node -list -all 查看节点列表与资源;
    • 运行 yarn application -list 查看应用运行状态。
  • Web UI:浏览器访问 NameNode 50070/9870ResourceManager 8088DataNode 50075 获取更直观的集群与应用视图。

三 指标采集与可视化

  • Metrics2 对接外部时序库:编辑 $HADOOP_HOME/etc/hadoop/hadoop-metrics2.properties,将指标输出到 Graphite/InfluxDB 等;也可按需扩展为 Prometheus Sink(需 Hadoop 版本与依赖支持),统一由 Prometheus 抓取并在 Grafana 面板展示。
  • JMX 远程监控:在 Hadoop 配置中开启 JMX,指定 端口 与鉴权;使用 JMX ExporterPrometheus JMX Agent 将指标暴露为 HTTP /metrics,供 Prometheus 拉取。
  • 日志与告警:实时 tail -f $HADOOP_HOME/logs/ 观察异常;结合 Prometheus AlertmanagerZabbix/Nagios 配置阈值告警。

四 第三方平台与可视化

  • Prometheus + Grafana:以 Prometheus 作为时序库与告警引擎,Grafana 负责可视化与看板,适合构建 HDFS/YARN/节点资源 的统一监控大盘。
  • Apache Ambari:提供 集群部署、监控与管理 的 Web 控制台,适合需要“开箱即用”的一体化运维场景。
  • 其他方案:传统监控如 Ganglia/Zabbix/Nagios 仍可用于节点与服务可用性、资源与网络监控。

五 关键指标与告警示例

  • 建议重点关注的指标与阈值示例:
维度 关键指标 建议阈值示例 说明
HDFS Capacity/Used/Remaining、MissingBlocks、UnderReplicatedBlocks MissingBlocks=0、UnderReplicatedBlocks=0、剩余空间低于阈值 容量与副本健康度
YARN Apps Pending/Running、NodeManagers Available、Memory/Vcores Used% Pending 持续> 0、可用 NodeManager 过少、资源使用率过高 队列与资源瓶颈
节点 CPU、内存、磁盘 IO、网络 CPU> 80% 持续 5 分钟、磁盘使用率> 85% 节点层资源压力
JVM Heap Memory Used%、GC 次数/时间 Old Gen 使用率高、Full GC 频繁 服务稳定性与延迟
  • 告警规则示例(PromQL,可按需调整):
    • HDFS 健康:
      • sum by (cluster)(hdfs_fsck_missing_blocks) > 0
      • sum by (cluster)(hdfs_fsck_under_replicated_blocks) > 0
    • YARN 排队:
      • yarn_queue_pending_apps{ queue=“root”} > 0 for 5m
    • 节点资源:
      • 1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) > 0.85
      • 1 - (node_filesystem_avail_bytes{ mountpoint=“/”} / node_filesystem_size_bytes{ mountpoint=“/”} ) > 0.85
    • JVM GC:
      • increase(jvm_gc_collection_seconds_sum[5m]) / increase(jvm_gc_collection_seconds_count[5m]) > 1.0(示例阈值,需结合实际 GC 目标调整)

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Hadoop在Linux上的监控怎样实现
本文地址: https://pptw.com/jishu/755738.html
Linux Hadoop如何支持实时分析 如何确保Linux MinIO安装的安全性

游客 回复需填写必要信息