静看光阴荏苒
不管不顾不问不说也不念

适合机场大佬们监控自己节点状态的云探针(ServerStatus)

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

LALA以前搭建这个就是单纯的因为自己手上的小鸡多,多数小鸡也都是放在手上吃灰,也就养成了一个挂探针的习惯,一个个的看探针信息太麻烦了,所以就找到了这个ServerStatus。现如今挂探针也要提升逼格,所以这个ServerStatus是装逼首选。。。毫不夸张的说目前使用ServerStatus的人估计很多都是和我一样的人。。。不过我现在觉得这个ServerStatus也挺适合各位机场大佬用来监控自己的节点服务状态,把HTML页面展示给用户,不也是让自己的机场逼格瞬间就上去了嘛~

说了一堆废话,进入正题,现在跟着我魔鬼的步伐一起来配置ServerStatus并使用它!

首先ServerStatus分为服务端、客户端两大类。我们先来安装服务端,系统选择CentOS7,使用Xshell以root用户的身份登录到你的机器内。

服务端先配置一个LNMP环境,老看我博客的人肯定知道我现在要祭出宝塔面板了,对没错,你们自己安装一下宝塔然后装个LNMP环境新建一个站点即可。这里我就把这些过程省略掉,如果你不知道这些操作怎么弄,随便点一篇我博客里面的教程文章看2分钟估计就会了。。。

接着我们下载ServerStatus:

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

安装ServerStatus:

cd ServerStatus/server
make

测试运行:

./sergate

看到如图回显,没有任何错误提示的情况下,则说明你的机器运行是完全正常的:

键盘组合键Ctrl+C先退出程序。如果这里报错了,你就要检查下你机器的端口是否开放了35601。如果你不是特别清楚怎么检查,就直接执行下面的命令把CentOS7的防火墙关了吧:

systemctl stop firewalld.service

接着编辑配置文件:

vi config.json

看到如下代码:

"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的WEB目录拷贝到我们新建好的站点目录中:

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

注:/www/wwwroot/47.74.35.154换成你的站点根目录,如果你用的是宝塔,一般就是/www/wwwroot/你添加的站点域名。

现在来运行服务端,首先进入到server目录

cd ServerStatus/server

安装screen:

yum -y install screen

将sergate放到后台运行:

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

注:–web-dir=后面的路径和之前一样要改成你的站点根目录。

至此,服务端这块就配置完毕了。现在我们来配置客户端。

首先进入到clients目录下:

cd ..
cd clients

编辑client-linux.py文件:

vi client-linux.py

修改如图箭头所指部分的信息,这里的账号和密码就是之前我们配置config.json上面填写的,一定要对应。

因为我这台机器是用作服务端,所以我在上面配置客户端的话,就不用修改IP地址了,直接用本地IP就行。如果是远程服务器就要修改IP为这台服务端机器的IP。

修改完成后现在可以运行客户端了:

screen -dmS jp python client-linux.py

打开我们的网站可以看到我们刚部署的服务器已经正常显示了:

至此,这个ServerStatus探针的搭建流程就全部完成了,那么有人可能会问,我有多台机器,其他的机器该怎么部署呢?下面LALA来简单说一下远程服务器的部署。

首先编辑你的服务端配置文件:

vi config.json

将你要监控的机器信息都填写到里面,还是和之前一样设置一个账号、密码,如图:

注:每次修改config.json配置文件后都要重启sergate才能使新的配置生效。

重启sergate的简单方法:

查看sergate运行的进程ID:

ps -ef | grep web

如图显示我当前的进程ID是32680以及32681:

使用kill命令结束进程:

kill -9 32680
kill -9 32681

最后重新运行sergate即可:

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

现在登录到你要监控的机器内,下载ServerStatus

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

进入到clients目录

cd ServerStatus/clients

编辑配置文件:

vi client-linux.py

修改IP地址为你的服务端机器IP地址,对应服务端配置文件上面的账号和密码,如图:

安装screen并运行ServerStatus客户端程序:

yum -y install screen
screen -dmS jp python client-linux.py

你如果不是很确定当前的客户端是否已经能够正常工作,可以先不用screen放到后台,直接前台运行一下:

python client-linux.py

看到如图回显就说明是完全正常的:

现在打开我们的网站刷新一下页面,可以看到新添加的这台机器也正常显示了:

至此,ServerStatus的整个搭建配置就大功告成了,相信大家也都学会了~

下面是LALA搭建的演示站(有效期2天):

http://47.74.35.154/

如果你要修改ServerStatus的HTML展示页面的话,也很简单,编辑站点目录下的index.html即可:

最后感谢CCTV、MTV以及Gayhub对此项目的大力支持:

