079、监控利器 sysdig (2019-04-26 周五)

 
sysdig 是一个轻量级的系统监控工具,同时他还原生支持容器。通过sysdig我们可以近距离观察linux操作系统和容器的行为。
 
Linux上有很多常用的监控工具,比如 strace tcpdump htop iftop lsof
 
而 sysdig 则是将这些工具的功能集成到一个工具中,并且提供了一个友好统一的操作界面。
 
安装和运行 sysdig 的最简单方法就是运行 Docker 容器,
 
 
root@host1:~# cat in.sh
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
 
root@host1:~# sh in.sh
Unable to find image 'sysdig/sysdig:latest' locally
latest: Pulling from sysdig/sysdig
9f461c014a9f: Pull complete
254ea2590fd1: Pull complete
aa290b1ced07: Pull complete
90cdfadf89d4: Pull complete
13079d00ea2e: Pull complete
2cb517fbc314: Pull complete
77c08c64bff3: Pull complete
a06315c80476: Pull complete
124a264d08c2: Pull complete
c974cacc5050: Pull complete
dbaa2d265332: Pull complete
ec5d18293d21: Pull complete
Digest: sha256:6985c4cb43f8678c444bee7879e80d7965444365f74dab10a07f3108e7bc0963
Status: Downloaded newer image for sysdig/sysdig:latest
* Setting up /usr/src links from host
* Unloading sysdig-probe, if present
* Running dkms install for sysdig
 
Kernel preparation unnecessary for this kernel.  Skipping...
 
Building module:
cleaning build area...
make -j4 KERNELRELEASE=4.4.0-31-generic -C /lib/modules/4.4.0-31-generic/build M=/var/lib/dkms/sysdig/0.25/build....
cleaning build area...
 
DKMS: build completed.
 
sysdig-probe.ko:
Running module version sanity check.
- Original module
   - No original module exists within this kernel
- Installation
   - Installing to /lib/modules/4.4.0-31-generic/kernel/extra/
mkdir: cannot create directory '/lib/modules/4.4.0-31-generic/kernel/extra': Read-only file system
cp: cannot create regular file '/lib/modules/4.4.0-31-generic/kernel/extra/sysdig-probe.ko': No such file or directory
 
depmod......
 
DKMS: install completed.
* Trying to load a dkms sysdig-probe, if present
sysdig-probe found and loaded in dkms
root@23f6e4a253ff:/# csysdig
 
 
sysdig 容器是以 privileged 方式运行,而且会读取操作系统的 /dev /proc 等数据,这是为了获取足够的系统信息。
 
后面可以使用命令  docker exec -it sysdig bash 进入容器,执行 csysdig 命令,以交互方式启动 sysdig
 
079、监控利器 sysdig (2019-04-26 周五)079、监控利器 sysdig (2019-04-26 周五)
 
sysdig 的界面类似 linux的top,但是功能更强大,点击底部的 View 或者按 F2 可以看到很多监控分类,涵盖了操作系统的各个方面,
 
079、监控利器 sysdig (2019-04-26 周五)079、监控利器 sysdig (2019-04-26 周五)
 
这里我们选择 container ,监控容器的状态
 
079、监控利器 sysdig (2019-04-26 周五)079、监控利器 sysdig (2019-04-26 周五)
 
点击底部按钮中的 Legend 或者使用快捷键 F7 可以查看上面每一列的说明
 
点击某一列的表头,即可按照该列内容进行排序
 
双击某进程,即可查看该进程对应的线程
 
返回上一级,按 退格键 
 
还可以使用底部的搜索按钮  Search 搜索
 
监控内容每两秒刷新一次,如果需要暂停 可以按底部的 Pause 按钮
 
079、监控利器 sysdig (2019-04-26 周五)079、监控利器 sysdig (2019-04-26 周五)
 
sysdig 的特点如下:
 
1、监控信息全,包括Linux操作系统和容器
2、界面交互性强
 
不过 sysdig 显示的是实时数据,看不到变化和趋势。而且是在命令行中进行操作,需要ssh 到host 上执行,会带来一些不便。
 
 
上一篇:Oracle ORDS的简单SQL配置模板


下一篇:IDEA的debug操作