暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

轻量级实时监控系统——HertzBeat入门教程

程序员恰恰 2024-05-02
202


  • 1 简介
  • 2 Docker 安装
  • 3 监控 Redis 数据库
  • 4 监控 SpringBoot 服务
  • 5 报警配置
HertzBeat中文名称为赫兹跳动 ,是一个拥有强大自定义监控能力,无需 Agent 的开源实时监控告警工具。HertzBeat集 监控+告警+通知 为一体,支持对应用服务,数据库,操作系统,中间件,云原生,网络等监控,阈值告警通知一步到位。

1、产品特色

HertzBeat 有两个非常鲜明的特色:强大的监控模版无需 Agent

1.1 强大的监控模版
  • 集监控+告警+通知 为一体,支持对应用服务,应用程序,数据库,缓存,操作系统,大数据,中间件,Web服务器,云原生,网络,自定义等监控阈值告警通知一步到位。


  • 易用友好,无需 Agent,全 WEB 页面操作,鼠标点一点就能监控告警,零上手学习成本。


  • 将 Http, Jmx, Ssh, Snmp, Jdbc, Prometheus 等协议规范可配置化,只需在浏览器配置监控模版 YML 就能使用这些协议去自定义采集想要的指标。


  • 兼容 Prometheus 的系统生态并且更多,只需页面操作就可以监控 Prometheus 所能监控的。


  • 高性能,支持多采集器集群横向扩展,支持多隔离网络监控,云边协同。


  • 自由的告警阈值规则,邮件 Discord Slack Telegram 钉钉 微信 飞书 短信 Webhook Server酱 等方式消息及时送达。

  • 提供强大的状态页构建能力,轻松向用户传达您产品服务的实时状态

1.2 无‍需 Agent

笔者曾经接触过多款监控系统,他们有一个非常鲜明的共通点:安装 Agent 。Agent  的安装部署调试,需要花费大量的时间和精力。

HertzBeat 的原理就是使用不同的协议去直连对端系统,采用 PULL 的形式去拉取采集数据,无需用户在对端主机上部署安装  Agent | Exporter 等。

比如 监控 linux 操作系统,HertzBeat 端输入 IP 端口账户密码或密钥即可。

2 Docker 安装

docker 环境默认配置的安装方式仅需一条命令:

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

复制

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

想修改默认监控数据存储媒介,用户名,密码等,可查看官网文档:https://hertzbeat.apache.org/zh-cn/docs/start/docker-deploy/

3 监控 Redis 数据库

首先,我们尝试监控 Redis 数据库。进入缓存监控-Redis数据库 ,点击新增Redis数据库 按钮 。

点击确定后,会显示监控 Redis 列表:

点击监控详情图标,可以显示 Redis 监控信息:

4 监控 SpringBoot 服务

4.1 配置 Actuator

Spring Boot Actuator 是 Spring Boot 框架中的一个模块,它提供了一组用于监控和管理 Spring Boot 应用程序的功能。Actuator 模块为开发人员和运维团队提供了一些有用的端点(endpoints),可以通过 HTTP 或 JMX 进行访问,以获取应用程序的运行时信息、性能指标和健康状况等。

首先,我们在 SpringBoot 项目中添加 actuator 依赖。

 <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

复制

应用配置如下:

spring :
  application :
    name : Hertzbeat
server :
  port : 9682
management:
  endpoints:
    web:
      exposure:
        include: '*'
    enabled-by-default: on

复制

访问 http://localhost:9682/actuator
,查看暴露出来的端点:

4.2 应用程序监控
进入监控中心,新增SpringBoot2.0监控 按钮 。

点击确定后,会显示监控 SpringBoot2.0  列表:

点击监控详情图标,可以显示  SpringBoot2.0 监控信息:

5 报警配置

报警是监控系统中至关重要的功能,它为运维团队提供了实时的、即时的反馈,使其能够迅速响应和解决潜在的问题。
5.1、系统配置邮件服务器
SSL:一定要勾选

你可以百度用的QQ服务器地址是什么,一般选择SMTP服务,其中邮箱密码指的是授权码,生成方式如下:选择账号与安全

选择安全设置-生成授权码

另外:docker的配置也需要改,我的启动方式如下:(挂载了配置文件,宿主机和容器共享配置)

因此我需要修改docker的挂载文件application.yml

修改如下:修改后重启docker

5.2、定义通知媒介

消息通知-通知媒介-新增接受对象-填写-点击测试

此时我的邮箱已经收到一封告警通知

通知媒介可以理解:谁接收告警信息,HertzBeat 定义了多种通知方式,比如邮件、钉钉、企业微信等。

5.3、定义通知策略

通知策略可以配置接收对象、通知模板、通知时间等。
5.4、模拟系统关闭
我们kill掉 SpringBoot 服务后,监控中心会显示告警信息:
同时,查看接收邮件里是否存在邮件。果然收到了系统不可用的邮件,邮件内容包括:监控目标、监控名、告警级别,触发时间等

---THE END---


文章转载自程序员恰恰,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论