Featured image of post 部署一个轻量高颜值的服务器监控探针 ServerStatus

部署一个轻量高颜值的服务器监控探针 ServerStatus

# 介绍

cokemine/ServerStatus-Hotaru 是一个基于 PHP 和 Python 编写的服务器状态监控工具,可在 Web 界面上展示服务器的 CPU、内存、磁盘、网络等状态信息,还支持对服务器的进程、端口等信息进行监控。它可以实时更新服务器的状态信息,方便系统管理员进行监控和管理。

我稍微修改了下 ServerStatus-Hotaru 的主题,去掉了原生主题的 Banner ,让卡片显示 CPU 型号和内存硬盘大小,如下图。

# 安装服务端

wget https://raw.githubusercontent.com/cokemine/ServerStatus-Hotaru/master/status.sh
# wget https://cokemine.coding.net/p/hotarunet/d/ServerStatus-Hotaru/git/raw/master/status.sh 若服务器位于中国大陆建议选择 Coding.net 仓库
bash status.sh s

此安装脚本会安装 Caddy 来作为 Web 服务器,如果需要用 Nginx ,把 /usr/local/ServerStatus/web 目录设置为网站根目录。

# 配置 ServerStatus

修改配置文件 /usr/local/ServerStatus/server/config.json ,填入你的服务器节点信息。

CPU 型号用 cat /proc/cpuinfo 来查看。region 用于显示卡片的国旗,国家代码参考 ISO 3166-1 alpha-2

  {
   "username": "用户名",
   "password": "密码",
   "name": "节点名字",
   "type": "操作系统",
   "host": "处理器型号",
   "location": "服务器位置",
   "disabled": false,
   "region": "US"
  },

# 安装客户端

  • Linux 发行版
wget https://raw.githubusercontent.com/cokemine/ServerStatus-Hotaru/master/status.sh
# wget https://cokemine.coding.net/p/hotarunet/d/ServerStatus-Hotaru/git/raw/master/status.sh 若服务器位于中国大陆建议选择 Coding.net 仓库
bash status.sh c
  • OpenWrt 路由器

在这种设备中建议使用 Go 客户端,在 ServerStatus-goclient/releases 下载对应的二进制客户端并解压到 /root 目录,SSH 连接到路由器,执行下面的命令。

如果不需要监控 WAN 口流量可以不用安装 vnstat 。

opkg update
opkg install nohup
opkg install vnstat
chmod +x status-client
nohup ./status-client -dsn="username:password@yourip:35601" -vnstat &

Go 客户端可能无法正确识别磁盘容量,如果有需求得安装 Python 客户端 ,安装完 Python 和依赖要占用几十兆空间,个人不建议。

  • 群晖 NAS

ServerStatus-goclient/releases 下载对应的二进制客户端。

解压并上传到你的群晖 NAS 的任意目录。在群晖的控制面板设置,计划任务里新增 [ 触发的任务 ], [ 用户定义的脚本 ] ,事件选择 [ 开机 ] ,运行命令填下面的这行,路径和用户名密码 IP 替换成自己的。

/volume1/docker/serverstatus/status-client -dsn="username:password@yourip:35601"

再点操作栏的 运行 ,这样客户端就在后台运行并开机自启了。

  • Windows

ServerStatus-goclient/releases 下载对应的二进制客户端并解压到任意目录,通过 Powershell 运行以下命令后台运行,路径和用户名密码 IP 记得替换。

Start-Process -FilePath "C:\Users\Umi\Desktop\status-client.exe" -ArgumentList '-dsn="username:password@yourip:35601"' -WindowStyle Hidden -Verb RunAs

如果需要开机启动把这段命令做成批处理放到你的开机菜单目录就可以了。

C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

# ServerStatus 主题修改版

我的探针: ServerStatus ,在 Onedrive 下载 我的主题 ,替换掉 /usr/local/ServerStatus/web 目录。

最后更新于 Apr 21, 2023 20:14 UTC
使用 Hugo 构建
主题 StackJimmy 设计