• 服务器探针-serverstatus


    {alert type="info"} 之前给大家介绍过一个简单的服务器监控。uptime-kuma 今天给各位带来一个酷炫的多服务器探针和多服务器监控。ServerStatus

    {/alert}

    作者的开源项目地址如下:https://github.com/cppla/ServerStatus
    作者的项目体验地址如下 https://tz.cloudcpp.com/ 页面看着不错,所以我们也要整一个。接下来就是搭建的教程

    因为是探针,要监控和显示所有的机器数据。所以安装分为服务端和客户端的安装。

    1. 第一步我们先安装服务端。使用docker启动服务就行。如果你要映射的80端口被占用了,那么换一个没被占用的就可以了。 我们先使用wget获取配置,再docker run启动
    wget --no-check-certificate -qO ~/serverstatus-config.json https://raw.githubusercontent.com/cppla/ServerStatus/master/server/config.json && mkdir ~/serverstatus-monthtraffic   

    docker run -d --restart=always --name=serverstatus -v ~/serverstatus-config.json:/ServerStatus/server/config.json -v ~/serverstatus-monthtraffic:/usr/share/nginx/html/json -p 80:80 -p 35601:35601 cppla/serverstatus:latest  
    • 1
    1. 启动好容器之后,请确保你的服务器开放了对应的端口。此时就可以在前台访问了,我映射的端口是33451(-p 33451:80 -p 35601:35601)。所以当我访问http://IP:33451/就发现已经OK了。 35601是通信协议的端口,也请确保放开。
    2. 服务已经启动,接下来,我们就要部署客户端。其实也很简单,在你想被监控的服务器上执行一条命令即可。
    3. 这里的客户端我会以我的1台甲骨文小机为例子。
    4. ssh连接服务器。执行命令。
    wget --no-check-certificate -qO client-linux.py 'https://raw.githubusercontent.com/cppla/ServerStatus/master/clients/client-linux.py' && nohup python3 client-linux.py SERVER=X.X.X.X USER=s04 >/dev/null 2>&1 &
    
    • 1
    • 2

    1. 注意要把server=X.X.X.X换成部署探针服务的ip。user怎么来呢。从服务端的配置文件里找 或者你新增一个即可。 在我们服务端执行命令时候,他就会在家目录里生成serverstatus-config.json 文件。我们打开这个文件. 可以看到对应的配置信息,有username,location,password等。我们按照需求更改或者使用默认的即可。 下面是我的示例,我直接使用s04配置了。如果你的节点较多,那么按照格式新增一个配置就行。

    2. 可以从图上方便直观的看到你的服务器状态,其中包括:位置、在线时间、负载、网络情况 、流量、内存、cpu、磁盘等

    3. 服务端的配置文件里还有这样的配置信息,你可以按需来配置自定义告警

     "watchdog": [
                    {
                            "name": "cpu high warning",
                            "rule": "cpu>90&load_1>3",
                            "interval": 600,
                            "callback": "https://yourSMSurl"
                    },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    1. 感兴趣的可以去自行探索一下报警功能~

    如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。

    欢迎访问我的博客站,有更多开源项目分享:vwo50

  • 相关阅读:
    (数据科学学习手札156)地图可视化神器kepler.gl 3.0版本发布
    code2vec 代码的连续分布式矢量表示
    【‘Integer(int)‘ 已经过时了】
    CrossOver 22Mac和Linux免费中文版系统兼容工具
    flink 一个简单的wordcount
    如何在Python中操作MySQL?
    Cocos Creator 3.x 优量汇/广点通 android
    pycocotools安装
    C++ 友元
    LeetCode902最大为 N 的数字组合(相关话题:数位DP问题,递归遍历和减枝)
  • 原文地址:https://blog.csdn.net/Akanarika520/article/details/134507149