云计算百科
云计算领域专业知识百科平台

多台服务器别再挨个 SSH:部署哪吒监控,集中查看状态并配置异常告警

前言

哪吒面板的 Dashboard 能打开,并不代表监控系统已经真正跑通。

这次部署时就碰到了一个很典型的问题:服务端页面正常,Agent 安装过程也没有报错,但刷新哪吒面板以后,被监控服务器始终没有出现。真正开始排查以后才发现,问题并不在安装脚本本身,而是 Agent 与服务端之间的 TLS 配置没有匹配。调整对应启动参数以后,节点才正常上线,CPU、内存、磁盘、网络和在线状态也开始持续回传。

这篇文章就从这套实际部署过程展开:先安装哪吒 Dashboard,再分别给 Linux、Windows 等设备添加 Agent,把原本需要逐台 SSH 查看状态的服务器集中到同一个页面里;随后继续配置钉钉机器人和 CPU、内存、磁盘、离线等告警规则,让监控从“能看见”进一步变成“异常时主动提醒”。

最后,如果 Dashboard 本身运行在局域网环境中,还会通过 cpolar 增加远程访问入口和固定二级子域名,方便在外部网络继续查看这套监控面板。

image-20260313171922687

1.什么是哪吒面板?

哪吒面板(Nezha Monitoring) 是一款 开源、跨平台、自托管的服务器监控与管理面板,专为个人开发者、运维人员和小型团队设计,用于集中监控多台服务器(包括VPS、云主机、树莓派、NAS等)的实时状态。

主要特性

功能说明
😊多节点管理 一个Dashboard管理数十台甚至上百台主机
💕简洁 UI 响应式Web界面,支持暗色主题,手机/PC 体验一致
📊 实时监控 CPU、内存、磁盘、带宽、在线率、进程数、负载等指标
🌐 跨平台 Agent 支持 Linux、Windows、macOS、ARM(树莓派)、OpenWrt 等
🔀 双栈支持 完美兼容IPv4 / IPv6网络环境
🔔 智能告警 支持Telegram、Server、钉钉、企业微信、Bark等通知方式
🔒 自托管 所有数据存储在你自己的服务器上,无隐私泄露风险

架构组成

哪吒面板采用 “Dashboard + Agent” 分离架构:

Dashboard(控制面板)

  • 运行在你的主服务器上(通常是一台公网VPS)
  • 提供Web界面(默认端口8008)
  • 存储监控数据(使用SQLite或MySQL)

Agent(客户端)

  • 部署在每一台被监控的机器上(可内网)
  • 轻量级(Go编写,资源占用极低)
  • 主动上报数据到Dashboard

通信基于WebSocket + TLS,安全高效。

与其他监控工具对比

工具优势不足
哪吒面板 开源、轻量、中文友好、部署简单、支持Windows/ARM 生态插件较少,不适合超大规模集群
Prometheus + Grafana 功能强大、生态丰富 配置复杂,学习成本高
Uptime Kuma 专注HTTP/端口可用性监控 不提供系统级指标(如CPU、内存)
宝塔面板 集成建站+监控 监控功能弱,非专注型工具

适用场景

  • 个人用户:监控家庭NAS、树莓派、博客VPS
  • 开发者:跟踪测试机、数据库、API服务状态
  • 小团队:统一查看所有业务服务器健康状况
  • IPv6用户:完美支持纯IPv6环境监控(国内少有工具做到)

2.安装哪吒面板服务端

2.1 环境准备

首先你应当准备好一台配置不低于1核512MB内存的公网服务器,这个配置可以满足大部分的使用场景。并且请提前安装好依赖unzip,并提前在防火墙或者是安全策略放行8008端口,否则无法访问网站以及接收相关数据! 安装unzip:

CentOS系统:

sudo yum install unzip # CentOS 7 及以下版本
sudo dnf install unzip # CentOS 8 及以上版本

Ubuntu或Debian系统:

sudo apt update
sudo apt install unzip

image-20260313151236107

2.2 开始安装

在安装服务端的服务器上,运行下面的安装脚本:

curl -L https://raw.githubusercontent.com/nezhahq/scripts/refs/heads/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh

运行脚本后,会依次提示下方信息,如图所示继续操作(我选择手动安装):

82fcfd6f13ec2e8b8d206e7e6df4fd28

