Nezha
Nezha(哪吒监控)是一款自托管的轻量级服务器监控和运维工具,支持 HTTP/TCP/Ping/证书监控、告警通知、资源监控等功能。
#type / resource
#status / growing
#tech / ops
#tech / monitoring
[!info] related notes
- 相关实战: Nezha 面板部署实战
- 相关协议: gRPC
- 相关工具: Caddy, Cloudflare
Nezha
这是什么
Nezha(哪吒监控)是一款自托管、轻量级的服务器监控和运维工具。核心能力包括服务器资源监控(CPU、内存、磁盘、网络)、HTTP/TCP/Ping/SSL 证书监控、定时任务、告警通知等。采用 Dashboard + Agent 架构,dashboard 集中展示,agent 部署在每台被监控的机器上。
核心架构
- Dashboard:Go 编写,提供 Web 管理面板和 gRPC 服务端,默认监听 8008 端口
- Agent:Go 编写,部署在被监控服务器上,通过 gRPC over TLS 连接 dashboard
- 数据存储:SQLite(轻量,无需额外数据库服务)
- 前端主题:支持自定义模板(
admin-dist/user-dist)
关键配置项
| 配置项 | 说明 | 建议值 |
|---|---|---|
listen_host | Dashboard 监听地址 | 127.0.0.1(配合反代) |
web_real_ip_header | Web 端真实 IP 头 | Cloudflare 代理时用 CF-Connecting-IP |
agent_secret_key | Agent 连接密钥 | 强随机字符串 |
install_host | Agent 安装地址 | 域名:443 |
tls | Agent 是否用 TLS | true |
内置 WAF
Nezha 面板自带 WAF 功能(nz_waf 表),依赖 web_real_ip_header 识别访客 IP。WAF 拦截记录存储在 SQLite 的 nz_waf 表中。如果 web_real_ip_header 配置不当(比如走 Cloudflare 代理但用了 X-Forwarded-For),WAF 会误封正常访客。
适用场景
- 个人 VPS 集群的资源监控和告警
- 网站/服务的可用性监控(HTTP、TCP、Ping、证书到期)
- 轻量级运维管理(定时任务、服务管理)
局限性
- Dashboard 和被监控机器部署在同一台机器时,整机宕机则监控一起失联
- Agent 走 Cloudflare 代理时 gRPC 长连接可能被断开(免费套餐限制),建议 agent 直连
- 免费套餐的 Cloudflare 对 gRPC streaming 有时长限制
官方资源
- GitHub: https://github.com/naiba/nezha
- 文档: https://nezha.wiki/
- Agent: https://github.com/nezhahq/agent