实时监控系统,无需 Agent,性能集群,兼容 Prometheus,自定义监控和状态页构建能力。
官网: hertzbeat.apache.org
邮件: 发送至 [email protected]
订阅邮件列表
Apache HertzBeat (incubating)是一个易用友好的开源实时监控告警系统,无需 Agent,高性能集群,兼容 Prometheus,提供强大的自定义监控和状态页构建能力。
- 集 监控+告警+通知 为一体,支持对应用服务,应用程序,数据库,缓存,操作系统,大数据,中间件,Web 服务器,云原生,网络,自定义等监控阈值告警通知一步到位。
- 易用友好,无需
Agent
,全WEB
页面操作,鼠标点一点就能监控告警,零上手学习成本。 - 将
Http, Jmx, Ssh, Snmp, Jdbc, Prometheus
等协议规范可配置化,只需在浏览器配置监控模版YML
就能使用这些协议去自定义采集想要的指标。您相信只需配置下就能立刻适配一款K8s
或Docker
等新的监控类型吗? - 兼容
Prometheus
的系统生态并且更多,只需页面操作就可以监控Prometheus
所能监控的。 - 高性能,支持多采集器集群横向扩展,支持多隔离网络监控,云边协同。
- 自由的告警阈值规则,
邮件
Discord
Slack
Telegram
钉钉
微信
飞书
短信
Webhook
Server酱
等方式消息及时送达。 - 提供强大的状态页构建能力,轻松向用户传达您产品服务的实时状态。
HertzBeat
的强大自定义,多类型支持,高性能,易扩展,低耦合,希望能帮助用户快速搭建自有监控系统。
我们将监控采集类型(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
- 和更多自定义监控模版。
- 通知支持
Discord
Slack
Telegram
邮件
钉钉
微信
飞书
短信
Webhook
Server酱
。
- 如果您是想将 HertzBeat 部署到内网环境搭建监控系统,请参考下面的部署文档进行操作。
HertzBeat 支持通过源码安装启动,Docker 容器运行和安装包方式安装部署,CPU 架构支持 x86/arm64。
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
: 配置连接主 HertaBeat 服务的对外 IP。-e MANAGER_PORT=1158
: 配置连接主 HertzBeat 服务的对外端口,默认1158。
更多配置详细步骤参考 通过Docker方式安装HertzBeat
- 下载您系统环境对应的安装包
hertzbeat-xx.tar.gz
GITHUB Release - 配置 HertzBeat 的配置文件
hertzbeat/config/application.yml
(可选) - 部署启动
$ ./bin/startup.sh
或bin/startup.bat
- 浏览器访问
http://localhost:1157
即可开始,默认账号密码admin/hertzbeat
- 部署采集器集群(可选)
- 下载采集器安装包
hertzbeat-collector-xx.tar.gz
到规划的另一台部署主机上 GITHUB Release - 配置采集器的配置文件
hertzbeat-collector/config/application.yml
里面的连接主 HertzBeat 服务的对外 IP,端口,当前采集器名称(需保证唯一性)等参数identity
mode
(public or private)manager-host
manager-port
collector: 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
- 此为前后端分离项目,本地代码调试需要分别启动后端工程
manager
和前端工程web-app
- 后端:需要
maven3+
,java17
和lombok
环境,修改YML
配置信息并启动manager
服务 - 前端:需要
nodejs npm angular-cli
环境,待本地后端启动后,在web-app
目录下启动ng serve --open
- 浏览器访问
http://localhost:4200
即可开始,默认账号密码admin/hertzbeat
详细步骤参考 参与贡献之本地代码启动
通过 Docker-Compose 部署脚本 一次性把 mysql/postgresql 数据库, iotdb/tdengine/victoria-metrics 时序数据库和 hertzbeat 安装部署。
详细步骤参考 通过Docker-Compose安装HertzBeat
通过 Helm Chart 一次性将 HertzBeat 集群组件部署到 Kubernetes 集群中。
详细步骤参考 Artifact Hub
HAVE FUN
Thanks these wonderful people, welcome to join us:
贡献者指南
订阅邮件列表 : 发送邮件至 [email protected]
来订阅邮件列表.
微信交流群 : 加 tan-cloud
好友邀请进群.
微信公众号 : 搜索 Apache HertzBeat
or usthecom
.
QQ交流群 : 群号 630061200
HertzBeat is built on so many great open source projects, thanks to them!
Java Spring SpringBoot Jpa Maven Assembly Netty Lombok Sureness Protobuf HttpClient Guava SnakeYaml JsonPath ...
TypeScript Angular NG-ZORRO NG-ALAIN NodeJs Npm Html Less Echarts Rxjs ZoneJs MonacoEditor SlickCarousel Docusaurus ...
HertzBeat has been included in the
CNCF Observability And Analysis - Monitoring Landscape.