等待服务端重启完成,不要关闭终端!

部署完成后,在浏览器中输入 http://IP:8008 就能看到哪吒面板的界面:

image-20260313151705346

3.哪吒面板服务端配置

3.1 基础配置

点击右上方的登录,第一次登录的默认用户名和密码均为 admin:

image-20260313151811541

image-20260313151822311

修改密码:

image-20260313151917502

image-20260313151959738

3.2 客户端详细配置

看完4章教程后来配置

点击编辑按钮:

image-20260313155814059

公开备注输入下文,这是默认主题:

{
"billingDataMod": {
"startDate": "2024-12-08T12:58:17.636Z",
"endDate": "2024-12-08T12:58:17.636Z",
"autoRenewal": "1",
"cycle": "Year",
"amount": "200EUR"
},
"planDataMod": {
"bandwidth": "30Mbps",
"trafficVol": "1TB/Month",
"trafficType": "2",
"IPv4": "1",
"IPv6": "1",
"networkRoute": "4837",
"extra": "Einstein"
}
}

image-20260313155658200

更新完后,也可以自定义字段:

image-20260313160001983

返回前台查看变化:

image-20260313160033695

4.客户端使用教程

4.1 准备工作

  • 客户端一般安装在被检测的服务器上,支持在Windows 、macOS和Linux上一键安装。安装服务端的服务器也可以安装客户端,2者并不冲突!

  • 客户端没啥配置要求,只要能联上服务端的服务器就行。

4.2 开始安装客户端

打开服务器一栏,点击右侧的“安装命令”,并选择被检测服务器所对应的系统,安装命令会自动复制到你的剪贴板上。

image-20260313155000846

linux举例:

image-20260313155028035

windows举例:

image-20260313155048142

添加完成后,刷新网页,被检测服务器已经自动添加成功啦!

image-20260313155127174

你可以点击编辑按钮为其设置名称:

image-20260313155246814

返回前台可以查看到更直观的监控:

image-20260313155325792

随意点击一个,查看它的详细信息:

image-20260313155356942

也可以一键跳转终端:

image-20260313160125478

image-20260313160139398

4.3 客户端安装时出现的问题

这是linux给的自动安装脚本:

image-20260313160340954

很奇怪,为什么我按照步骤安装,且没有报错,哪吒面板却没出现我的服务器?

修改Agent启动参数:关闭TLS

将你的安装/启动命令中的:

NZ_TLS="true"

改为:

NZ_TLS="false"

  • 哪吒Agent的NZ_TLS=true仅在服务端配置了有效TLS证书(如Let’s Encrypt或自签名证书并正确加载)时才使用。
  • 默认的Docker部署或二进制部署通常不包含HTTPS,所以应设为false。
  • 即使你用 Nginx反向代理做了HTTPS,Agent也应该连接内部HTTP地址(如 127.0.0.1:8008),而不是走公网HTTPS。

把NZ_TLS改成false,问题就能解决!

5.实现钉钉机器人告警

5.1 获取Webhook URL

创建机器人:

在钉钉群的设置中添加机器人,选择自定义关键词方式。

步骤一:进入钉钉群 → 添加机器人

  • 打开钉钉 App,进入你想要添加机器人的群聊。
  • 点击右上角的「…」→ 选择「群设置」。
  • 在群设置页面中找到「智能群助手」或「群机器人」选项。
  • 点击「添加机器人」。

image-20260313165506749

image-20260313165519529

步骤二:选择“自定义”机器人

  • 在添加机器人页面,选择「自定义」类型(也叫“Webhook”方式)。
  • 填写机器人名称,例如:“哪吒”。
  • 选择「关键词触发」或「全部消息」,根据需求设置。
  • 点击「完成」。

image-20260313165617247

获取Webhook URL:

创建完成后获得。创建完成后直接复制Webhook URL。

5.2 钉钉群机器人配置示例

点击展开/收起

