1、说明

近期测试对Docker的一些监控,恰好有朋友推荐了Weave Scope,说功能比较强大,但配置起来也比较简单,于是开始了接下来的配置,Weave Scope这个项目会自动生成容器之间的关系图,方便理解容器之间的关系,也方便监控容器化和微服务化的应用。Weave Scope能够很便捷的监控多容器主机,并且消耗的资源非常少。

2、安装

2.1、容器的安装与配置

a)安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

b)添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

c)更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce

d)开启Docker服务
sudo service docker start
 
# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
# 将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages
# Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

e)配置docker服务阿里云镜像加速
[root@prometheus-server ~]# vim /usr/lib/systemd/system/docker.service
将"ExecStart=/usr/bin/dockerd"
"ExecStart=/usr/bin/dockerd --registry-mirror=https://fo7k1r42.mirror.aliyuncs.com"
[root@prometheus-server ~]# systemctl daemon-reload
[root@prometheus-server ~]# systemctl restart docker.service
[root@prometheus-server ~]# systemctl status docker.service
[root@prometheus-server ~]# docker search centos

2.2、服务端的配置(10.0.0.131):

[root@prometheus-server ~]# sudo curl -L git.io/scope -o /usr/local/bin/scope
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0
  0     0    0   595    0     0    109      0 --:--:--  0:00:05 --:--:--   961
100 11663  100 11663    0     0   1689      0  0:00:06  0:00:06 --:--:-- 19438
[root@prometheus-server ~]# sudo chmod a+x /usr/local/bin/scope
[root@prometheus-server ~]# scope launch
e6d16c714c626411b4d04d7d79c8ba3b5c07c3c4d8da4bd5066f05c26b84cb2c
Scope probe started
Weave Scope is listening at the following URL(s):
  * http://10.0.0.131:4040/

2.2、客户端的配置(10.0.0.133):


[root@prometheus-node2 yum.repos.d]# sudo curl -L git.io/scope -o /usr/local/bin/scope
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:05 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:08 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:12 --:--:--     0
  0     0    0   595    0     0     43      0 --:--:--  0:00:13 --:--:--  1027
100 11663  100 11663    0     0    764      0  0:00:15  0:00:15 --:--:-- 12251
[root@prometheus-node2 yum.repos.d]# sudo chmod a+x /usr/local/bin/scope
[root@prometheus-node2 yum.repos.d]# which scope
/usr/bin/which: no scope in (/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
[root@prometheus-node2 yum.repos.d]# ll /usr/local/bin/scope 
-rwxr-xr-x 1 root root 11663 Aug 20 15:35 /usr/local/bin/scope
[root@prometheus-node2 yum.repos.d]# /usr/local/bin/scope launch 10.0.0.133 10.0.0.131
da670c2c816faf42f0cd1913951d0d09dbe272c751f50ff084f82549ed82cd93
Scope probe started
Weave Scope is listening at the following URL(s):
  * http://10.0.0.133:4040/
# 3、展示效果

如下图所示:我们可以看到拓扑关系 还有好多比较酷的功能,我这里就不展示了,有需求的同学自己搭建下,上手很快。