
开始之前
哪吒监控是一个开源、轻量的服务器和网站监控、运维工具
支持
- 对CPU、内存、存储、网络带宽、网络流量等一系列服务器指标的监控
- 对第三方IP、Web服务进行ICMP、TCP、SSL证书状态进行持续监控
- 支持WebSSH、定时任务、批量命令下发等运维功能
- ···
GitHub地址:https://github.com/naiba/nezha

安装哪吒面板
要安装哪吒监控,你必须拥有:
- 一台能够访问GitHub与Docker的服务器
- 一个接入Cloudflare的域名与SSL证书
- 一个Github账号,用于哪吒监控面板的用户鉴权
注意:
- 本教程适用于Ubuntu/Debian,但哪吒也支持其他发行版,
不过您需要自行安装curl与nano - 本教程假设您已经在服务器上安装有Nginx服务
如果还没有安装,可以先尝试自行安装宝塔或Nginx Proxy Manager
本教程提供上述两种Nginx服务的配置过程,但无安装过程
准备工作
在Cloudflare中添加DNS记录
在本例中,我们将使用probe.akkia.dev作为哪吒监控的域名。
源站服务器IP为1.1.1.1
登录Cloudflare控制面板并进入DNS设置页面

进入DNS设置页面后,点击Add record按钮,填写以下信息:
Type:A(对应IPV4地址),AAAA(对应IPV6地址),在本例中为AName: 子域,在本例中为probe,也可完整填写为probe.akkia.devProxy status: 启用状态(显示橙色云朵图标)
填写完成后,点击Save按钮,保存记录。

在左侧找到Network标签页并进入。
找到gRPC与WebSockets并设置为启用(显示为✅)。

至此,您已完成Cloudflare的全部设置。
记录您添加好的域名,在本例中为probe.akkia.dev
接下来我们将创建GitHub OAuth App。
创建GitHub OAuth App
登录GitHub后,访问Developer settings
点击New OAuth App

如下图所示,填写以下信息:
Application name: 任意填写,在本例中为NeZha MonitorHomepage URL: 你的域名,在本例中为https://probe.akkia.devAuthorization callback URL: 你的域名+/oauth/callback,在本例中为https://probe.akkia.dev/oauth/callback

填写完成后点击Register application按钮,完成注册。
完成注册后将自动跳转到你的OAuth App信息页面,在该页面中获取并记录Client ID和Client Secret。
如下图所示,Client ID将直接展示在页面中,而Client Secret需要手动生成。
点击Generate a new client secret按钮,生成Client Secret。

注意:Client secret只会展现一次,因此您应该立即记录下来。
至此,我们我们获得了以下信息:
Client ID: 5c9a89686ed87ce6c5ceClient Secret: aea8b62cd1b3a9fc8018d958538488d41c4b2ef8
哪吒监控面板端安装
安装哪吒监控面板
登录您的服务器,本章内容均在您的服务器终端完成。
安装脚本依赖的curl与后续编辑配置文件使用的nano
sudo apt update
sudo apt install -y curl nano运行一键安装脚本
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh输入1并按回车键,开始安装。

在经过一段时间的依赖安装后,您将需要输入以下信息:
OAuth提供商: GitHubClient ID: 5c9a89686ed87ce6c5ceClient Secret: aea8b62cd1b3a9fc8018d958538488d41c4b2ef8GitHub用户名: AkkiaS7站点标题: NeZha Monitor站点访问端口: 20001RPC 端口: 20002
按下回车键,等待面板启动。

配置Nginx服务器
在本例中,我们将假设您已经拥有已经安装完成的Nginx服务器并已配置好SSL证书。
如果没有,请自行安装宝塔面板或Nginx Proxy Manager。
下述配置任选其一完成,不可同时安装。
宝塔面板反向代理配置
在宝塔面板中为域名添加反向代理,任意填写代理名称与目标并保存。
然后点击配置文件按钮,删除所有内容并粘贴下述配置。
注意将端口修改为您在安装哪吒面板时配置的相应端口。
在本例中,20001对应面板访问端口,20002对应RPC端口。
#PROXY-START/
underscores_in_headers on;
location / {
proxy_pass http://127.0.0.1:20001;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
grpc_read_timeout 300s;
grpc_send_timeout 300s;
grpc_pass grpc://localhost:20002;
}
location ~ ^/(ws|terminal/.+)$ {
proxy_pass http://127.0.0.1:20001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
}
#PROXY-END/
Nginx Proxy Manager配置
添加反向代理,填写相应主机与端口信息。

注意SSL标签页中需要开启HTTP2支持

Advanced页面中,填入以下配置:
注意将端口与主机名修改为您在安装哪吒面板时配置的相应端口。
#PROXY-START/
underscores_in_headers on;
location / {
proxy_pass http://127.0.0.1:20001;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
grpc_read_timeout 300s;
grpc_send_timeout 300s;
grpc_pass grpc://localhost:20002;
}
location ~ ^/(ws|terminal/.+)$ {
proxy_pass http://127.0.0.1:20001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
}
#PROXY-END/
至此 哪吒监控面板安装完成。
尝试访问您的域名,应该可以看见面板正常工作。
配置哪吒面板
在浏览器中打开您的哪吒面板,并使用GitHub账号登录。
登入后进入设置页面,找到未接入CDN的面板服务器域名/IP设置项
填入您的域名,按下保存按钮。

接下来回到服务器终端,运行以下命令打开文本编辑器对配置文件进行编辑
nano /opt/nezha/dashboard/data/config.yaml修改下述配置:
proxygrpcport: 443
tls: true修改完成后,运行nezha.sh并选择5,重启面板。
至此,哪吒面板已完成安装并配置。
安装监控端
在面板端添加服务器
登录哪吒面板网页-管理后台-主机
点击添加服务器按钮,填写相应信息后点击添加

添加完成后,在页面中复制一键安装命令并在您想要监控的服务器终端中执行

执行完成后,您将能在哪吒面板中看到该服务器的相关指标信息。

完成之后
恭喜🎉,您已成功完成所有配置。
更多内容可以关注哪吒监控的官方文档