获取 URL 参数
  • 创建机器人:在钉钉群的设置中添加机器人,选择自定义关键词方式。
  • 获取 Webhook URL:创建完成后获得。
  • 通知配置:

    • 名称:哪吒探针小跟班
    • URL:

    image-20260313165854555

    添加通知分组,如图操作:

    image-20260313165937861

    image-20260313165953727

    image-20260313170012248

    5.3 配置告警规则

    image-20260313170043455

    我这里测试的是cpu大于20%就告警:

    [{"type":"cpu","max":10,"duration":5,"cover":0,"ignore":{"1":true,"2":false}}]

    image-20260313170145691

    重点是一定要选择通知组!

    这样钉钉群机器人就会在cpu>20%的时候告警啦!

    image-20260313170236088

    5.4 监控规则分享

    离线报警 规则:[{"Type":"offline","Duration":10}] 解释:每10s坚持一次,如果离线会发通知。

    CPU过高警告 规则:[{"type":"cpu","max":90,"duration":300}] 解释:CPU超过90%发通知警告。

    内存过高警告 规则:[{"type":"memory","max":90,"duration":300}] 解释:内存占用超过90%发通知警告,300s一周期。

    硬盘即将爆满 规则:[{"type":"disk","max":80,"duration":43200}] 解释:硬盘占用超过80%发通知警告,12小时一周期。

    6.安装cpolar实现随时随地开发

    你是否遇到过这样的问题?

    我在本地或内网部署了强大的 哪吒监控面板(Nezha Monitor),能实时查看服务器状态、网络流量、CPU负载……

    但一旦离开公司/家庭网络,就再也无法访问?

    想远程排查故障,却只能干着急?

    传统方案如公网IP、DDNS、FRP、Nginx反向代理等,要么成本高,要么配置复杂,还涉及端口暴露、安全策略、动态IP等麻烦。

    是时候认识 cpolar了!

    cpolar—— 新一代内网穿透工具,专为开发者与运维打造。

    6.1 什么是cpolar?

    cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。

    6.2 部署cpolar

    cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。

    ❤️以下是安装cpolar步骤:

    使用一键脚本安装命令:

    sudo curl https://get.cpolar.sh | sh

    image-20250725104019896

    安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

    sudo systemctl status cpolar

    22e5adfaf290a17fc3384bb296055259

    Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

    打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

    8a6698b1bf26d64ba3645827fbfb1c29

    7.配置公网地址

    登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

    • 隧道名称:可自定义,本例使用了:nezha,注意不要与已有的隧道名称重复
    • 协议:http
    • 本地地址:8008
    • 域名类型:随机域名
    • 地区:选择China Top

    image-20260313171406960

    创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。

    image-20260313171432388

    访问成功。

    image-20260313171600525

    8.保留固定公网地址

    使用cpolar为其配置二级子域名,该地址为固定地址,不会随机变化。

    image-20250918151358733

    点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是nezha,大家可以自定义。填写备注信息,点击保留。

    image-20260313171637709

    登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。

    image-20260313171707695

    修改隧道信息,将保留成功的二级子域名配置到隧道中

    • 域名类型:选择二级子域名
    • Sub Domain:填写保留成功的二级子域名
    • 地区: China Top

    点击更新

    image-20260313171742184

    更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

    image-20260313171758691

    最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

    image-20260313171831861

    总结

    哪吒面板真正解决的,不只是把几张 CPU、内存曲线放进网页,而是把原本分散在不同服务器上的状态集中到一个入口里。

    这次从 Dashboard 部署、Agent 接入一直做到钉钉告警,中间最值得记录的反而是 Agent 无法上线这个问题。安装命令执行成功,并不能说明通信一定正常;服务端地址、TLS 状态和 Agent 参数仍然需要保持一致。遇到节点离线时,先确认连接配置,比反复重新安装更有效。

    监控正常以后,CPU、内存、磁盘和离线状态都可以继续配置规则,再通过通知组把异常发送到钉钉。这样服务器出问题以后,不必等到主动打开面板或者有人反馈才知道。

    如果 Dashboard 部署在内网,通过 cpolar 增加远程入口后,还可以在外部网络继续查看状态。不过监控后台本身包含服务器信息、告警配置,部分版本还提供远程终端等管理能力,因此公网访问时更应该重视账号密码和访问权限。

    对于手里只有几台 VPS、NAS 或测试服务器的人来说,哪吒面板的意义并不是搭建一套复杂的企业监控体系,而是先把“逐台登录检查”,变成“集中查看,并在异常时收到提醒”。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 多台服务器别再挨个 SSH:部署哪吒监控,集中查看状态并配置异常告警
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!