雨林的Blog

ServerStatus中文版:服务器在线监控,云探针部署

ServerStatus中文版:

更新说明:初始月份流量只能从安装算起,次月准确。 vnstat更是直接写了SQLite! 然而探针,物如其名,轻才重要!

目录介绍:

Docker自动部署:

【服务端】:

mkdir serverstatus && cd serverstatus && wget https://raw.githubusercontent.com/cppla/ServerStatus/master/autodeploy/config.json  #配置文件
docker run -d --restart=always --name=serverstatus -v ~/serverstatus/config.json:/ServerStatus/server/config.json -p 10056:80 -p 35601:35601 cppla/serverstatus

监控网站地址是IP:10056 80端口被占用,该用10056端口

3.服务端配置文件config.json修改//(等客户端部署完毕后再来修改)

此步骤以后都可以执行,用于添加或修改节点显示列表。

首先我们输入:

docker ps   #获取正在运行的镜像
root@debian:~# docker ps
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                                                                                            NAMES
8d40b38ddb67        cppla/serverstatus:latest   "/docker-entrypoint.…"   24 hours ago        Up 24 hours         0.0.0.0:35601->35601/tcp, :::35601->35601/tcp, 0.0.0.0:10056->80/tcp, :::10056->80/tcp           serverstatus

注意每个人运行后的容器ID是不一样的,然后输入自己容器id的前4位进入该容器,如下:

docker stop 8d40b38ddb67    #注意替换8d40b38ddb67为自己显示的容器id

停止后,我们在本地继续修改config.json,需要先进入cd /serverstatus

nano config.json

修改格式如下:

username要根据不同服务器设置不同名称,password可设置一样

修改完按Ctrl+X退出,Y 回车保存退出

完成后,启动刚刚停止的容器即可。

docker start 8d40b38ddb67     # 注意22fe为机器上的容器ID

然后刷新网页就可以看到效果了,非常方便。

【客户端】配置教程

客户端脚本为:

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 &

注意修改服务器、用户名及密码这三个参数。

示例:

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=111.222.333.444 USER=s04 >/dev/null 2>&1 &

参数说明:

参数设置错误,通过ps -ef | grep client-linux.py 查找运行的id,杀掉kill -9 id重新运行客户端脚本

手动安装教程:

【克隆代码】:

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

【服务端配置】:

一、生成服务端程序

cd ServerStatus/server
make
./sergate

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

二、修改配置文件
修改config.json文件,注意username, password的值需要和客户端对应一致

{"servers":
    [
        {
            "username": "s01",
            "name": "vps-1",
            "type": "kvm",
            "host": "chengdu",
            "location": "CN",
            "password": "USER_DEFAULT_PASSWORD",
            "monthstart": 1
        },
    ]
}       

三、拷贝ServerStatus/status到你的网站目录
例如:

sudo cp -r ServerStatus/web/* /home/wwwroot/default

/home/wwwroot/default是你的网站根目录

四、运行服务端:

web-dir参数为上一步设置的网站根目录,务必修改成自己网站的路径

./sergate --config=config.json --web-dir=/home/wwwroot/default   

如果启动服务器端没问题,可以使用 nohup 后台启动

nohup ./sergate --config=config.json --web-dir=/home/wwwroot/default &> /dev/null &

【客户端配置】:
客户端有两个版本,client-linux为普通linux,client-psutil为跨平台版,普通版不成功,换成跨平台版即可。

一、client-linux版配置:
1、vim client-linux.py, 修改SERVER地址,username帐号, password密码

SERVER = "127.0.0.1" #填写服务端的IP地址
PORT = 35601 #填写为服务端的监听端口(注意服务器和被监控的客户端防火墙都要同时开启相应端口)
USER = "USER" #改成唯一的客户端用户名,服务器根据这个字段判断是哪台服务器
PASSWORD = "USER_PASSWORD" #修改你的密码,和其他客户端可以是相同的

2、python3 client-linux.py 运行即可。

二、client-psutil版配置:
1、安装psutil跨平台依赖库

### for Centos:
sudo yum -y install epel-release
sudo yum -y install python3-pip
sudo yum clean all
sudo yum -y install gcc
sudo yum -y install python3-devel
sudo pip3 install psutil

### for Ubuntu/Debian:
sudo apt -y install python3-pip
sudo pip3 install psutil

### for Windows:
地址:https://pypi.org/project/psutil/    
下载psutil for windows, 安装即可

2、vim client-psutil.py, 修改SERVER地址,username帐号, password密码

SERVER = " "   #服务端IP地址
PORT = 35601   #服务端监听端口
USER = " "     #用户名与服务端要一致
PASSWORD = " " #密码与服务端要一致

3、python3 client-psutil.py 运行即可。

打开云探针页面,就可以正常的监控。接下来把服务器和客户端脚本自行加入开机启动,或者进程守护,或以后台方式运行即可!例如: nohup python3 client-linux.py &

https://github.com/cppla/ServerStatus

https://baiyue.one/archives/393.html

https://cnboy.org/archives/2143

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »