Apache HertzBeat 1.9.0 介绍与选型指南

基于 Apache HertzBeat 1.9.0 官方发布与部署文档溯源:无 Agent 一体化可观测平台的模板化采集架构、告警体系、快速上手与 1.9.0 破坏性变更,并对照 Zabbix/Prometheus+Grafana/Uptime Kuma 给出选型建议(查询日期 2026-10-18)。

Apache HertzBeatApache HertzBeat监控2026/10/18

Apache HertzBeat 1.9.0 介绍与选型指南

目标:一篇读懂 Apache HertzBeat——无 Agent 一体化实时可观测平台的定位、模板化采集架构、功能与上手路径(含 1.9.0 破坏性变更提示),并对照 Zabbix、Prometheus+Grafana 组合、Uptime Kuma 给出选型建议;本文为认知篇,内容基于官方发布/官方部署文档/官方仓库联网溯源,不做本地安装实测(查询日期 2026-10-18)。

一、信息基准

本节说明本文所有关键论断的取证口径:查询日期、版本依据与官方来源清单。

  • 查询日期:2026-10-18(Asia/Shanghai)。
  • 版本依据:GitHub Releases API releases/latest 返回 v1.9.0(tag v1.9.0,发布于 2026-09-13,实查);发布说明明确该版本含破坏性变更,1.9.0 不是 1.8.x jar 或打包产物的原地替换,运行时与配置形态需按官方迁移说明调整。故本文以 1.9.0 为最新稳定版并如实标注破坏性变更。
  • 项目身份:ASF 官方博客与孵化器状态页确认——Apache HertzBeat™ 于 2025-08-21 获董事会批准毕业为 Apache 顶级项目(TLP),结束 17 个月孵化期(来源:hertzbeat.apache.org 官方博客 2025-08-24、incubator.apache.org/projects/hertzbeat.html,2026-10-18 实查);官方定位口径为「AI 驱动的开源实时可观测系统」「无 Agent 监控架构」。
  • 官方来源清单:
  • 社区活跃度依据:GitHub apache/hertzbeat 约 7.3k stars(repositorystats.com 快照,2026-10);最近发版 v1.9.0(2026-09-13)。

二、软件概述

本节给出 HertzBeat 的身份定位、许可与版本现状。

Apache HertzBeat 1.9.0 是 Apache 顶级项目,官方口径:易用、开源的实时可观测系统,具备无 Agent(agentless)架构与高性能集群能力,支持对网站、API、Ping、端口、数据库、操作系统、中间件、网络设备等多类目标的一站式监控、告警与通知,配套状态页(status page)能力;ASF 博客描述其为「AI 驱动的开源实时可观测系统」。

  • 当前版本:1.9.0(2026-09-13 发布,官方 Release 实查;相对 1.8.x 有破坏性变更,升级需按官方迁移说明处理运行时与配置)。
  • 许可:Apache License 2.0。
  • 运行要求:自 1.6.0 起要求 Java 17 运行环境,安装包不再内置 JDK(官方部署文档口径);服务端默认端口 1157,采集器与主服务通信端口 1158。
  • 存储形态:默认内置 H2 数据库起步可用;生产环境官方建议元数据换 PostgreSQL、指标数据接 VictoriaMetrics(官方部署文档建议)。

💡 说明:HertzBeat 的「一体化」指采集、存储、告警、通知、状态页、Web 控制台在同一系统内开箱即用;它与「Prometheus 生态」的分工是——后者以指标采集查询为核心、外围组件自由拼装,前者以「低门槛全家桶」为核心、扩展通过监控模板与插件体系进行。

三、核心架构

本节拆解 HertzBeat 的「模板化无 Agent 采集」架构与集群形态。

3.1 监控模板化采集(无 Agent)

官方核心理念:每类监控目标的指标体系由 YML 监控模板定义(指标名、采集协议、采集路径、单位、阈值),新目标类型可通过新增模板扩展而无需改代码。采集侧按协议直连目标(HTTP、TCP、JMX、SNMP、SSH、Prometheus 端点等),目标机器无需安装 Agent;对无法直连或需多点拨测的场景引入可部署采集器。

