阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

优雅、强大、轻量开源的多服务器监控神器

146次阅读
没有评论

共计 4418 个字符,预计需要花费 12 分钟才能阅读完成。

优雅、强大、轻量开源的多服务器监控神器

在多台服务器同时运行的环境中,性能监控、状态告警、资源可视化 是运维人员的日常必需。今天星哥要给大家介绍一款开源、轻量且颜值极高的服务器监控面板——哪吒监控(Nezha Monitoring)

什么是哪吒监控?

哪吒监控 是一款基于 Go 语言开发的 高性能多服务器监控系统 。它的定位是: 轻量、灵活、美观、易用 你可以在一台主服务器上部署控制端,再在多台被监控的服务器上部署 Agent,轻松实现统一管理与可视化监控。

相比于传统的 Zabbix、Prometheus 等方案,哪吒监控更简洁、上手更快,特别适合个人站长、小团队和中小型运维场景使用。

优雅、强大、轻量开源的多服务器监控神器

核心特性

1. 多平台支持

哪吒监控支持 Linux、Windows、macOS、ARM 架构等多种系统。无论是云服务器还是家用 NAS,都能轻松接入。

2. 极简部署方式

3. 丰富的监控数据

内置监控包括:

  • CPU、内存、磁盘使用率

  • 网络带宽与流量统计

  • 系统负载、在线时长

  • 服务状态与延迟检测

还支持自定义探针任务,比如检测网站可用性、TCP 端口连通性等。

4. 实时可视化与告警

哪吒监控提供现代化前端界面,支持实时图表展示。 你还可以配置 Telegram、Slack 等通知渠道,当服务器异常时自动告警,秒级响应。

5. 插件式架构

支持扩展脚本和自定义命令,方便开发者根据实际需求定制功能。

使用体验:轻盈又优雅的监控体验

星哥在多台 VPS 上测试后,发现哪吒监控的性能占用极低,前端界面响应迅速。

面板采用 Vue + Tailwind 风格设计,清晰直观,操作逻辑非常友好。

更重要的是,它支持 反向连接模式,即便服务器在内网或防火墙后,也能轻松接入主控端,这对异地监控场景非常实用。

服务端安装

只需一条命令即可快速安装,无需复杂依赖。 常见部署方式:

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

如果你的服务器位于中国大陆,可以使用镜像:

curl -L https://gitee.com/naibahq/scripts/raw/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh

几分钟搞定面板和 Agent 部署,真正的“开箱即用”。

以 Docker 安装为例,安装完成后按提示输入以下信息:

  • 请输入站点标题: – 自定义站点标题。

  • 请输入暴露端口: – 公开访问端口(默认 8008,可自定义)。

  • 请指定后台语言: – 选择语言偏好。

输入完成后,等待拉取 Docker 镜像。安装结束后,如果一切正常,你可以通过域名和端口号访问 Dashboard,例如: http://dashboard.example.com:8008

如果需要再次运行安装脚本,可输入以下命令:

bash

./nezha.sh

打开管理脚本。

登录到 Dashboard 配置界面

后台管理界面的路径为 /dashboard,你只需访问: http://dashboard.example.com:8008/dashboard

首次登录的默认用户名和密码均为 admin

WARNING

默认密码为弱密码,对于高权限的面板来说,使用弱密码非常危险!
建议安装后立即进入管理页面:点击头像 →“个人信息”→“更新个人资料”修改密码。
建议密码长度至少 18 位,并混合大小写字母、数字及符号。

Nginx 配置示例

