本节介绍Weave Scope,WeaveScope是一款开源项目,项目地址:https://github.com/weaveworks/scope。Weave Scope会自动生成容器之间的关系图,方便理解容器之间的关系,也方便监控容器化和微服务化的应用。
Weave Scope的安装步骤:(前提已安装Docker)
下载scope的二进制安装文件:
curl -L git.io/scope -o /usr/local/bin/scope(本质上就是一个shell脚本,感兴趣的读者可以下载后查看)
赋予可执行权限:
chmod a+x /usr/local/bin/scope
启动scope:
scope launch
该scope脚本将从DockerHub上下载Scope镜像并启动容器。
scope的其它命令可以通过scope help查询。
根据scope launch最后的提示,浏览器输入http://192.168.1.108:4040/,进入weavescope页面。可以对PROCESS、CONTAINERS、HOSTS分别以图形和图表的形式列出。
对于图形界面:
其中:
PROCESS可以按照NAME显示;
CONTAINERS可以按照DNS NAME和IMAGE显示;
HOSTS可以按照WEAVENET网络显示。
左上角区域:提供搜索功能
左下角区域:对显示的对象按照不同的条件进行过滤显示。比如CONTAINERS可以选择系统容器还是应用容器,运行的容器还是停止的容器等等。
右上角区域:live和pause,分别表示监控的是实时的资源,还是几秒钟之前的,两者之间可以切换。
右下角区域:+/-可以对中间区域的对象进行放大和缩小;在下面提供页面重载、页面加深、HELP等功能。
对于图表界面:
下面分别对PROCESS、CONTAINERS和HOSTS分别说明:
(1) PROCESS
点击scope-probe后会显示该进程的详细信息,包括:
1、STATUS(CPU、MEMORY、OPENFILES)
2、INFO(PID、COMMAND、PARENTPID、THREADS)
3、INBOUND
4、OUTBOUND
(2)CONTAINERS
点击后显示cadvisor容器的详细信息,包括:
1、STATUS(CPU、MEMORY)
2、INFO(IMAGE、COMMAND、STATE、NETWORKS、UPTIME、RESTART、IPS、PORTS、CREATED、ID)
3、INBOUND
4、OUTBOUND
5、PROCESS
6、ENVIRONMENTVARIABLES(PATH)
7、DOCKER LABELS(MAINTAINER、WORKS WEAVE ROLE)
8、IMAGE(ID、NAME、SIZE、VIRTUAL SIZE)
另外,还包括对容器的控制,从左至右依次为attch、exec shell、restart、pause、stop,如果执行了pause还会有unpause,执行了stop还会有start、remove
等价于docker attach
等价于docker exec
等价于docker restart
等价于docker pause
等价于docker stop
等价于docker unpause
等价于docker start
等价于docker rm
(3)HOSTS
点击Ubuntu-001
远程shell登录Ubuntu-001主机
在下面,包括Ubuntu-001主机的详细信息,包括:
1、STATUS(CPU、MEMORY、LOAD)
2、 INFO(KERNEL VERSION、UPTIME、HOSTNAME、OS、LOCALNETWORKS、SCOPE VERSION)
3、INBOUND
4、OUTBOUND
5、CONTAINERS(CPU、MEMORY)
6、PROCESSES(PID、CPU、MEMORY)
7、CONTAINER IMAGES
下一节,我们来研究下weavescope如何实现多主机监控。
网友评论