CentOS Hadoop 运行怎样监控
小樊
34
2025-11-22 05:07:17
监控目标与总体架构
- 面向 CentOS 上的 Hadoop,建议同时覆盖 HDFS、YARN 与操作系统层面的关键指标:容量与块健康、节点存活与负载、资源调度与队列、JVM 与 GC、磁盘/网络 IO 等。
- 推荐分层建设:先用 Hadoop 自带 Web/CLI 做快速体检,再用 JMX 获取细粒度指标,最后用 Prometheus + Grafana 或 Zabbix/Ganglia 做时序与告警,形成统一可视化与告警闭环。
快速检查与内置 Web 界面
- 命令行体检
- HDFS 总体与容量:hdfs dfsadmin -report
- 安全模式:hdfs dfsadmin -safemode get
- 文件系统健康:hdfs fsck /
- YARN 节点状态:yarn node -list
- 进程存活:jps
- Web 界面直达
- NameNode:http://:50070(Hadoop 2.x)或 http://:9870(Hadoop 3.x)
- ResourceManager:http://:8088
- DataNode:http://:50075
- 日志与定位
- 组件日志默认在 /var/log/hadoop/,异常与慢操作优先查日志。
指标采集与可视化方案
- JMX 直连
- Hadoop 组件开启 JMX,用 jconsole/VisualVM 连接对应 JMX 端口查看 JVM/GC/队列等细粒度指标,适合临时排障与深度诊断。
- Prometheus + Grafana(推荐)
- 部署 Prometheus/Grafana,在 Grafana 中添加 Prometheus 数据源并导入 HDFS/YARN 仪表盘,实现指标长期存储、灵活告警与统一可视化。
- Zabbix / Ganglia
- Zabbix:在节点部署 Zabbix Agent,配置监控项/触发器,对 HDFS/YARN 关键指标与进程存活做阈值告警。
- Ganglia:安装 gmond/gmetad,并在 Hadoop 配置 hadoop-metrics2.properties 输出到 Ganglia,适合大规模集群的可扩展监控。
关键告警与巡检清单
- 容量与块健康
- 容量阈值:当 剩余空间/总容量 < 20% 触发告警
- 安全模式:处于安全模式 告警
- 块健康:hdfs fsck / 报告损坏块或缺失副本时告警
- 节点与资源
- DataNode/NodeManager 失联 或 不健康 告警
- YARN 队列使用率 超过阈值告警
- 进程与日志
- NameNode/ResourceManager/DataNode 进程异常退出告警
- GC 时间过长、异常 ERROR 日志关键字告警
- 建议巡检频率
- 实时/近实时:Prometheus + Grafana 告警(如 15s–60s 抓取间隔)
- 每日:hdfs dfsadmin -report、hdfs fsck /、核心日志巡检
- 每周:balancer 数据均衡与容量趋势复盘(必要时执行均衡)。