背景介绍
实时掌握服务器的运行状态是一项基本且重要的工作,服务器监控探针(Agent)就是为解决服务器监控这个需求而生的工具。
探针介绍
探针是一个轻量级的程序,部署在需要监控的服务器上,持续收集服务器的各项指标数据,将数据传输到监控服务端进行汇总和展示。探针(Agent/Probe)可以理解为一个”健康检查员”,具有定时采集,主动上报等特点。
ServerStatus-Hotaru架构解析
ServerStatus-Hotaru 是一个基于 client/server 架构的开源服务器监控解决方案,通过简洁优雅的界面展示多台服务器的实时状态。系统分为两个主要组件:服务端(Server)和客户端(Client)。服务端负责接收并存储客户端上报的监控数据,提供Web界面展示监控数据;客户端作为探针部署在被监控服务器上,定期采集服务器状态信息,通过网络将数据上报到服务端。
部署流程(以debian为例)
- 下载ServerStatus-Hotaru
# 安装必要工具
apt update
apt install wget git curl -y
# 下载一键安装脚本
wget https://raw.githubusercontent.com/cokemine/ServerStatus-Hotaru/master/status.sh
# 给脚本添加执行权限
chmod +x status.sh
- 安装服务端
bash status.sh s
这里选Y选择自动配置在线监控网站

这里建议使用本机IP,选择域名的话就只能使用域名访问,使用IP:PORT访问页面会一片空白

- 服务端配置文件地址:/usr/local/ServerStatus/server/config.json,其中的”servers”即为客户端配置(可配置多个)
{
"username": "Name",
"password": "Password",
"name": "Your Servername",
"type": "KVM",
"host": "None",
"location": "洛杉矶",
"disabled": false,
"region": "US"
},
- 服务端有两个默认端口
- 35601为数据上报端口,用来接收客户端上报的数据(所以不要一直在浏览器请求35601啦
- 8888为web界面端口,用来向用户展示监控数据
- 安装客户端
bash status.sh c
部署效果如图:

其他补充
最近发现了一个更好用的探针:beszel,不仅能实时监控服务器状态还能查看服务器和docker的历史统计,很惊艳,贴一张官方的图给佬们看看。
