技术研讨
2025-12-28
技术研讨
0
请注意,本文编写于 157 天前,最后修改于 71 天前,其中某些信息可能已经过时。

目录

一、什么是哪吒监控(Nezha Monitoring)
二、部署前的准备
1. 服务器与网络条件
2. 域名设置
三、安装 Dashboard 面板
1. 运行官方安装脚本
四、使用nginx反代
1、安装nginx
2、申请证书
3、配置nginx配置文件
①检查文件是否正确
②重新加载nginx服务
五、配置面板
1、通过域名访问你的面板
2、登录管理后台修改密码 初始账号密码都是 admin
六、添加机器
1、复制安装命令
2、安装Agent
3、之后就可以在前台看见这个机器了
4、可以添加更多的机器
七、最终效果
八、拓展
1、添加通知方式
2、告警服务,掉线通知
3、tcping icmping 服务监控
tcp地址可以在查看 https://pigcc.com/post/28
4、自定义样式

一、什么是哪吒监控(Nezha Monitoring)

哪吒监控(Nezha Monitoring)是一款开源、自托管、轻量级的服务器与网站实时监控和运维工具。它支持通过 Dashboard 查看系统状态、资源使用情况,并通过 Agent 采集被监控主机数据。

在本文中,我们将一步一步教你如何从零开始在BandwagonHost 搬瓦工机器上使用docker安装与部署哪吒监控(Nezha Monitoring)系统的 Dashboard 面板,使用nginx反代Dashboard,并配合 Agent 安装与基本配置内容。

二、部署前的准备

在开始部署之前,你需要准备以下环境

1. 服务器与网络条件

  • 一台 可以访问公网的服务器(本期使用的是 BandwagonHost 搬瓦工 购买参考:https://pigcc.com/post/20)
  • 防火墙和安全策略需允许 Dashboard 使用的端口(默认是 8008)
  • 推荐的规格:单核 + 512MB 内存 对于大部分场景足够。

2. 域名设置

  • 一个已设置好 A 记录 指向 Dashboard 服务器 IP 的域名

  • 如果使用 CDN,还建议准备第二个域名用于 Agent 通信(不通过 CDN)

    解析域名

三、安装 Dashboard 面板

1. 运行官方安装脚本

在你的 Dashboard 服务器终端执行以下命令来获取并运行官方安装脚本:

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

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

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

安装哪吒面板.png

哪吒填写配置信息

在浏览器中输入 http://your_server_ip:8008 可以访问访问哪吒监控的 Web 界面。

四、使用nginx反代

1、安装nginx

具体参考往期文章 https://pigcc.com/post/6

2、申请证书

具体参考往期文章 https://pigcc.com/post/6 安装nginx申请证书

或者往期文章 https://pigcc.com/post/16 对证书进行统一管理

3、配置nginx配置文件

文件路径一般在 /etc/nginx/sites-available/default

text
server { listen 443 ssl http2; listen [::]:443 ssl http2; 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; # grpc 相关 location ^~ /proto.NezhaService/ { grpc_set_header Host $host; grpc_set_header nz-realip $remote_addr; 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 $remote_addr; 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 $remote_addr; 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; proxy_pass http://127.0.0.1:8008; } } upstream dashboard { server 127.0.0.1:8008; keepalive 512; }

①检查文件是否正确

bash
sudo nginx -t

#nginx: [warn] "ssl_stapling" ignored, no OCSP responder URL in the certificate "/etc/letsencrypt/live/域名/fullchain.pem"这个警告不影响使用

②重新加载nginx服务

bash
sudo systemctl restart nginx

五、配置面板

1、通过域名访问你的面板

40d779c7d5c9cc49564013bd1d3eb681.png

2、登录管理后台修改密码 初始账号密码都是 admin

  • 修改初始账户密码

e5085147691370e35f6da09c020f7943.png


63b2fab1a6114d747477d55af63f1f0c.png

六、添加机器

1、复制安装命令

1936cd38a5e7beda9b7e4b11be355b9b.png

2、安装Agent

安装哪吒监控的Agent端

3、之后就可以在前台看见这个机器了

  • 后续可以在后台设置备注等一些参数了

image.png

4、可以添加更多的机器

将复制的链接在其他机器上执行可以实现监控其他的机器的状态

七、最终效果

可以监控所有添加的机器的状态 image.png

八、拓展

1、添加通知方式

以TG通知为例:

添加通知方式


3e4596b38f76789355f657eeeb4e354b.png

URL:

https://api.telegram.org/bot<机器人token>/sendMessage?chat_id=<会话id>&text=#NEZHA#

之后点击确认

如果成功可以在tg看见消息

image.png

这样通知方式添加完毕

2、告警服务,掉线通知

添加报警规则 添加报警


a98275cd1bcb1adeb016e0c43b11a31d.png


59d2402370a4f888d31a7f4ef5bbffa2.png

警告

上图没有点击启用,需要点击启用之后点击确认,如已经确认可以点击修改

之后我们对服务器执行关机,测试掉线通知 可以成功

7f7bb8ab06cf51442989a0afbd452d3e.png

更多的警报规则可以查看官方文档:https://nezha.wiki/guide/notifications.html#%E8%AD%A6%E6%8A%A5%E8%A7%84%E5%88%99%E8%AF%B4%E6%98%8E

3、tcping icmping 服务监控

添加服务

68a8f8b7955ff3a655ef95ed3d5e886c.png


image.png

tcp地址可以在查看 https://pigcc.com/post/28

之后再机器详情网络中就可以看见tcp网络波动了

需要等会才会有折线生成,下图是我之前设置好的 image.png

如果需要添加更多的需要给每个添加一个服务

例如三个运营商需要添加三个服务

4、自定义样式

如果觉得官方的样式不符合你的审美,需要添加自定义的样式可以在:

9665d4a9584ae9de89a82dd18ce29002.png

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:猪葱葱

联系邮箱::[email protected]

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!