HertzBeat
项目作者: tom
项目网址: https://hertzbeat.com/
入驻时间: 2023-11-16
开源许可证: Apache

项目描述

一个易用友好的开源实时监控告警系统,无需Agent,高性能集群,强大自定义监控能力。

项目介绍

HertzBeat 赫兹跳动

易用友好的开源实时监控告警系统,无需Agent,高性能集群,强大自定义监控能力。

Docker Pulls Artifact Hub discord Gitter QQ Twitter YouTube Channel Subscribers

官网: hertzbeat.dromara.org 全球网络 | hertzbeat.com 中国网络

云服务: console.tancloud.cn

介绍

HertzBeat 赫兹跳动 是一个拥有强大自定义监控能力,高性能集群,无需 Agent 的开源实时监控告警系统。

特点

  • 监控+告警+通知 为一体,支持对应用服务,数据库,操作系统,中间件,云原生,网络等监控阈值告警通知一步到位。
  • 易用友好,无需 Agent,全 WEB 页面操作,鼠标点一点就能监控告警,零上手学习成本。
  • Http,Jmx,Ssh,Snmp,Jdbc 等协议规范可配置化,只需在浏览器配置监控模版 YML 就能使用这些协议去自定义采集想要的指标。您相信只需配置下就能立刻适配一款 K8sDocker 等新的监控类型吗?
  • 高性能,支持多采集器集群横向扩展,支持多隔离网络监控,云边协同。
  • 自由的告警阈值规则,邮件 Discord Slack Telegram 钉钉 微信 飞书 短信 Webhook Server酱 等方式消息及时送达。

HertzBeat的强大自定义,多类型支持,高性能,易扩展,低耦合,希望能帮助用户快速搭建自有监控系统。
当然我们也提供了对应的 SAAS版本监控云服务,中小团队和个人无需再为监控自有资源而去部署一套监控系统,登录即可免费开始


image

image


模块

image

⛄ 已支持

我们将监控采集类型(mysql,jvm,k8s)都定义为yml监控模版,用户可以导入这些模版来支持对应类型的监控!
欢迎大家一起贡献你使用过程中自定义的通用监控类型监控模版。

快速开始

  • 如果您不想部署而是直接使用,我们提供SAAS监控云服务-TanCloud探云,即刻登录注册免费使用
  • 如果您是想将HertzBeat部署到内网环境搭建监控系统,请参考下面的部署文档进行操作。

HertzBeat安装

HertzBeat支持通过源码安装启动,Docker容器运行和安装包方式安装部署,CPU架构支持x86/arm64。

方式一:Docker方式快速安装
  1. docker 环境仅需一条命令即可开始

docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat

或者使用 quay.io (若 dockerhub 网络链接超时)

docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat

  1. 浏览器访问 http://localhost:1157 即可开始,默认账号密码 admin/hertzbeat

  2. 部署采集器集群

docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector tancloud/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

方式二:通过安装包安装
  1. 下载您系统环境对应的安装包hertzbeat-xx.tar.gz GITEE Release GITHUB Release
  2. 配置 HertzBeat 的配置文件 hertzbeat/config/application.yml(可选)
  3. 部署启动 $ ./bin/startup.shbin/startup.bat
  4. 浏览器访问 http://localhost:1157 即可开始,默认账号密码 admin/hertzbeat
  5. 部署采集器集群
    • 下载采集器安装包hertzbeat-collector-xx.tar.gz到规划的另一台部署主机上 GITEE Release GITHUB Release
    • 配置采集器的配置文件 hertzbeat-collector/config/application.yml 里面的连接主HertzBeat服务的对外IP,端口,当前采集器名称(需保证唯一性)等参数 identity mode (public or private) manager-host manager-port yaml 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.shbin/startup.bat
    • 浏览器访问主HertzBeat服务 http://localhost:1157 查看概览页面即可看到注册上来的新采集器

更多配置详细步骤参考 通过安装包安装HertzBeat

方式三:本地代码启动
  1. 此为前后端分离项目,本地代码调试需要分别启动后端工程manager和前端工程web-app
  2. 后端:需要maven3+, java11lombok环境,修改YML配置信息并启动manager服务
  3. 前端:需要nodejs npm angular-cli环境,待本地后端启动后,在web-app目录下启动 ng serve --open
  4. 浏览器访问 http://localhost:4200 即可开始,默认账号密码 admin/hertzbeat

详细步骤参考 参与贡献之本地代码启动

方式四:Docker-Compose 统一安装 hertzbeat+mysql+iotdb/tdengine

通过 Docker-Compose 部署脚本 一次性把 mysql 数据库, iotdb/tdengine 时序数据库和 hertzbeat 安装部署。

详细步骤参考 通过Docker-Compose安装HertzBeat

方式五:Kubernetes Helm Charts 部署 hertzbeat+collector+mysql+iotdb

通过 Helm Chart 一次性将 HertzBeat 集群组件部署到 Kubernetes 集群中。

详细步骤参考 Artifact Hub

HAVE FUN

百度统计