【性能监控 APM 四】hertzbeat
【性能监控 APM 二】JMC && jvisualvm && jconsole
【性能监控 APM 五】Prometheus + Grafana
HertzBeat 是一个拥有强大自定义监控能力,高性能集群,无需 Agent 的开源实时监控告警系统。
特点
- 集 监控+告警+通知 为一体,支持对应用服务,数据库,操作系统,中间件,云原生,网络等监控阈值告警通知一步到位。
- 易用友好,无需 Agent,全 WEB 页面操作,鼠标点一点就能监控告警,零上手学习成本。
- 将 Http,Jmx,Ssh,Snmp,Jdbc 等协议规范可配置化,只需在浏览器配置监控模版 YML 就能使用这些协议去自定义采集想要的指标。您相信只需配置下就能立刻适配一款 K8s 或 Docker 等新的监控类型吗?
- 高性能,支持多采集器集群横向扩展,支持多隔离网络监控,云边协同。
- 自由的告警阈值规则,邮件 Discord Slack Telegram 钉钉 微信 飞书 短信 Webhook 等方式消息及时送达。
环境
docker 24.0.6、ubuntu 22.04 LTS、hertzbeat 1.4.x、MySQL 8.0.27、TDengine 3.1.1.0
假设当前主机IP为:10.53.207.24

一、安装配置
1、镜像下载
docker pull tancloud/hertzbeat
docker pull tancloud/hertzbeat-collector
网络超时时使用:
docker pull quay.io/tancloud/hertzbeat
docker pull quay.io/tancloud/hertzbeat-collector
2、编写配置文档
下载官方配置文档到 自定义文件夹 /service/hertzbeat/config/ 中,进行配置修改。注意容器内部无法识别本机的"localhost",所以配置文件中都使用主机的外网ip。下载连接:
wget https://gitee.com/dromara/hertzbeat/raw/master/script/application.yml
wget https://gitee.com/dromara/hertzbeat/raw/master/script/sureness.yml
- 修改 application.yml 对服务进行配置
(1)将数据库改为自定义的mysql,确保在mysql服务中创建数据 “hertzbeat”,并且配置的账号支持远程连接。
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: 123456
url: jdbc:mysql://10.53.207.47:3306/hertzbeat?useUnicode=true&characterEncoding=utf-8&useSSL=false
(2)配置 td-engine 时序数据库(安装在本地,如果是远程的话讲localhost替换为远程主机pi或域名),首先确保在时序数据TDengine中创建数据库“hertzbeat”:
CREATE DATABASE hertzbeat KEEP 90 DURATION 10 BUFFER 16;
并且td-engine通过rest Http方式连接,确保TDengine服务同时开启了taosadapter服务。
warehouse:
store:
# 关闭默认JPA
jpa:
enabled: false
td-engine:
enabled: true
driver-class-name: com.taosdata.jdbc.rs.RestfulDriver
url: jdbc:TAOS-RS://10.53.207.24:6041/hertzbeat
username: root
password: taosdata
- 修改 sureness.yml 对登录账号进行配置,如下,配置账号密码:admin/Hw@654321
account:
- appId: admin
credential: Hw@654321
role: [admin]
3、创建并启动容器
docker run -d \
-p 1157:1157 \
-p 1158:1158 \
-e LANG=zh_CN.UTF-8 \
-e TZ=Asia/Shanghai \
-v /service/hertzbeat/data:/opt/hertzbeat/data \
-v /service/hertzbeat/logs:/opt/hertzbeat/logs \
-v /service/hertzbeat/config/application.yml:/opt/hertzbeat/config/application.yml \
-v /service/hertzbeat/config/sureness.yml:/opt/hertzbeat/config/sureness.yml \
--restart=always \
--name hertzbeat quay.io/tancloud/hertzbeat
通过 -v 参数将hertzbeat的相关配置文件进行了挂载,这样在创建容器的时候就会使用我们修改的配置,同时将hertzbeat的相关数据也挂载到了本地磁盘。
二、访问并添加监控
访问服务地址:http://{ip}:{port}
本实例服务地址:http://10.53.207.24:1157
配置的账号密码:admin/Hw@654321,未配置的话默认是 admin/hertzbeat
1、linux监控
路径:操作系统监控-> ubuntu linux -> 新增ubuntu linux ,只需要填写 主机IP、连接名称、端口、用户名、密码 连接到目标主机,监控就添加完成了,如下图:

2、数据库监控
路径:数据库监控 -> mysql数据库 -> 新增Mysql数据库,填写主机ip、连接名称、端口、用户名、密码 连接到数据库,保存后监控就创建完成了,如下图:

3、添加jvm监控
路径:应用服务监控 -> jvm虚拟机 -> 新增jvm虚拟机,填写相关信息就可以进行监控了(jvm服务器节点必须开启 JMX 服务并配置访问认证),如下图:

所有监控添加完成,面板中已经正常显示:

其他监控的添加可以参考官网说明:https://hertzbeat.com/zh-cn/docs/
原创文章,引用或转载请注明出处:https://www.cnblogs.com/hewei-blogs/articles/17717458.html
本文来自博客园,作者:蓝迷梦,转载请注明原文链接:https://www.cnblogs.com/hewei-blogs/articles/17717458.html

浙公网安备 33010602011771号