3.2 服务端与采集器集群

官方部署文档给出的组件形态:

组件角色
HertzBeat ServerWeb 控制台、监控调度、阈值计算、告警与通知中心(端口 1157)
HertzBeat Collector轻量采集器,注册到 Server 后承担采集任务;多采集器部署实现高可用、负载均衡与云边协同
存储元数据(用户/监控对象)默认 H2,建议 PostgreSQL;指标数据建议 VictoriaMetrics

采集器注册配置(官方部署文档原文片段):

collector:
  dispatch:
    entrance:
      netty:
        enabled: true
        identity: ${IDENTITY:}      # 采集器唯一标识,多采集器时必须唯一
        mode: ${MODE:public}        # public 集群模式 / private 云边模式
        manager-host: ${MANAGER_HOST:127.0.0.1}   # 连接的 HertzBeat Server 地址
        manager-port: ${MANAGER_PORT:1158}        # 默认 1158

来源:https://hertzbeat.apache.org/docs/start/package-deploy/ (2026-10-18 引述)。

3.3 告警与通知链路

监控模板内定义阈值规则,Server 侧触发告警并进入告警中心(收敛、分级、静默),再经通知渠道分发(官方 README/文档口径支持邮件、Discord、Slack、Webhook 等多渠道);内置状态页组件对外发布服务可用性。

💡 技术拓展:监控系统的采集形态之争——

形态原理代表
无 Agent 拉取按协议(SNMP/JMX/HTTP/SSH 等)直连目标HertzBeat、Zabbix 主流用法
Agent 推送目标侧常驻代理采集上报Zabbix agent、Prometheus exporter/agent
端点暴露应用自暴露 /metrics 由系统抓取Prometheus 生态

HertzBeat 走无 Agent 为主、可配采集器的路线,接入成本最低;极端深度指标仍需目标侧配合(如 JMX 暴露、SNMP 开启)。

四、功能特性

本节按官方 README/发布说明/部署文档归纳 1.9.0 的能力面。

  • 多类型监控:网站、API、Ping、端口、SSL 证书、JVM、数据库、操作系统、中间件、网络设备等,模板化扩展新类型。
  • 无 Agent 架构:协议直连采集,目标零侵入;采集器集群支持高可用/负载均衡/云边协同。
  • 阈值告警:模板级指标阈值、告警中心(收敛/分级/静默)、多渠道通知。
  • 状态页:内置对外可用性页面组件。
  • 自监控:1.7.3 起支持 HertzBeat 自监控(官方发布说明)。
  • 可视化:内置控制台与仪表盘;指标可对接外部可视化栈。
  • 1.9.0 变更:官方发布说明明确含破坏性变更(运行时与配置形态调整,非 1.8.x 原地替换),升级前必须阅读官方迁移说明并演练。

💡 说明:模板化是双刃剑——好处是「加监控类型 = 写 YML」,门槛低;代价是每个模板的指标覆盖面受限于社区贡献,深度指标(如特定中间件的细粒度性能计数)可能需要自写模板。

五、快速上手

本节引自官方《Install HertzBeat via Package》部署文档的最小路径(安装包部署),仅转录官方步骤,本文不做本地实测。

5.1 部署服务端(官方部署文档步骤)

前置:准备 Java 17 环境(1.6.0 起安装包不再内置 JDK,官方文档口径)。官方步骤转述:

# 1) 下载并解压安装包 apache-hertzbeat-1.9.0-bin.tar.gz(官方下载页获取)
tar zxvf apache-hertzbeat-1.9.0-bin.tar.gz

# 2)(可选)按需修改 config/application.yml:
#    默认内置 H2 起步;生产建议元数据 PostgreSQL + 指标 VictoriaMetrics

# 3)(可选)修改默认账号:config/sureness.yml
#    内置账号:admin/hertzbeat、tom/hertzbeat、guest/hertzbeat

# 4) 启动(安装目录 bin/ 下脚本)
./startup.sh