https://github.com/BotoX/ServerStatus

同时也感谢tenyue大佬修改出如此优秀的中文版本:

https://github.com/tenyue/ServerStatus

赞(3)
未经允许不得转载:荒岛 » 适合机场大佬们监控自己节点状态的云探针(ServerStatus)
分享到: 更多 (0)

评论 13

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    哇 我要啥博主就更新啥 难道有心灵感应?

    misery7年前 (2017-11-14) Safari 11.0 Safari 11.0 iPhone iOS 11.1 iPhone iOS 11.1回复
    • 这么巧的吗 :arrow:

      LALA7年前 (2017-11-15) Firefox 57.0 Firefox 57.0 Windows 7 x64 Edition Windows 7 x64 Edition回复
  2. #2

    用CENTOS6装不了,表示很烦躁.

    pozy7年前 (2017-11-15) Google Chrome 55.0.2883.87 Google Chrome 55.0.2883.87 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • CentOS6要升级Python到2.7以上才能用。
      另外不知道用pyenv能不能用,你可以试试。

      LALA7年前 (2017-11-15) Firefox 57.0 Firefox 57.0 Windows 7 x64 Edition Windows 7 x64 Edition回复
  3. #3

    求出搭建dns服务器教程 :cry: ,我TM搭建的要吐血了 :eek:

    xc7年前 (2017-11-15) Google Chrome 61.0.3163.98 Google Chrome 61.0.3163.98 Android 7.0 Android 7.0回复
    • 搭DNS服务器要用国内的小鸡,本屌手上都是国外的,大佬赞助一台国内的,我可以尝试一下~

      LALA7年前 (2017-11-15) Firefox 57.0 Firefox 57.0 Windows 7 x64 Edition Windows 7 x64 Edition回复
  4. #4

    博主买按量付费阿里云日本?流量包呢? :arrow:

    17年前 (2017-11-22) Microsoft Edge 15.15063 Microsoft Edge 15.15063 Windows 10 x64 Edition Windows 10 x64 Edition回复
  5. #5

    节点需要定时重启,重启后失效怎么解决?开机启动如何设置?谢谢

    pozy7年前 (2017-11-28) Google Chrome 55.0.2883.87 Google Chrome 55.0.2883.87 Windows 10 x64 Edition Windows 10 x64 Edition回复
  6. #6

    # ./sergate –config=config.json –web-dir=/www/wwwroot/47.74.35.154
    [server]: Bound to :35601
    Segmentation fault
    运行时出现这个错误,config.json 配置如下:
    {“servers”:
    [
    {
    “username”: “s01”,
    “name”: “US”,
    “type”: “VPS”,
    “host”: “1_1_1_1”,
    “location”: “United State”,
    “password”: “US_1393”
    },
    {
    “username”: “s02”,
    “name”: “US”,
    “type”: “VPS”,
    “host”: “2_2_2_2”,
    “location”: “United State”,
    “GcE62Aws78AZUre03”: “US_2399”
    }
    ]
    }
    能看出是什么原因吗?如果只有一个节点可以运行,两个以上就出现错误了,搜索了好像别人都没这问题 :grin:

    欧文斯7年前 (2018-04-12) Google Chrome 65.0.3325.181 Google Chrome 65.0.3325.181 Windows 10 x64 Edition Windows 10 x64 Edition回复
  7. #7

    找到原因了,请删除条评论 :razz:

    欧文斯7年前 (2018-04-12) Google Chrome 65.0.3325.181 Google Chrome 65.0.3325.181 Windows 10 x64 Edition Windows 10 x64 Edition回复
  8. #8

    项目被删除了,有人备份了

    FaceTheWorld6年前 (2018-07-21) Google Chrome 66.0.3359.181 Google Chrome 66.0.3359.181 Windows 10 x64 Edition Windows 10 x64 Edition回复
  9. #9

    lala大佬,我建好得探针,用您得方法放到宝塔站点发现是静态得不会实时刷新,我探针用的端口是36501,现在我也想搞到宝塔站点目录下用80端口,该咋办,好像缺了什么东西似的,就是不会正常刷新运行!

    miaoice6年前 (2018-08-30) Google Chrome 67.0.3396.99 Google Chrome 67.0.3396.99 Windows 10 x64 Edition Windows 10 x64 Edition回复
  10. #10

    后面加36501端口就可以正常!这个很尬尬啊。大佬

    miaoice6年前 (2018-08-30) Google Chrome 67.0.3396.99 Google Chrome 67.0.3396.99 Windows 10 x64 Edition Windows 10 x64 Edition回复

分享创造快乐

广告合作资源投稿