可自定义实时监控系统HertzBeat

在这里插入图片描述

什么是 HertzBeat ?

HertzBeat是一个拥有强大自定义监控能力,无需 Agent 的开源实时监控告警系统。集 监控+告警+通知 为一体,支持对应用服务,数据库,操作系统,中间件,云原生,网络等监控,阈值告警通知一步到位。更自由化的阈值规则(计算表达式),邮件、DiscordSlackTelegram、钉钉、微信、飞书、短信、Webhook等方式及时送达。

如果你不想自己搭建,可以去试试官方的云服务:https://tancloud.cn

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 hertzbeat ,选择第一个 tancloud/hertzbeat,版本选择 latest

本文写作时, latest 版本对应为 v1.3.1

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 hertzbeat,并在其中建两个子文件夹 datalogs

文件夹 装载路径 说明
docker/hertzbeat/data /opt/hertzbeat/data 存放 H2数据库
docker/hertzbeat/logs /opt/hertzbeat/logs 日志目录

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
1157 1157

在这里插入图片描述

环境

可变
LANG 默认未 C.UTF-8,改设为 zh_CN.UTF-8
TZ 设为 Asia/Shanghai

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 hertzbeat 和 子目录
mkdir -p /volume2/docker/hertzbeat/{
    
    data,logs}

# 进入 hertzbeat 目录
cd /volume2/docker/hertzbeat

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name hertzbeat \
   -p 1157:1157 \
   -v $(pwd)/data:/opt/hertzbeat/data \
   -v $(pwd)/logs:/opt/hertzbeat/logs \
   -e LANG=zh_CN.UTF-8 \
   -e TZ=Asia/Shanghai \
   tancloud/hertzbeat

在这里插入图片描述

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  hertzbeat:
    image: tancloud/hertzbeat
    container_name: hertzbeat
    restart: unless-stopped
    ports:
      - 1157:1157
    volumes:
      - ./data:/opt/hertzbeat/data
      - ./logs:/opt/hertzbeat/logs
    environment:
      - LANG=zh_CN.UTF-8
      - TZ=Asia/Shanghai

然后执行下面的命令

# 新建文件夹 hertzbeat 和 子目录
mkdir -p /volume2/docker/hertzbeat/{
    
    data,logs}

# 进入 hertzbeat 目录
cd /volume2/docker/hertzbeat

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:1157 就能看到登录界面

在这里插入图片描述

默认账号密码 admin/hertzbeat

在这里插入图片描述

PING连通性

监控 --> 应用服务监控 --> PING连通性 --> 新增PING连通性

在这里插入图片描述

填入要监控的主机 IP监控名称,然后测试一下

在这里插入图片描述

没问题的话,直接 确定

在这里插入图片描述

MariaDB数据库

监控 --> 数据库监控 --> MariaDB数据库 --> 新增MariaDB数据库

在这里插入图片描述

老苏准备测试群晖自带的 MariaDB 10

在这里插入图片描述

填入要监控的主机 IP监控名称、端口,然后测试一下

在这里插入图片描述

没问题的话,直接 确定

在这里插入图片描述

Docker

打开 /var/packages/Docker/etc/dockerd.json

在这里插入图片描述

增加一行

"hosts" : [ "tcp://192.168.0.197:2375", "unix:///var/run/docker.sock" ],

其中:192.168.0.197 为群晖的主机 IP

在这里插入图片描述

保存后,执行一次,当然你也可以在 套件中心 重启 Docker 套件

# 重启docker
synoservice --restart pkgctl-Docker

监控 --> 云原生监控 --> Docker --> 新增 Docker

在这里插入图片描述

填入要监控的主机 IP监控名称、端口,然后测试一下

在这里插入图片描述

没问题的话,直接 确定

在这里插入图片描述

过一段时间在 Dashboard 可能会有一些事件

在这里插入图片描述

消息通知

HertzBeat 的消息通知支持很多种

在这里插入图片描述

官方提供了详细的说明,而且是中文的,大家仔细研究吧

https://hertzbeat.com/zh-cn/docs/help/alert_email

无论在哪个页面上遇到问题,都可以直接点右上角的 帮助 按钮,默认是英文的,但是可以切换为中文

在这里插入图片描述

参考文档

dromara/hertzbeat: A real-time monitoring system with custom-monitor and agentless. Support web service, database, os, middleware and more. 一个拥有强大自定义监控能力,无需Agent的实时监控系统。网站监测,PING连通性,端口可用性,数据库,操作系统,中间件,API监控,阈值告警,告警通知(邮件微信钉钉飞书)。
地址:https://github.com/dromara/hertzbeat

HertzBeat · An open source, real-time monitoring tool with custom-monitor and agentLess. | HertzBeat
地址:https://hertzbeat.com/

TANCLOUD探云 · 易用友好的高性能监控云 | TANCLOUD探云
地址:https://tancloud.cn/

通过 Docker 方式安装 HertzBeat | HertzBeat
地址:https://hertzbeat.com/zh-cn/docs/start/docker-deploy/

猜你喜欢

转载自blog.csdn.net/wbsu2004/article/details/132401003