• Docker 容器监控 - Weave Scope


    image-20231003152754177

    Author:rab



    前言

    Docker 容器的监控方式有很多,如 cAdvisorPrometheus 等。今天我们来看看其另一种监控方式 —— Weave Scope,此监控方法似乎用的人很少了,现在比较热门的就是 cAdvisor + Prometheus 的监控方式。但不管何种监控,都有其优势,我们不可否认 Weave Scope 在监控界的一席之地。接下来将对 Weave Scope 进行相关实验,看看 Weave Scope 有什么特点或能监控哪些东西。

    官方网站:https://www.weave.works/oss/scope/

    一、环境

    HostServer备注
    base/192.168.56.120docker、Weave Scope-
    test/192.168.56.121docker、Weave Scope-

    说明:两台测试服务器均部署 Weave Scope 服务、运行相关测试容器进行本次测试验证。

    二、部署

    安装文档:https://www.weave.works/docs/scope/latest/installing/

    1、下载 Weave Scope 容器启动脚本

    sudo curl -L git.io/scope -o /usr/local/bin/scope
    sudo chmod a+x /usr/local/bin/scope
    scope launch
    
    • 1
    • 2
    • 3

    2、启动 Weave Scope

    会以容器的方式运行。

    scope launch
    docker ps
    
    • 1
    • 2

    image-20231003152849110

    3、访问验证

    http://192.168.56.120:4040/

    image-20231003153012685

    说明:以上步骤先在 120 服务器节点上进行实验,即先测试单点下容器的监控情况。

    三、监控

    3.1 容器监控 - 单 Host

    1、运行两个测试容器

    docker run -d --name webtest nginx:latest
    docker run -d --name showdoc star7th/showdoc:latest
    
    • 1
    • 2

    2、Web 查看监控情况

    image-20231003160448886

    3、如何查看具体容器监控信息

    image-20231003160804574

    在容器详情页中,我们可以对现有容器进行相关操作:

    image-20231003161253990

    说明:监控信息包括容器 CPU、内存、容器中进程占用的CPU/内存等信息。

    要清楚的是:weave scope 不仅能够监控 Docker 容器的状态信息,也能监控 Host 主机的状态信息,如下图所示,当前仅有一个 Host 主机被监控,因为我就只在这台主机(base)上部署了 weave scope 和测试容器。

    image-20231003161800298

    3.2 容器监控 - 多 Host

    在实际生产中不仅仅是一台服务器上运行整个服务,而是多个 Host 上运行多个 container(在如今的微服务时代尤其如此)。

    1、关联多主机

    注意:两台主机均分别执行以下命令

    # 120
    scope launch 192.168.56.120 192.168.56.121
    
    # 121
    scope launch 192.168.56.120 192.168.56.121
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2、创建测试容器

    120 主机上已经运行了两个容器了,接下来我们在 121 上再运行一个测试容器

    docker run -d --name myweb2 nginx:latest
    
    • 1

    3、验证

    http://192.168.56.120:4040/

    http://192.168.56.121:4040/

    两者任意访问其中一个 url 均可

    image-20231003163757311

    在看看 test 主机上是否运行 myweb2 容器:

    image-20231003163907574

    没问题,至此,单节点、多节点主机即容器监控就已经实验完成,更多 weave scope 用法可自行参考官方文档,比较简单,无非就是鼠标点点点的事情。

    总结

    Weave Scope 可实现单 Host 和多 Host 的监控及 Host 上容器的监控,我们可按需进行监控工具选择。

    选择它,你就需要知道它能帮你解决什么问题:

    1. 容器监控(可跨主机)
    2. 主机监控(多 Host 节点)

    因此,作为基础的容器监控,我认为 Weave Scope 是有优势的,如轻量、资源占用较低、提供可视化 Web UI 等,对于我们研发工程师来说是最好的一手选择。

    —END

  • 相关阅读:
    云仓是什么?各个行业术语是什么意思?
    【递归】Pow(x , n)(Java版)
    JAVA:List 与 数组 相互转换
    中国地图坐标系转换详解:从WGS-84到GCJ-02再到BD-09
    RapidSSL证书便宜吗?如何申请?
    计算机毕业设计springboot+vue基本微信小程序的校园二手物品交易平台系统
    IPIDEA的使用方式
    从HashMap的执行流程开始 揭开HashMap底层实现
    Python 分形算法__代码里开出来的艺术之花
    384.打乱数组
  • 原文地址:https://blog.csdn.net/IT_ZRS/article/details/133522579