以下是使用 Nginx 配置反向代理的示例:

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    # http2 on; # Nginx > 1.25.1,请注释上面两行,启用此行

    server_name dashboard.example.com; # 替换为你的域名
    ssl_certificate          /data/letsencrypt/fullchain.pem; # 域名证书路径
    ssl_certificate_key      /data/letsencrypt/key.pem;       # 域名私钥路径
    ssl_stapling on;
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:10m; # 如果与其他配置冲突,请注释此项
    ssl_protocols TLSv1.2 TLSv1.3;

    underscores_in_headers on;
    set_real_ip_from 0.0.0.0/0; # 替换为你的 CDN 回源 IP 地址段
    real_ip_header CF-Connecting-IP; # 替换为你的 CDN 提供的私有 header,此处为 CloudFlare 默认
    # 如果你使用 nginx 作为最外层,把上面两行注释掉

    # grpc 相关    
    location ^~ /proto.NezhaService/ {
        grpc_set_header Host $host;
        grpc_set_header nz-realip $http_CF_Connecting_IP; # 替换为你的 CDN 提供的私有 header,此处为 CloudFlare 默认
        # grpc_set_header nz-realip $remote_addr; # 如果你使用 nginx 作为最外层,就把上面一行注释掉,启用此行
        grpc_read_timeout 600s;
        grpc_send_timeout 600s;
        grpc_socket_keepalive on;
        client_max_body_size 10m;
        grpc_buffer_size 4m;
        grpc_pass grpc://dashboard;
    }
    # websocket 相关
    location ~* ^/api/v1/ws/(server|terminal|file)(.*)$ {
        proxy_set_header Host $host;
        proxy_set_header nz-realip $http_cf_connecting_ip; # 替换为你的 CDN 提供的私有 header,此处为 CloudFlare 默认
        # proxy_set_header nz-realip $remote_addr; # 如果你使用 nginx 作为最外层,就把上面一行注释掉,启用此行
        proxy_set_header Origin https://$host;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_read_timeout 3600s;
        proxy_send_timeout 3600s;
        proxy_pass http://127.0.0.1:8008;
    }
    # web
    location / {
        proxy_set_header Host $host;
        proxy_set_header nz-realip $http_cf_connecting_ip; # 替换为你的 CDN 提供的私有 header,此处为 CloudFlare 默认
        # proxy_set_header nz-realip $remote_addr; # 如果你使用 nginx 作为最外层,就把上面一行注释掉,启用此行
        proxy_read_timeout 3600s;
        proxy_send_timeout 3600s;
        proxy_buffer_size 128k;
        proxy_buffers 4 256k;
        proxy_busy_buffers_size 256k;
        proxy_max_temp_file_size 0;
        # proxy_set_header X-Forwarded-Proto $scheme; # 如果你使用 nginx 作为最外层,就启用此行避免无法正确读取访问的协议
        proxy_pass http://127.0.0.1:8008;
    }
}

upstream dashboard {
    server 127.0.0.1:8008;
    keepalive 512;
}

安装 Agent

哪吒监控的被控端服务被称为 Agent,本文档将介绍如何在被控端服务器上安装 Agent,并与 Dashboard 连接。

Agent 二进制文件仓库地址为:https://github.com/nezhahq/agent/releases

一键安装 Agent

哪吒监控支持在 Windows、macOS 和 Linux 上一键安装 Agent。遵循本文档的步骤,你可以轻松地在服务器上部署它。

准备

在安装前,需要提前在管理面板中设置通信域名,该域名不建议接入 CDN。本文档以示例通信域名“data.example.com”为例。

  1. 在后台管理面板点击头像,进入“系统设置”页。

  2. 在“Agent 对接地址【域名 /IP: 端口】”项中填入通信域名和端口“data.example.com:8008”。

  3. 点击“确认”保存设置。

一键安装步骤

  1. 服务器 页面中,点击 安装命令 并选择对应操作系统,安装命令将自动复制到你的剪贴板。

  2. 在被控端服务器中运行安装命令,等待安装完成后返回到 服务器 页面查看是否上线。

  3. 如果安装成功,页面中将自动弹出新的服务器,你可以点击编辑按钮为其设置名称。

通知设置

哪吒监控支持对服务器的负载、CPU、内存、硬盘、流量、月流量、进程数和连接数进行监控,并在达到用户设定的阈值时发送通知。

灵活的通知方式

  • 在面板消息中,#DATETIME# 代表事件发生的时间戳,当通知被触发时,会自动替换为实际时间。

  • #NEZHA# 是面板消息占位符,触发通知时会自动替换为实际消息内容。

  • 请求体内容格式:

    • 当请求类型为 FORM 时,使用 key:value 的形式,value 中可包含占位符,通知时会自动替换。

    • 当请求类型为 JSON 时,会进行简单的字符串替换后直接提交到 URL

  • URL 中也可包含占位符,请求时会进行字符串替换。

部署建议与优化小技巧

  1. 开启 HTTPS 使用反向代理(如 Nginx)为哪吒面板配置 SSL 证书,提升安全性与专业感。

  2. 结合 1Panel、宝塔等面板使用 可实现统一运维管理,快速接入多台主机。

总结:

哪吒监控的优秀之处在于——功能足够强、部署足够轻、界面足够美 它让服务器监控不再是复杂的告警系统,而是一种赏心悦目的“云上仪表盘”。

如果你正在寻找一款:

  • 可私有化部署的监控工具

  • 支持多端节点统一可视化

  • 安装简洁、性能优秀

那么,哪吒监控绝对值得一试。

一行命令上线,实时掌握你的服务器运行全貌。

项目官网:https://nezha.wiki/
GitHub 地址:https://github.com/naiba/nezha

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2025-10-19发表,共计4418字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中