项目介绍
Apache HertzBeat™ 是 AI 驱动的下一代开源实时观测系统。指标日志统一收集,告警一站分发,智能管控分析。无需 Agent,高性能集群,提供强大的自定义监控和状态页构建能力。
项目详情
Readme:
English | 中文 | 日本語
官网: hertzbeat.apache.org
邮件: 发送至 dev-subscribe@hertzbeat.apache.org 订阅邮件列表
🎡 介绍
Apache HertzBeat™ 是 AI 驱动的下一代开源实时观测系统。指标日志统一收集,告警一站分发,智能管控分析。无需 Agent,高性能集群,提供强大的自定义监控和状态页构建能力。
特点
- 集
采集+分析+告警+通知为一体,HertzBeat AI 驱动下的新交互与功能,也内置 MCP Server 对外能力。 - 统一的指标平台,无需 Agent,兼容 Prometheus,支持应用服务,程序,数据库,缓存,操作系统,大数据,中间件,Web 服务器,云原生,网络,自定义等。
- 统一的日志平台,通过 OTLP 协议多日志源无缝对接上报。
- 统一的告警平台,内部告警与外部多种告警源集成接入,统一告警处理分析,灵活的实时与周期阈值规则,分组收敛,静默,抑制等。
- 统一的消息分发,告警平台处理后通过
邮件DiscordSlackTelegram钉钉微信飞书短信WebhookServer酱等方式分发通知。 - 将
Http, Jmx, Ssh, Snmp, Jdbc, Prometheus等协议规范可配置化,只需配置模板YML就能自定义采集指标。您相信只需简单配置即可快速适配一款K8s或Docker等新的监控类型吗? - 高性能,支持多采集器集群横向扩展,支持多隔离网络监控,云边协同。
- 提供强大的状态页构建能力,轻松向用户传达您产品服务的实时状态。
HertzBeat的统一平台,AI智能,强大自定义,多类型支持,高性能,易扩展,希望能帮助用户快速方便实现观测需求。🥐 模块

⛄ 已支持
我们将监控采集类型(mysql,jvm,k8s)都定义为yml模板,用户可以导入这些模板来支持对应类型的监控!
欢迎大家一起贡献你使用过程中自定义的通用指标模板。
- Website, Port Telnet,
Http Api, Ping Connect,
Jvm, SiteMap,
Ssl Certificate, SpringBoot2,
FTP Server, SpringBoot3,
Udp Port, Dns,
Pop3, Ntp,
Api Code, Smtp,
Nginx - Mysql, PostgreSQL,
MariaDB, Redis,
ElasticSearch, SqlServer,
Oracle, MongoDB,
DM, OpenGauss,
ClickHouse, IoTDB,
Redis Cluster, Redis Sentinel
Doris BE, Doris FE,
Memcached, NebulaGraph - Linux, Ubuntu,
CentOS, Windows,
EulerOS, Fedora CoreOS,
OpenSUSE, Rocky Linux,
Red Hat, FreeBSD,
AlmaLinux, Debian Linux - Tomcat, Nacos,
Zookeeper, RabbitMQ,
Flink, Kafka,
ShenYu, DynamicTp,
Jetty, ActiveMQ,
Spring Gateway, EMQX MQTT,
AirFlow, Hive,
Spark, Hadoop - Kubernetes, Docker
- CiscoSwitch, HpeSwitch,
HuaweiSwitch, TpLinkSwitch,
H3cSwitch - 和更多自定义指标模板。
- 通知支持
DiscordSlackTelegram邮件钉钉微信飞书短信WebhookServer酱。
🐕 快速开始
- 如果您是想将 HertzBeat 部署到内网环境搭建监控系统,请参考下面的部署文档进行操作。
🍞 HertzBeat 安装
HertzBeat 支持通过源码安装启动,Docker 容器运行和安装包方式安装部署,CPU 架构支持 x86/arm64。
方式一:Docker 方式快速安装
docker环境仅需一条命令即可开始
docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat apache/hertzbeat- 浏览器访问
http://localhost:1157即可开始,默认账号密码admin/hertzbeat - 部署采集器集群(可选)
docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector apache/hertzbeat-collector-e IDENTITY=custom-collector-name: 配置此采集器的唯一性标识符名称,多个采集器名称不能相同,建议自定义英文名称。- `-e MODE=public` : 配置运行模式(public or private), 公共集群模式或私有云边模式。 - `-e MANAGER_HOST=127.0.0.1` : 配置连接主 HertzBeat 服务的对外 IP。 - `-e MANAGER_PORT=1158` : 配置连接主 HertzBeat 服务的对外端口,默认1158。
更多配置详细步骤参考 通过 Docker 方式安装 HertzBeat
方式二:通过安装包安装
- 下载您系统环境对应的安装包
hertzbeat-xx.tar.gzDownload - 配置 HertzBeat 的配置文件
hertzbeat/config/application.yml(可选) - 部署启动
$ ./bin/startup.sh或bin/startup.bat - 浏览器访问
http://localhost:1157即可开始,默认账号密码admin/hertzbeat 部署采集器集群(可选)
- 下载采集器安装包
hertzbeat-collector-xx.tar.gz到规划的另一台部署主机上 Download 配置采集器的配置文件
hertzbeat-collector/config/application.yml里面的连接主 HertzBeat 服务的对外 IP,端口,当前采集器名称(需保证唯一性)等参数identitymode(public or private)manager-hostmanager-portcollector: dispatch: entrance: netty: enabled: true identity: ${IDENTITY:} mode: ${MODE:public} manager-host: ${MANAGER_HOST:127.0.0.1} manager-port: ${MANAGER_PORT:1158}- 启动
$ ./bin/startup.sh或bin/startup.bat - 浏览器访问主 HertzBeat 服务
http://localhost:1157查看概览页面即可看到注册上来的新采集器
- 下载采集器安装包
更多配置详细步骤参考 通过安装包安装HertzBeat
方式三:本地代码启动
- 此为前后端分离项目,本地代码调试需要分别启动后端工程
hertzbeat-startup和前端工程web-app - 后端:需要
maven3+,java17和lombok环境,修改YML配置信息,添加JVM参数--add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED后启动hertzbeat-startup服务即可。 - 前端:需要
nodejs npm angular-cli环境,待本地后端启动后,在web-app目录下启动ng serve --open - 浏览器访问
http://localhost:4200即可开始,默认账号密码admin/hertzbeat
详细步骤参考 参与贡献之本地代码启动
方式四:Docker-Compose 统一安装 hertzbeat+postgresql+tsdb
通过 Docker-Compose 部署脚本 一次性把 postgresql/mysql 数据库, victoria-metrics/iotdb/tdengine 时序数据库和 hertzbeat 安装部署。
详细步骤参考 通过 Docker-Compose 安装 HertzBeat
方式五:Kubernetes Helm Charts 部署 hertzbeat+collector+postgresql+tsdb
通过 Helm Chart 一次性将 HertzBeat 集群组件部署到 Kubernetes 集群中。
详细步骤参考 Artifact Hub
HAVE FUN
✨ Contributors
Thanks these wonderful people, welcome to join us:
贡献者指南
tomsun28💻 📖 🎨
会编程的王学长💻 📖 🎨









