开源、轻量、易用的服务器实时监控工具:哪吒探针

本文首发于只抄博客,欢迎点击原文链接了解更多内容。

前言

哪吒探针是一个开源、轻量、易用的服务器监控、运维工具,它有以下几个特点:

  • 一键安装:可以一键安装面板与 Agent,并且支持 Linux、Windows、MacOS、OpenWRT 以及群晖等主流系统
  • 实时监控:支持同时监控多个服务器的实时状态、网络延迟
  • 功能丰富:支持 WebSSH、DDNS、流量监控,并且可以支持定时任务以及告警通知

安装哪吒探针一般需要有一台公网 IP 的 VPS 用于安装面板、一个 Github 账号用于登录后台,如果你想在没有公网 IP 的设备上部署哪吒探针,可以参考 没有公网 IP 如何部署哪吒探针?(适用于家里云 Nas、Nat VPS、IPv6 Only VPS)

安装面板

Github 创建应用

  1. 打开 Github 创建一个应用

  2. 填写应用的信息

    • Application name:应用名字,可以随意填写

    • Homepage URL:面板的域名,如果不打算使用域名,可以直接填写 http://ip:port

    • Authorization callback URL:在域名后面添加 /oauth2/callback 填入

  1. 创建完成后,点击页面中的 Generate a new client secret 生成密钥,并将 Client ID 与 Client secrets 记录下来 (密钥只会显示一次)

服务器安装面板

通过一键脚本进行安装面板

sh 复制代码
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh  -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh

如果服务器位于国内,可以使用 gitee 的地址下载脚本

sh 复制代码
curl -L https://gitee.com/naibahq/nezha/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
  1. 输入 2 选择独立安装

  2. 输入 1 安装面板端

    • OAuth2 提供商 github
    • Client ID 与 Client secrets 填写刚才记录下来的
    • 管理员填写 Github 的用户名
    • 标题任意,端口默认
  1. 稍等片刻,安装成功后,使用 http://ip:8008 就能进入面板了

安装 Agent

  1. 在面板的后台点击新增服务器,任意起一个名字
  1. 来到设置中,填入面板绑定的域名或者 IP
  1. 在列表中点击复制一键安装脚本到想要监控的服务器上运行
  1. Agent 安装完成后,就能在面板上看到机器上线了

DDNS

哪吒探针的 Agent 会上报机器的 IP,因此我们可以在面板端配置 DDNS,即可实现一端部署,多端 DDNS,不再需要在每台机器上安装 ddns-go

启用哪吒探针的 DDNS 功能非常简单,只需要编辑配置文件 vim /opt/nezha/dashboard/data/config.yaml

将 Cloudflare 的 token 填入 AccessSecret 中,token 的获取可以参考 通过 ddns-go 动态域名解析 实现公网访问内网服务

yaml 复制代码
DDNS:
  Enable: true
  Provider: "cloudflare"
  AccessSecret: ""
  MaxRetries: 3
  Profiles: null

然后返回面板后台,勾选启用 DDNS、启用 DDNS IPv6、输入 DDNS 域名

默认情况下,Agent 每 30 分钟上报一次 IP,建议在安装 Agent 时,添加 -u 参数修改上报间隔,单位为秒

sh 复制代码
./nezha.sh install_agent 192.168.1.1 5555 123456789 -u 60

服务 - 网络监控

在后台管理的服务页面中,按如图所示添加监控,安装有 Agent 的机器会定期 Ping 目标 IP,并记录下延迟在前台形成图表

添加后,等待几分钟 ,来到前台的网络选项中,就可以查看 24 小时内的延迟情况

任务 - 计划任务

如果你有多台服务器都需要定时执行任务,则可以在任务页面中,添加计划任务替代 crontab,无需在每台机器上编辑 crontab,更加的方便

告警 - 通知与告警

通知

在告警页面中,可以添加通知方式,用于触发告警任务或完成计划任务时的通知,哪吒探针支持多种通知方式,可以参考官方文档 - 灵活的通知方式,下图以飞书机器人通知为例

告警

告警规则可以用于监控服务器是否在线、CPU 占用、内存占用、硬盘占用以及网速、流量等,当超过设定的阈值时,通过上面设置的通知方式进行告警

告警规则的设置为 json 格式的对象,更多的配置可以参考官方文档 - 告警规则说明

  • type 设置监控的类型,例如监控 CPU 占用
  • max 设置监控的阈值
  • duration 设置持续时长,超过该时长后触发通知
  • cover 与 ignore 设置规则覆盖的机器

一个告警可以添加多个类型,如在一个规则中选择了多个类型,需要同时满足所有选择的类型才会触发通知

相关推荐
徐同保10 小时前
nginx转发,指向一个可以正常访问的网站
linux·服务器·nginx
HIT_Weston11 小时前
95、【Ubuntu】【Hugo】搭建私人博客:_default&partials
linux·运维·ubuntu
实心儿儿11 小时前
Linux —— 基础开发工具5
linux·运维·算法
oMcLin11 小时前
如何在SUSE Linux Enterprise Server 15 SP4上通过配置并优化ZFS存储池,提升文件存储与数据备份的效率?
java·linux·运维
SelectDB12 小时前
驾驭 CPU 与编译器:Apache Doris 实现极致性能的底层逻辑
运维·数据库·apache
修己xj12 小时前
从“死了么”到“活着记”:用Gmeek在数字世界留下思想印记
开源
❀͜͡傀儡师12 小时前
docker部署Arcane容器可视化管理平台
运维·docker·容器
老姚---老姚12 小时前
docker常用命令
运维·docker·容器
我是苏苏12 小时前
Web开发:C#通过ProcessStartInfo动态调用执行Python脚本
java·服务器·前端
深圳安锐科技有限公司13 小时前
边坡倾斜自动化监测 倾角仪 如何通过安锐云查看监测曲线?
运维·视觉检测·实时监测·自动化监测·结构健康监测·倾斜角度监测·倾角传感器