哪吒探针 - 服务器状态监控面板搭建教程 Linux与Windows部署

长风化羽 2023-1-29

1288 0

LOC论坛大佬写了一个哪吒探针,一直没时间部署,直到最近有空尝试了一下,感觉挺不错的

不过大佬并没有写一个详细的部署教程,我这里就从头到尾记录一下,包括linux部署面板、添加服务器、配置SSL、套CDN,以及Windouw客户端部署。

项目地址:https://github.com/naiba/nezha

准备工作

域名准备

准备2个域名即可,第一个是面板的域名(可以套CDN),第二个是绑定到服务连接的域名(不能套CCD),因为如果直接用IP的话,迁移面板后会非常麻烦!

然后将准备的域名解析到服务器上

github设置

没有就先去注册下:github.com

浏览器中打开https://api.github.com/users/你的GitHub用户名

返回的是Json的信息,第二行id对应的值就是你的ID,纯数字的。保存起来,如下图:

然后创建一个OAuth Apps

打开:https://github.com/settings/developers,然后点击New OAuth App按钮

按照下面填写然后保存:

http://你的域名:8008 
http://你的域名:8008/oauth2/callback

然后进入apps

保存Client ID然后点击Generate a new client secret按钮创建Client secrets并保存下来。

部署面板

防火墙设置

打开8008端口和5555端口,如果你改为其他的,防火墙放行相应的端口

使用一键脚本搭建面板

官方说明中提供了一键脚本

curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh 
./nezha.sh

如果执行上面不行证明github在你服务器访问不到,执行下面的即可

# 国内机器 
curl -L https://raw.staticdn.net/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh 
./nezha.sh

 

输入1进行面板的安装,然后将刚刚上面记录下来的IDClient IDClient secrets输入进去即可,如下图:

访问http://域名:8008查看能访问即可,暂时不登录

宝塔、SSL配置

其他环境修改nginx配置文件即可,和下面一样。

配置:

#PROXY-START/
location /
{
proxy_pass http://127.0.0.1:8008;
proxy_set_header Host $host;
}
location /ws
{
proxy_pass http://127.0.0.1:8008;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
}
#PROXY-END/

宝塔的话按下面做,先创建一个站点,进行反代

然后

配置复制进去覆盖所有内容保存即可。SSL和普通站点一样配置就行。打开你的域名看看能不能访问到面板,可以的话进行下一步。

然后打开https://github.com/settings/developers找到刚刚创建的apps

把配置域名的端口删掉就行。

然后面板配置完了就可以登录了。

Linux客户端部署

登录你的面板创建机器然后得到id和密钥

然后去需要安装客户端的服务器执行脚本

curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh
./nezha.sh

# 国内机器
curl -L https://raw.staticdn.net/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh
./nezha.sh

 

选择8然后输入你服务器ip或者绑定的域名,端口就默认5555就行,有更改的话自行更换下。然后输入刚刚面板拿到id和密钥即可

然后就完成了。

Windows 客户端部署

Windows 下只需要通过 cmd 传递参数启动作者编译完的 exe 文件,可以说是很方便了,但是跟 Frp 一样,总有人不小心关闭了 CMD 窗口,所以这里介绍一种比较好用的启动方式,把 exe 变成系统服务启动。

下载好两个软件:

1、哪吒探针

2、nssm

安装配置

1. 设置环境变量
下载软件后,解压到任意位置,然后按 win+R 打开运行窗口,输入 sysdm.cpl 打开系统属性–高级–环境变量–系统变量–Path–在最后把刚才下载解压的nssm目录加到最后(踩坑提示:根据你的win版本,选择到最后的目录,即win64 或 win32),注意: 和前面变量之间用半角; 分开

刀云网2. 设置 NSSM
管理员启动 CMD,输入

cd C:/nssm/win64   (#替换为你的NSSM解压目录中对应的版本目录)
nssm install <servername>
如:nssm install nezha

弹出 UI,设置如下:

启动参数格式为:

-s {Serverip}:{Port} -p {AgentKey} -d

自己对应修改,填写完毕后, 点击 install servce
# 参数项来源:

按照图中配置,参数项为

-s {你自己的IP}:{默认是5555} -p 52a1c9abbe -d

3. 启动服务
此时退回到 CMD 界面,nssm start nezha, 然后按 win+R 打开运行窗口,输入 services.msc,查看是否有叫 nezha 的服务,然后查看启动情况,如果失败了,请查看一下配置是否出错
4. 以下列出一些 nssm 命令:

1. 安装服务命令
nssm install <servicename>
nssm install <servicename> <program>
nssm install <servicename> <program> [<arguments>]
2. 删除服务
nssm remove
nssm remove <servicename>
nssm remove <servicename> confirm
3. 启动、停止服务
nssm start <servicename>
nssm stop <servicename>
nssm restart <servicename>
4. 查询服务状态
nssm status <servicename>
5. 服务控制命令
nssm pause <servicename>
nssm continue <servicename>
nssm rotate <servicename>

由于 GO 不再支持低版本 Windows 系统,哪吒探针在低版本 Windows 上是不能启动的。如下图:

常见问题

1. 国内服务器出现curl: (7) Failed to connect to raw.githubusercontent.com

echo 199.232.68.133 raw.githubusercontent.com >> /etc/hosts

2. 修改服务器备注后变成”离线”久不恢复

在安装客户端(被监控)的服务器上执行systemctl restart nezha-agent重启程序

启动nezha-agent还是一直显示离线

检查配置有没有写对cat /etc/systemd/system/nezha-agent.service | grep ExecStart

 

文章出处:CNBoy 四海部落,刀云转载
签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回