监控Debian Hadoop集群状态可通过以下方式实现:
一、原生工具监控
- Web UI界面
- NameNode:访问
http://namenode-ip:9870(Hadoop 3.x)或http://namenode-ip:50070(Hadoop 2.x),查看HDFS状态、存储使用率、节点健康等。 - ResourceManager:访问
http://resourcemanager-ip:8088,监控YARN资源分配、作业状态及集群资源使用情况。
- NameNode:访问
- 命令行工具
hdfs dfsadmin -report:查看HDFS集群节点状态、容量使用等。yarn node -list:获取YARN节点列表及状态(如运行容器数、内存使用)。jps:查看Hadoop各组件进程是否正常运行。
二、第三方监控工具
- Apache Ambari
提供集群集中管理、实时监控、告警功能,支持HDFS、YARN等组件可视化,需先安装Ambari Server及Agent。 - Prometheus + Grafana
- Prometheus通过JMX接口采集Hadoop指标(如CPU、内存、磁盘I/O),Grafana用于数据可视化,可自定义仪表盘展示关键指标。
- Ganglia
分布式监控系统,适合大规模集群,可监控节点资源使用情况,需与Grafana结合实现可视化。
三、告警与自动化
- 设置阈值告警:在Prometheus/Grafana中配置规则(如磁盘使用率>85%时告警),通过邮件、短信等方式通知。
- 日志监控:通过
yarn logs -applicationId <应用ID>获取作业日志,结合ELK Stack(Elasticsearch+Logstash+Kibana)实现日志分析与可视化。
四、注意事项
- 确保Hadoop组件配置文件(如
core-site.xml、hdfs-site.xml)中启用了JMX或Web UI访问权限。 - 定期清理监控数据,避免存储冗余信息影响性能。
根据集群规模和需求选择合适工具,小型集群可优先使用原生工具,大规模集群建议部署Ambari或Prometheus+Grafana组合。