一篇文章带你了解一款强大的全栈监控工具---HertzBeat

HertzBeat 核心特点

  1. 全栈监控能力

    支持网站、数据库、操作系统、中间件、云原生应用、网络设备等资源的实时监控,覆盖指标采集、阈值告警、通知一体化流程。

    • 兼容 Prometheus 查询语法,支持自定义监控模板(如 Docker、K8s)。
    • 无需 Agent,通过 HTTP、JMX、SSH、SNMP、JDBC 等协议直接采集数据。
  2. 灵活告警与通知

    • 支持自由化阈值规则(如计算表达式),可设置动态阈值。
    • 通知方式多样:邮件、钉钉、微信、飞书、Telegram、Webhook 等。
  3. 高性能与扩展性

    • 采集器集群支持横向扩展,适应高并发场景。
    • 模块化设计(Manager、Collector、Warehouse 等),便于定制开发。
  4. 低门槛易用性

    • 全 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 部署多实例)提升并发能力。

更多细节可参考官方文档 或社区案例 。

相关推荐
ak啊3 天前
基于 Prometheus 的后端服务性能故障监控方案
监控
刘大猫263 天前
Arthas monitor(方法执行监控)
人工智能·后端·监控
可观测性用观测云4 天前
Neo4j 可观测性最佳实践
监控
ak啊5 天前
基于Python的自动化运维中服务器性能监控与告警
python·监控
ak啊9 天前
Sentry 私有化部署监控前端应用
监控
vivo互联网技术16 天前
vivo Trace 监控追求极致的建设历程
监控
企鹅侠客16 天前
Prometheus告警从触发到收到通知延迟在哪?
运维·prometheus·监控
cxy_616 天前
centos7系统搭建nagios监控
监控·nagios
佳腾_25 天前
【Zabbix技术系列文章】第④篇——Zabbix 数据可视化
运维·信息可视化·zabbix·监控