HertzBeat 核心特点
-
全栈监控能力
支持网站、数据库、操作系统、中间件、云原生应用、网络设备等资源的实时监控,覆盖指标采集、阈值告警、通知一体化流程。
- 兼容 Prometheus 查询语法,支持自定义监控模板(如 Docker、K8s)。
- 无需 Agent,通过 HTTP、JMX、SSH、SNMP、JDBC 等协议直接采集数据。
-
灵活告警与通知
- 支持自由化阈值规则(如计算表达式),可设置动态阈值。
- 通知方式多样:邮件、钉钉、微信、飞书、Telegram、Webhook 等。
-
高性能与扩展性
- 采集器集群支持横向扩展,适应高并发场景。
- 模块化设计(Manager、Collector、Warehouse 等),便于定制开发。
-
低门槛易用性
- 全 Web 页面操作,零代码配置监控任务。
- 提供 SaaS 版本(TanCloud 探云),免部署快速使用。
安装部署指南
1. Docker 部署(推荐)
bash
# 基础命令(默认使用 H2 数据库)
docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat
# 高级配置(挂载配置文件、时序数据库)
docker run -d \
-p 1157:1157 -p 1158:1158 \
-e LANG=zh_CN.UTF-8 -e TZ=Asia/Shanghai \
-v $(pwd)/config/application.yml:/opt/hertzbeat/config/application.yml \
-v $(pwd)/data:/opt/hertzbeat/data \
--name hertzbeat tancloud/hertzbeat
-
配置文件说明:
-
application.yml
:时序数据库(如 VictoriaMetrics、TDengine)连接配置。
-
sureness.yml
:修改默认账号密码(默认 admin/hertzbeat)。
-
bash
内外虚拟机部署:
docker run -d --net=host -v $(pwd)/data:/opt/hertzbeat/data -v $(pwd)/logs:/opt/hertzbeat/logs -v $(pwd)/application.yml:/data/application.yml -v $(pwd)/sureness.yml:/data/sureness.yml -v $(pwd)/ext-lib:/opt/hertzbeat/ext-lib --restart=always --name hertzbeat apache/hertzbeat
http://192.168.6.128:1157/dashboard
docker run -d -p 8086:8086 -v /opt/influxdb:/var/lib/influxdb influxdb:1.8
docker run -p 6379:6379 --name redis --restart=always -v /opt/redis/redis.conf:/etc/redis/redis.conf -v /opt/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass root123
2. 安装包部署
-
下载对应系统的安装包(如 Linux、Windows),解压后运行启动脚本。
-
需手动配置
application.yml
和
sureness.yml
,路径通常为
hertzbeat/config/
。
3. Docker Compose(集成时序数据库)
bash
version: '3'
services:
hertzbeat:
image: tancloud/hertzbeat
ports:
- "1157:1157"
volumes:
- ./config:/opt/hertzbeat/config
- ./data:/opt/hertzbeat/data
victoriametrics:
image: victoriametrics/victoriametrics
ports:
- "8428:8428"
使用方法与核心功能
1. 基础操作
-
登录:访问
http://<服务器IP>:1157
,默认账号密码
admin/hertzbeat
。
-
新增监控:
- 菜单栏选择 监控中心 → 新增监控,选择类型(如网站、数据库、Docker 容器)。
- 配置采集频率、指标(如 CPU 使用率、响应时间)及阈值告警规则。
2. 告警与通知
- 设置接收人 :在 告警通知 → 新增接收人 中配置钉钉机器人、邮箱等。
- 关联策略:将接收人与告警策略绑定,触发条件可自定义(如连续 3 次超阈值)。
3. 高级功能
- 状态页构建 :通过 状态页 模块生成服务状态页面,支持多语言和自定义模板。
- API 监控:集成 Apache ShenYu 等网关的 Metrics 插件,实时监控请求量、响应时间等指标。
常见问题与优化
-
容器命名冲突:删除旧容器
docker rm -f hertzbeat
后重新启动。
-
时序数据库选择:生产环境建议使用 VictoriaMetrics 或 TDengine 替代 H2,避免数据丢失。
-
性能调优:增加采集器节点(Docker 部署多实例)提升并发能力。
更多细节可参考官方文档 或社区案例 。