在 Ubuntu 上落地 HBase 监控,建议以“内置工具快速巡检 + Linux 系统监控打底 + 第三方平台集中可视化与告警”为主线,覆盖进程、JVM、HDFS、表/Region 与健康面板等关键维度,形成闭环运维。
一、监控体系与工具选型
二、快速上手步骤
三、关键监控指标与告警阈值
| 维度 | 关键指标 | 建议阈值/动作 |
|---|---|---|
| 进程/服务 | HMaster/HRegionServer 进程存活、60010/8088 端口连通 | 进程缺失或端口不通即 严重告警,联动自动拉起/工单 |
| 系统资源 | CPU 使用率、内存使用率、磁盘 %util、HDFS 使用率 | CPU>80% 持续 5 分钟、内存>90%、磁盘 %util≈100%、HDFS 空间紧张时扩容或清理 |
| 读写性能 | 读/写延迟、请求数 | 读延迟>1s 或写延迟>2s 告警,结合业务 SLA 调整 |
| 缓存与压缩 | BlockCache 命中率、Compaction 队列 | 命中率 <80% 告警;Compaction 队列持续增长需关注 I/O 与存储 |
| JVM | GC 次数/时间、堆使用 | Full GC 频繁或堆使用长期高位,调大堆/优化对象生命周期 |
| Zookeeper | 连接数、会话状态 | 连接数超过节点数的 2 倍 告警,排查会话泄漏或连接风暴 |
| HDFS | 存储使用、NameNode/DataNode 健康 | 使用率接近配额、DataNode 异常或心跳超时及时处理 |
| 以上阈值可按业务规模与延迟目标微调,建议先在测试环境验证再推广。 |
四、日志管理与自动化维护
/usr/local/hbase/logs/*.log {
daily
rotate 7
compress
missingok
notifempty
sharedscripts
postrotate
/usr/local/hbase/bin/stop-logging.sh
/usr/local/hbase/bin/start-logging.sh
endscript
}
#!/usr/bin/env bash
if ! pgrep -x "HRegionServer" > /dev/null; then
echo "HRegionServer DOWN at $(date)" | mail -s "HBase Alert" admin@example.com
fi
加入 crontab:*/5 * * * * /path/check_hbase_process.sh$HBASE_HOME/bin/hbase shell <<EOF compact 'test_table' EOF,并将输出记录到 /var/log/hbase_maintenance.log。五、常见问题与排查路径