{alert type=”info”}
之前给大家介绍过一个简单的服务器监控。uptime-kuma
今天给各位带来一个酷炫的多服务器探针和多服务器监控。ServerStatus
{/alert}
**作者的开源项目地址如下:https://github.com/cppla/ServerStatus
作者的项目体验地址如下 https://tz.cloudcpp.com/ 页面看着不错,所以我们也要整一个。接下来就是搭建的教程**
因为是探针,要监控和显示所有的机器数据。所以安装分为服务端和客户端的安装。
-
第一步我们先安装服务端。使用docker启动服务就行。如果你要映射的80端口被占用了,那么换一个没被占用的就可以了。 我们先使用wget获取配置,再docker run启动
wget --no-check-certificate -qO ~/serverstatus-config.json https://raw.githubusercontent.com/cppla/ServerStatus/master/server/config.json && mkdir ~/serverstatus-monthtraffic docker run -d --restart=always --name=serverstatus -v ~/serverstatus-config.json:/ServerStatus/server/config.json -v ~/serverstatus-monthtraffic:/usr/share/nginx/html/json -p 80:80 -p 35601:35601 cppla/serverstatus:latest
- 启动好容器之后,请确保你的服务器开放了对应的端口。此时就可以在前台访问了,我映射的端口是33451(-p 33451:80 -p 35601:35601)。所以当我访问http://IP:33451/就发现已经OK了。 35601是通信协议的端口,也请确保放开。
- 服务已经启动,接下来,我们就要部署客户端。其实也很简单,在你想被监控的服务器上执行一条命令即可。
- 这里的客户端我会以我的1台甲骨文小机为例子。
-
ssh连接服务器。执行命令。
wget --no-check-certificate -qO client-linux.py 'https://raw.githubusercontent.com/cppla/ServerStatus/master/clients/client-linux.py' && nohup python3 client-linux.py SERVER=X.X.X.X USER=s04 >/dev/null 2>&1 &
- 注意要把server=X.X.X.X换成部署探针服务的ip。user怎么来呢。从服务端的配置文件里找 或者你新增一个即可。 在我们服务端执行命令时候,他就会在家目录里生成serverstatus-config.json 文件。我们打开这个文件. 可以看到对应的配置信息,有username,location,password等。我们按照需求更改或者使用默认的即可。
下面是我的示例,我直接使用s04配置了。如果你的节点较多,那么按照格式新增一个配置就行。 - 可以从图上方便直观的看到你的服务器状态,其中包括:位置、在线时间、负载、网络情况 、流量、内存、cpu、磁盘等
- 服务端的配置文件里还有这样的配置信息,你可以按需来配置自定义告警
"watchdog": [
{
"name": "cpu high warning",
"rule": "cpu>90&load_1>3",
"interval": 600,
"callback": "https://yourSMSurl"
},
- 感兴趣的可以去自行探索一下报警功能~
如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。