登录后台

页面导航

本文编写于 852 天前,最后修改于 840 天前,其中某些信息可能已经过时。

演示:https://server.uquq.cn/

一、安装服务端

1、打开SSH clone服务端

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

2、生成服务端程序

cd ServerStatus/server
make
./sergate

没有错误提示,OK,ctrl+c关闭;如果有错误提示,检查35601是否被占用
这个服务端程序就在服务器根目录root下的ServerStatus

3、主程序文件设置

编辑修改/ServerStatus/server/config.json文件,这里面s01、s02就是你的服务器,一个个往下写,注意name和password要每台机不一样,并且填写的值保存好,后面配置客户端时,需要和客户端一一对应。其他项目都不重要,可以不改。
这里特别要注意,每两台机之间有个<},>,这个,(逗号)千万不要复制漏了,但是最后一台机后面不要逗号了。这个细节会造成报错。

{"servers":
    [
        {
            "username": "s01",
            "name": "腾讯云上海",
            "type": "kvm",
            "host": "host1",
            "location": "cn",
            "password": "USER_DEFAULT_PASSWORD",
            "monthstart": 1
        },
        {
            "username": "s02",
            "name": "腾讯云广州",
            "type": "kvm",
            "host": "host2",
            "location": "cn",
            "password": "USER_DEFAULT_PASSWORD",
            "monthstart": 1
        }
    ]
}

4、搭建网站:
自行搭建一个网站并绑定你要作为探针面板网站的域名(可以用宝塔搭建),这里建议使用两个域名,一个作为打开网站地址,套上CDN可以隐藏真实IP,另一个域名作为服务端的实际地址(不开CDN),以便所有客户端使用域名连接服务端,这样就算服务端换了机子或者IP,只要重新把这个域名指向新的服务端IP就可以了,其他客户端就不需要一个个改了。

搭建好后,回到第2步的主程序目录ServerStatus/status/web,复制里面所有文件到你的网站目录,后面替换为你的网站目录路径

sudo cp -r ServerStatus/web/* /www/wwwroot/你的网站

当然用宝塔复制过去是一样的。debian去掉sudo。

5、运行服务端:

cd /root/ServerStatus/server    (一定要进入主程序目录)
nohup ./sergate --config=config.json --web-dir=/www/wwwroot/你的网站

至此,你的探针网址就可以打开了!

二、安装客户端

1、将主程序目录/ServerStatus/clients/里面的client-linux.py文件,上传到客户端机子任一目录,就放root里面吧,然后编辑这个文件配置:
SERVER=之前说的没有CDN的那个域名(当然你非要用IP也行)
name和password就是之前让保存好的第一、3步的服务端主程序那里填写的数值,需要和服务端一一对应,如下:

SERVER = "127.0.0.1"
USER = "s01"
PORT = 35601
PASSWORD = "USER_DEFAULT_PASSWORD"
INTERVAL = 1
PROBEPORT = 80
PROBE_PROTOCOL_PREFER = "ipv4"  # ipv4, ipv6
PING_PACKET_HISTORY_LEN = 100
CU = "cu.tz.cloudcpp.com"
CT = "ct.tz.cloudcpp.com"
CM = "cm.tz.cloudcpp.com"
......

2、运行客户端:

 cd      (回到根目录root)
nohup python client-linux.py &

这里如果提示错误:failed to run command 'python': No such file or directory
试试python3,用这个启动客户端:

nohup python3 client-linux.py &

三、windows或其他机子客户端

客户端其实有两个版本,都在主程序目录/ServerStatus/clients/里面。client-linux为普通linux版,client-psutil为跨平台版,普通版不成功或是win机,换成跨平台版即可。
1、访问Python官方网站点击Downloads->Windows从出现的下载页获取Python2.7.X。请自行选择下载32位或64位版本。有网帖表示Python3可能不行,本人未作测试。

2、双击下载的.msi文件运行安装程序,安照提示安装,在功能自定义页面的 Add pytnon.exe to Path 处选择 Will installed on local hard drive ,点击Next安装,若出现UAC提醒请允许。安装完成后点击Finish退出安装程序。

3、按 Windows徽标键+R键 打开 "运行" 对话框,输入 cmd 按 Enter键 打开命令提示符。在命令提示符中输入以下命令安装psutil跨平台软件包:

pip install psutil

这一步如果是安装的python2.7,可能提示pip不是有效的内部或外部命令,那么先进入python2.7目录:

cd C:\Python27\Scripts

再运行上面命令即可。

也有可能提示版本错误,那就先升级下:

python -m pip install --upgrade pip

然后再执行一遍上面的命令即可。
此窗口要关闭。

4、将主程序/ServerStatus/clients/里面的client-psutil.py文件放到一个合适的目录。比如我在C盘下创建了一个文件夹 ServerStatus ,将其存在此。在此文件上右击,点击Edit with IDLE(亦可使用其他编辑器打开)。跟第二、1步中一样的方法填写配置信息,保存并退出编辑器。

5、双击client-psutil.py文件运行,检查网站监控页是否正常显示,至此windows客户端已配置成功,然后关闭窗口停止。

6、设置开机自启:创建一个ServerStatusClient.bat文件,填写运行client-psutil.py的代码,我的文件在C:\ServerStatus\下,参考如下:

python C:\ServerStatus\client-psutil.py

再点击开始->所有程序->启动->右击->打开,找到这个bat文件即可。

Win2012直接把client-psutil.py文件或他的快捷方式,放在这里即可:

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

注意该操作可能被安全软件拦截,请在安全软件中设置例外。

此方法配置的客户端在启动时会一直显示一个终端窗口,关闭窗口后客户端即停止工作。强迫症患者慎用!如果希望没有窗口显示,请自行研究解决。

GITHUB项目地址

https://github.com/cppla/ServerStatus