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

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

前言

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

  • 一键安装:可以一键安装面板与 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 设置规则覆盖的机器

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

相关推荐
pk_xz12345632 分钟前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
小珑也要变强35 分钟前
Linux之sed命令详解
linux·运维·服务器
海绵波波10741 分钟前
Webserver(4.3)TCP通信实现
服务器·网络·tcp/ip
九河云3 小时前
AWS账号注册费用详解:新用户是否需要付费?
服务器·云计算·aws
Lary_Rock3 小时前
RK3576 LINUX RKNN SDK 测试
linux·运维·服务器
幺零九零零4 小时前
【计算机网络】TCP协议面试常考(一)
服务器·tcp/ip·计算机网络
热爱跑步的恒川4 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
云飞云共享云桌面5 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
一坨阿亮6 小时前
Linux 使用中的问题
linux·运维
ClkLog-开源埋点用户分析7 小时前
ClkLog企业版(CDP)预售开启,更有鸿蒙SDK前来助力
华为·开源·开源软件·harmonyos