哪吒监控 是一个开源、轻量的服务器和网站监控、运维工具。它可以帮助用户实时了解服务器的系统状态,如 CPU、内存、磁盘、网络等指标。哪吒探针的面板和客户端都可以通过一键脚本安装,支持 Linux、Windows、MacOS 等主流系统。哪吒探针的界面简洁美观,还支持多种主题和语言。如果你有两台及以上服务器,非常推荐使用哪吒监控来查看服务器运行状态
哪吒探针分两个端:
- 面板端:要求公网IP,或者两个端口也行
- 探针端:只要联网就行
可以说是非常简单,一个面板端统计信息展示,多个探针端收集自己所在机器的系统信息
废话不多说,开始!
目录
1.面板端部署
2.Agent探针端部署
1.面板端部署
面板端要求使用Linux系统
第一步我们先获取登录Client ID 和密钥
第二步我们开始安装!
第三步配置反向代理(可选)
1-1.获取Client ID 和密钥
这里我们可以选择使用Github/Gitee的接口进行登录
(其实还有别的,但是我觉得这两个用的人最多而且足够满足不同地区的使用场景了)
1-1-1.Github
Github是全球最大的软件项目的托管平台
可能你没用过Gitee,但是你绝对用过Github
进入这个 链接 创建OAuth应用程序
Authorization callback URL (回调地址)示例:
http://{服务器IP}:8008/oauth2/callback
Enable Device Flow可不开
设置完后点击 Register application
即可
这时我们就能看见Client ID了
但是没有密钥,我们点击Client secrets那一行右边的 Generate a new client secret
创建一个新密钥
把Client ID和Client secrets保存下来备用,现在可以跳至 1-2 安装面板
1-1-2.Gitee
Gitee是国内比较好的软件项目的托管平台,如果嫌弃国内访问Github较慢可使用Gitee接口
进入这个 链接 创建OAuth应用程序
回调地址示例:
http://{服务器IP}:8008/oauth2/callback
创建应用后我们就能看到Client ID和Client Secret了
保存备用
1-2.安装面板端
非常简单,是自动化脚本
Github源(境外推荐):
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
Gitee源(大陆推荐):
curl -L https://gitee.com/naibahq/nezha/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
安装方式随意,推荐Docker (我不知道为什么我独立安装不上,只能用Docker)
(安装Docker可参考 Linux安装Docker)
进入脚本后按1 安装面板端
- OAuth2提供商选择你刚才创建的那一家 回车
- 填入Client ID 回车
- 填入Client secrets 回车
- 管理员输入自己对应供应商的用户名,不是姓名
- 站点标题自定义
- 站点端口默认8008 (建议默认,后面可以部署反向代理)
- Agent 接入的 RPC 端口为探针连接面板的端口,(建议默认5555)
等待镜像拉取完成后就安装好了
1-3.面板端反向代理
由于哪吒探针面板依赖WebSocket,所以在配置反向代理的时候记得开启WebSocket
以下我简单说
- 打开宝塔
- 创建站点
- 填写域名后PHP版本选择纯静态
- 配置SSL证书
- 配置反向代理,目标URL为
http://localhost:8008
,缓存什么都关了 - 编辑反向代理配置文件,在配置文件里添加
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
示例:
location ^~ /
{
proxy_pass http://localhost:8008;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
#启用WebSocket
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_http_version 1.1;
# proxy_hide_header Upgrade;
add_header X-Cache $upstream_cache_status;
}
- 点击保存就可以使用域名访问了,别忘了添加DNS解析
- 反向代理后请返回Github/Gitee登录接口修改主页地址和回调地址
到这里面板就算完全搭好了,下面开始部署探针
2.Agent探针端部署
我们到面板端后台新增服务器,新增完后复制密钥(AgentKey)备用
2-1.在Windows上部署
我们这里使用 nssm 部署探针(跟frp一样,nssm太好用了)
我们在被控机器上面下载 nssm 和 agent探针端
(进不去nssm官网和Github的可以使用本站提供的网盘镜像 nssm , agent探针端)
一般下载 nezha-agent_windows_amd64.zip
的就行
nssm解压后在win64/32找到 nssm.exe 放在任意目录里,将agent探针端也解压放到此目录,打开 cmd 后cd到此目录后执行以下命令
nssm install nezha
会弹出个窗口
启动命令模板:
-s {面板端IP}:{Agent端口} -p {Agent密钥}
启动命令示例:
-s 127.0.0.1:5555 -p dPtIT2lhaRNuoSbM4u
点击 Install service
后我们到任务管理器找到我们创建的服务,开启即可
过一会就可以看到服务器上线了,第一次初始化会较慢
(这个过一会有可能是1-10min,也可能是1-2h)
2-2.在Linux上部署
脚本安装
Linux就比Windows简单多了,不需要下第三方的程序,直接使用官方的安装脚本即可
可以使用面板后台的一键安装,但是那个是Github,国内连接较为困难
Github源(境外推荐):
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh install_agent
Gitee源(大陆推荐):
curl -L https://gitee.com/naibahq/nezha/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh install_agent
- 输入面板端IP或者域名,不能套CDN
- 输入面板Agent 接入的 RPC 端口,默认为5555
- 输入 Agent 密钥
- SSL/TLS加密可跳过
过一会就可以看到服务器上线了,第一次初始化会较慢
(这个过一会有可能是1-10min,也可能是1-2h)
手动安装
手动安装会麻烦点,一般给纯IPv6机器或者是网络复杂环境使用
首先先确定自己服务器的架构,一般都是x86(amd64)架构
x86架构,应下载 nezha-agent_linux_amd64.zip
arm架构,应下载 nezha-agent_linux_arm64.zip
下载后解压上传并cd到任意目录下使用启动:
chmod +x nezha-agent
./nezha-agent -s {面板端IP}:{面板端Agent端口} -p {面板端Agent密钥}
为Agent创建守护进程:
nano /etc/systemd/system/nezha-agent.service
里面填入
[Unit]
Description=Nezha Agent
After=syslog.target
[Service]
Type=simple
User=root
Group=root
ExecStart={nezha-agent的位置} -s {面板端IP}:{面板端Agent端口} -p {面板端Agent密钥}
Restart=always
[Install]
WantedBy=multi-user.target
启动并设置开机自启
systemctl daemon-reload
systemctl enable nezha-agent
systemctl start nezha-agent
现在基本上就没问题了,返回面板查看即可
2-3.在Nas系统上部署
由于我这里只有群晖,就拿群晖举例
下载Agent探针端(网盘镜像Agent探针端),这时候得看清自己nas的CPU架构
比如我的DS920+是英特尔J4125 为x86架构,应下载 nezha-agent_linux_amd64.zip
再比如我DS218Play是Realtek RTD1296 为arm架构,应下载 nezha-agent_linux_arm64.zip
(夹带个私货,不要买arm的nas!否则你会变得不幸!)
如果分不清自己的CPU是什么架构,可以百度,也可以GPT
找到对应架构下载,解压后把 nezha-agent
放在任意一个文件夹内,右键属性查看位置后保存备用
在控制面板开启终端机(SSH),使用任意工具进行连接
(什么,你没有SSH工具?那直接cmd输入 ssh <nas管理员账号>@<nasIP地址>
回车)
连接后输入 sudo -i
进入超级管理员(root)模式
这时它会让你输密码,不要担心,这就是你登录nas的密码,再输一遍就行
进入后我们直接输入下方命令创建系统服务
vim /usr/lib/systemd/system/nezha-agent.service
然后接着在 nezha-agent.service
里输入(位置就是刚才右键属性查看的那个)
模板:
[Unit]
Description=Nezha Agent
After=syslog.target
[Service]
Type=simple
User=root
Group=root
ExecStart={nezha-agent的位置} -s {面板端IP}:{面板端Agent端口} -p {面板端Agent密钥}
Restart=always
[Install]
WantedBy=multi-user.target
示例:
[Unit]
Description=Nezha Agent
After=syslog.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/volume1/web/nezha/nezha-agent -s 10.0.1.111:5555 -p JmOaltUX6HaVQ4QUoB
Restart=always
[Install]
WantedBy=multi-user.target
按照自己的实际情况填写后按esc输入 :wq
保存并退出
然后输入以下命令即可启动Agent
systemctl daemon-reload
systemctl enable nezha-agent
systemctl start nezha-agent
查看状态(如果显示绿色的active (running)即启动成功)
systemctl status nezha-agent
到这里就算是全部部署完了,应该还算简单(应该吧)
像美化界面什么的可以参考别的文章,我这里就不说了
部分内容引用自 nezha探针官方文档 Mitsea Blog
本文作者:薄荷の尾巴
本文链接:https://blog.hoshiroko.com/archives/feda2c0e1048
版权声明:本文章采用 BY-NC-SA 许可协议。转载请注明出处并使用相同协议!