人们不是嘲笑你的梦想
他们嘲笑的是你的实力

一款简单的服务器监控面板程序

前言

今天要给大家介绍的是这款叫ServerStatus的云监控软件,也可以称它是个云探针吧。顾名思义它可以把你的多台VPS、服务器等系统的基本信息整合显示在一个公共的HTML页面上,这些基本信息包括但不限于:系统在线时间、当前负载情况、实时网络速率、服务器至开机使用的总流量、CPU实时使用率、内存实时使用率、硬盘实时使用率。

四四搭建这个是因为做套路云海外站的代购,有的客户表示自己不会看流量情况,那么我去阿里云后台一个个的去看太麻烦了,所以就找到了这个。当然了,我相信还是机场大佬们用的比较多,毕竟那么多节点,时不时有个被墙的,没有这么个东西还真不好照顾。

Docker

服务端

wget https://raw.githubusercontent.com/cppla/ServerStatus/master/autodeploy/config.json
docker run -d --restart=always --name=serverstatus -v {$path}/config.json:/ServerStatus/server/config.json -p {$port}:80 -p {$port}:35601 cppla/serverstatus

eg:
docker run -d --restart=always --name=serverstatus -v ~/config.json:/ServerStatus/server/config.json -p 80:80 -p 35601:35601 cppla/serverstatus

客户端

注意这里的SERVER是服务端的IP,被监控端的IP会自动抓取,nat机也不用特殊配置

wget --no-check-certificate -qO client-linux.py 'https://raw.githubusercontent.com/cppla/ServerStatus/master/clients/client-linux.py' && nohup python client-linux.py SERVER={$SERVER} USER={$USER} PASSWORD={$PASSWORD} >/dev/null 2>&1 &

eg:
wget --no-check-certificate -qO client-linux.py 'https://raw.githubusercontent.com/cppla/ServerStatus/master/clients/client-linux.py' && nohup python client-linux.py SERVER=45.79.67.132 USER=s04  >/dev/null 2>&1 &

安装程序

搭建lnmp环境

首先环境肯定需要的,至于如何搭建可以翻一下我之前的帖子。不管是使用yum搭建还是宝塔直接生成都有。然后我们新建一个空目录的网站。

下载

接着我们来到/root目录下下载ServerStatus:

git clone https://github.com/cppla/ServerStatus.git

安装

cd ServerStatus/server
make

测试运行

./sergate

安装和测试应该会有下图的过程和结果,说明机器运行正常,安装没问题

如果没错误提示,OK,ctrl+c关闭;如果有错误提示,检查35601端口是否被占用

服务端配置

vi config.json

看到如下内容:

{"servers":
    [
        {
            "username": "s01",
            "name": "Mainserver 1",
            "type": "Dedicated Server",
            "host": "GenericServerHost123",
            "location": "Austria",
            "password": "some-hard-to-guess-copy-paste-password"
        },
    ]
}  

1、修改username、password,并记住这些信息,待会儿的客户端连接就是用这个账号和密码。
2、name是你的这台服务器名字,用于显示在HTML页面上,可按需修改。
3、type是你的这台机器类型,VPS的话就填写VPS、独立服务器填写Dedicated Server,也可以自行按需修改。
4、host是你这台机器的hostname名字,可按需修改,没有硬性要求一定要和系统的hostname对应。
5、location是你这台机器的物理位置,比如你的机器在日本,这里就填写Japan即可。

拷贝ServerStatus/status到你的网站目录

cd /root
cp -r ServerStatus/web/* /www/wwwroot/default

这里/www/wwwroot/default代表你给网站创建的新目录,如果你是宝塔就是/www/wwwroot/你的域名,如果是按我的lnmp搭建的就是/usr/share/你的域名。后面不再重复叙述。

运行服务端

首先进入到server目录

cd ServerStatus/server

安装screen

yum -y install screen

将sergate放到后台运行

screen -dmS web ./sergate --config=config.json --web-dir=/www/wwwroot/default

到这里,服务端就配置完毕了。接下来就该配置客户端了。

客户端配置

首先回到/root目录

cd /root

下载客户端脚本

wget -N --no-check-certificate https://raw.githubusercontent.com/dovela/ServerStatus/master/ServerStatus1Click.sh

添加脚本运行权限

chmod +x ServerStatus1Click.sh

运行脚本

./ServerStatus1Click.sh

完成客户端配置

首先我们输入5按回车安装依赖,中间过程中输入y按回车即可。之后运行脚本输入1按回车,ip写服务端的,账号、密码等要和之前服务端的相应的部分对应上。

完成

现在我们打开网站的域名,就可以看到我们部署的服务器已经正常显示了。

添加新的服务器

虽然刚才我们已经完成了ServerStatus的搭建。但是大家可能会有新增服务器的时候,这时候我们需要修改一下服务端的配置。

首先编辑服务端配置文件

vi /root/你的网站域名/server/config.json

我们在配置文件里添加一个新的服务器的信息,填写方法和以前一样

重启下sergate

我们先查看一下sergate的运行的进程id:

ps -ef | grep web

关闭进程

kill -9 5925
kill -9 5926

最后重新运行sergate即可:

需要注意的是这里同样要在server目录下运行

screen -dmS web ./sergate --config=config.json --web-dir=/www/wwwroot/default

配置客户端

像之前一样给这个新添加的服务器配置一下就行了

全部完成

至此,这篇教程应该就全部结束了。

未经允许不得转载:四四的军火库 » 一款简单的服务器监控面板程序