docker基础之八monitor-2-sysdig

sysdig是一个轻量级的系统监控工具,同时还原生支持容器。

linux上的常用监控工具如:

strace,tcpdump,htop,iftop,lsof

而sysdig则是将这些工具的功能集成到一个工具中,并提供一个友好统一的操作界面

 

[root@nas5 ~]# docker container run -it --rm --name=sysdig --privileged=true \
           --volume=/var/run/docker.sock:/host/var/run/docker.sock \
           --volume=/dev:/host/dev \
           --volume=/proc:/host/proc:ro \
           --volume=/boot:/host/boot:ro \
           --volume=/lib/modules:/host/lib/modules:ro \
           --volume=/usr:/host/usr:ro \
           sysdig/sysdig
		   
* Setting up /usr/src links from host
* Unloading sysdig-probe, if present
* Running dkms install for sysdig
Error! echo
Your kernel headers for kernel 3.10.0-957.el7.x86_64 cannot be found at
/lib/modules/3.10.0-957.el7.x86_64/build or /lib/modules/3.10.0-957.el7.x86_64/source.
* Running dkms build failed, couldn't find /var/lib/dkms/sysdig/0.26.4/build/make.log
* Trying to load a system sysdig-probe, if present
* Trying to find precompiled sysdig-probe for 3.10.0-957.el7.x86_64
Found kernel config at /host/boot/config-3.10.0-957.el7.x86_64
* Trying to download precompiled module from https://s3.amazonaws.com/download.draios.com/stable/sysdig-probe-binaries/sysdig-probe-0.26.4-x86_64-3.10.0-957.el7.x86_64-ab9d808cad44a11f32105a24b5acda29.ko
Download succeeded, loading module
root@08889d187de9:/# 

  

sysdig容器以privileged方式运行,而且会读取/dev,/proc,等数据,为了获取足够的系统信息


在容器内执行csysdig,将以交互方式启动sysdig

类似linux top命令的界面,但更强大。

sysdig按不同的view来监控不同类型的资源,点击底部Views菜单(或者按F2),显示View选择列表

界面左边列出了sysdig支持的View,一共30多项,涵盖了操作系统的各个方面,因为这里主要讨论Containers这一项,界面右边立即显示出此View的功能介绍

回车或双击Containers,进入容器监控界面

sysdig会显示该host所有容器的实时数据,每俩秒刷新一次,各列数据的含义若不清楚,可以点击Legend(或者按F7),若想按某一列排序,点击列头部即可


如果想看某个容器运行的进程,比如httpd,将光标移到目标容器,然后回车或双击

还可以继续双击查看进程中的线程

返回上一级,按退格键,我这不可以,先略过


sysdig的交互功能很强,如果界面显示条目多,可以点击底部Search菜单,然后输出关键字进行查找,如:


如果觉得界面刷新太快,可以点击底部Pause菜单

sysdig的特点:

1.监控信息全,包括linux和容器
2.界面交互性强

缺点:sysdig显示的是实时数据,看不到变化趋势,而且从命令行操作,需要远程到host上执行,恐不便

 

posted @ 2019-09-18 17:24  larlly  阅读(259)  评论(0)    收藏  举报