作者:Mintimate
博客:https://www.mintimate.cn Mintimate's Blog,只为与你分享
云探针是什么呢?云探针,其实就是用TCP,对服务器进行一次握手连接后,得到服务器的运行状态。
本次的云探针,使用哪吒面板,可以实现对自己(多台)服务器:
推荐多服务器用户搭建,为了提升安全性,最好再准备
本次教程,使用的方案:域名+CDN+服务器。
双十一买了那么多台服务器,终于可以批量监控了嗷~
其实腾讯云的控制台,信息很全,在控制台也可以看到当前的CPU和带宽等,一次看一台:
但是总是不直观,比如,我这样的个人开发者,有个几台服务器,就需要一个一个点开查看:
这个时候,我们的探针搭建好,就可以直观地查看了:
这个时候是不是看到我两台服务器CPU爆满呢?
主要是,我在编译编译Android源码,所以CPU跑慢,这样探针,也方便我查看是否编译完成。
在线登录功能,其实就是远程SSH。我知道有很多SSH的软件,比如:腾讯云的在线一键登录、Windows的Powershell和Linux/macOS的Terminal等等。
但是哪吒面板也提供了一键SSH登录,效果和腾讯云的在线一键登录类似:
登录效果:
当然,这样的登录,是免密的,使用前提:
话不多说,下面我们就开始教程吧。
首先是前置条件,基础要求简单:
提升体验:
最近双十一,强烈推荐新用户服务器购买:https://curl.mintimate.cn/1jccDM8rK1S
这里假设我准备了域名:
ops.mintimate.cn
:面板对外域名(可使用CDN)nezha.mintimate.cn
:探针连接域名(不可使用CDN)为什么要这样呢?画了一个简单的图解:
也就是:
考虑到用CDN的小伙伴,没有服务器人那么多,这里介绍如何使用腾讯云的CDN解析。首先是登录腾讯云的CDN后台:https://console.cloud.tencent.com/cdn
之后,在这里添加域名:
记得配置Https,增加安全性:
首先我们需要申请一个Oauth,之后才可以正式搭建面板,该服务器作为面板所在服务器并提供探针。
申请Oauth,你可以使用GitHub,也可以使用Gitee的,二者取其一即可:
本文介绍Gitee方法,GitHub其实也差不多。
权限默认即可:
其中:
/oauth2/callback
创建应用后,得到:
这里我们使用SSH远程连接我们的服务器:
这里我服务器使用了oh-my-zsh,如果你也想使用,文章:Linux/Mac如何配置ZSH并使用Oh-my-zsh?让你的终端更加实用、美观
根据官网项目提示,我们可以使用一键安装脚本进行安装:
curl -L https://cdn.jsdelivr.net/gh/naiba/nezha@master/script/install.sh -o nezha.sh && chmod +x nezha.sh
CN=true sudo ./nezha.sh
这里注意,我们最好在一个空文件夹内运行脚本,方便后续调出脚本控制界面,比如:
之后,会询问是否安装,我们选择1
:
选择后,输入Gitee(如果前文你使用GitHub,就直接回车):
最后,输入上文生成的客户端ID和密钥即可:
到此,面板就安装完成了。其实,就可以放行8008端口后,浏览器访问了。但是我们为了访问方便、安全,使用Nginx进行反向代理。
注意,管理员账号是这个:
Nginx反向代理过于简单,但是考虑很多用户使用宝塔面板,所以提供两个步骤演示:
如果你不知道如何安装Ngixn,参考:一篇文章、三种方法在Debian上轻松安装Nginx
这里解析的域名为上文提到的面板对外域名(可使用CDN),也就是上文假设的ops.mintimate.cn
。如果是腾讯云的CDN,可以到CDN控制台设置.
常规方法,新建一个conf,在conf内添加反向代理:
location /
{
proxy_pass http://127.0.0.1:8008;
proxy_set_header Host $host;
}
location ~ ^/(ws|terminal/.+)$
{
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;
}
其中:
location ~ ^/(ws|terminal/.+)$
{
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;
}
为远程terminal功能,需要Nginx安装正则规则,如果不需要远程登录功能,可以不写。
最后,保存重载Nginx配置即可。
宝塔方法也很简单,添加网站后,选择反向代理:
添加任意代理后,进行编辑:
粘贴内容:
location /
{
proxy_pass http://127.0.0.1:8008;
proxy_set_header Host $host;
}
location ~ ^/(ws|terminal/.+)$
{
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;
}
其中:
location ~ ^/(ws|terminal/.+)$
{
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;
}
为远程terminal功能,需要Nginx安装正则规则,如果不需要远程登录功能,可以不写。
这个时候,就可以浏览器访问了,如果开启CDN,可能会有缓存机制,记得清缓存。
现在,我们就可以创建探针了,首先是面板的初始化,然后是创建探针,最后是安放探针。
初始化面板,很简单。浏览器访问面板后,点击登录:
之后,会使用Gitee/GitHub进行验证:
验证后,我们的初始化就完成了。
之后,我们添加一个密钥,点击右上角的添加主机:
这个密钥很重要,也就是下文的Agent密钥,用于绑定服务器的。
之后,我们登录我们需要检测的服务器,运行上文的搭建面板-运行脚本内的一键脚本,也就是:
curl -L https://cdn.jsdelivr.net/gh/naiba/nezha@master/script/install.sh -o nezha.sh && chmod +x nezha.sh
CN=true sudo ./nezha.sh
当然,如果之前已经运行过此脚本,可以直接运行脚本:
这个时候,我们就不是选择安装面板端
了,而是选择8
(安装监控Agent):
其中:
nezha.mintimate.cn
:探针连接域名(不可使用CDN)」”这个时候,我们就可以在面板主页,看到我们的服务器了:
当然,你也可以添加更多的探针,但是需要注意:
/opt/nezha
文件夹中,迁移数据时打包这个文件夹,到新环境解压。然后执行一键脚本安装即可。到此,我们的云探针面板就安装完成了嗷。很多人关心性能问题,其实不管是面板还是探针,对服务器的内存消耗都极低。
其中,面板功能,可在64M内存服务器上运行,探针的话,就更不用说了嗷。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。