访问 http://ip:1157/,以默认账号 admin/hertzbeat 登录控制台开始添加监控(官方文档口径;首次登录后应立即修改默认口令)。来源:https://hertzbeat.apache.org/docs/start/package-deploy/ (2026-10-18 引述)。

5.2 部署采集器集群(可选,官方步骤)

下载 apache-hertzbeat-collector-xxx-bin.tar.gz 解压后,修改采集器 config/application.yml(identity/mode/manager-host/manager-port,见 3.2 片段),执行 ./bin/startup.sh;随后在控制台仪表盘可见新注册采集器(官方文档口径)。

配置项官方语义
identity采集器唯一标识,多采集器时必须唯一
modepublic 集群模式 / private 云边模式
manager-host / manager-port指向 HertzBeat Server(默认端口 1158)

💡 说明:官方文档建议生产环境将元数据迁至 PostgreSQL、指标迁至 VictoriaMetrics 再上线(切换步骤见官方 start/postgresql-change 与 victoria-metrics-init 文档);1.9.0 为破坏性变更版本,从 1.8.x 升级务必先按官方迁移说明演练。

六、适用场景与限制

本节给出该版本的适用边界判断,以官方文档与发布现状为依据。

适用场景:

  • 中小团队/多机房环境的「开箱即用」一体化监控:不想拼装 exporter+时序库+告警器+状态页多件套。
  • 大量异构目标的快速纳管(网站/证书/中间件/网络设备),目标侧不便装 Agent。
  • 需要云边协同、多采集器分摊拨测的场景。

限制与注意:

  • 1.9.0 破坏性变更:与 1.8.x 产物不兼容,升级成本集中于运行时与配置迁移(官方发布说明口径)。
  • 深度指标生态弱于 Prometheus exporter 体系,冷门中间件需自写监控模板。
  • Java 17 运行时与内嵌组件的资源占用高于极轻量方案(如 Uptime Kuma),轻量拨测场景可对比后选择。
  • 品牌沿革需注意:部分历史资料仍标「(incubating)」,自 2025-08-21 起已为 TLP,引用时以官网现名 Apache HertzBeat™ 为准。

七、同类选型对比

本节从「监控/可观测」视角横向对比三款常见替代品,数据均于 2026-10-18 实查(来源:GitHub Releases/官方下载页/官方路线图/官方站点)。

维度Apache HertzBeat 1.9.0Zabbix 7.x(8.0 LTS 计划中)Prometheus 3.13.4 + Grafana 13.2.4Uptime Kuma v2.5.6
定位无 Agent 一体化实时可观测企业级监控平台(Agent/Agentless 双形态)指标采集查询 + 可视化告警组合上线拨测/状态页轻量工具
许可Apache-2.0AGPL-3.0(7.0 起官方口径)Apache-2.0 + AGPL-3.0MIT
社区活跃度约 7.3k stars;v1.9.0(2026-09-13)GitHub 只读副本约 6.5k stars;8.0.0beta2(2026-07-09),8.0 LTS 计划 2026 Q4Prometheus 约 67k stars(3.13.4,2026-09-29);Grafana 约 76.7k stars(13.2.4,2026-10-13)约 93k stars;v2.5.6(2026-10-09)
版本节奏年内多版,1.9.0 为破坏性变更版年级大版本 + LTS 体系(8.0 LTS 支持至 2029+)Prometheus 数周一版;Grafana 月级数周一版,v2 线活跃
兼容矩阵Java 17 服务端;Linux/Windows/macOS、x86/ARM64C/PHP 栈;数据库 PostgreSQL/TimescaleDB 等;全平台 agentGo 服务端 + TSDB;生态 exporter 极丰富单二进制/Node 栈,SQLite 起步
上手成本低(一体化控制台)中(Zabbix 概念体系庞大)高(需自组多组件)极低(单机安装即用)

选型建议:一句话——要「低门槛一体化、无 Agent 快速纳管、自带状态页」选 HertzBeat;已有成熟运维体系且需主机级深度监控与大规模模板生态选 Zabbix;要做大规模指标生态与自定义查询/可视化选 Prometheus+Grafana;只关心服务是否在线、要极简拨测与状态页选 Uptime Kuma。

八、参考链接