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
 
 
sysdig 的界面类似 linux的top,但是功能更强大,点击底部的 View 或者按 F2 可以看到很多监控分类,涵盖了操作系统的各个方面,
 
 
这里我们选择 container ,监控容器的状态
 
 
点击底部按钮中的 Legend 或者使用快捷键 F7 可以查看上面每一列的说明
 
点击某一列的表头,即可按照该列内容进行排序
 
双击某进程,即可查看该进程对应的线程
 
返回上一级,按 退格键 
 
还可以使用底部的搜索按钮  Search 搜索
 
监控内容每两秒刷新一次,如果需要暂停 可以按底部的 Pause 按钮
 
 
sysdig 的特点如下:
 
1、监控信息全,包括Linux操作系统和容器
2、界面交互性强
 
不过 sysdig 显示的是实时数据,看不到变化和趋势。而且是在命令行中进行操作,需要ssh 到host 上执行,会带来一些不便。
 
 

079、监控利器 sysdig (2019-04-26 周五)的更多相关文章

  1. 第 10 章 容器监控 - 079 - 监控利器 sysdig

    sysdig 是一个轻量级的系统监控工具,同时它还原生支持容器. 通过 sysdig 我们可以近距离观察 linux 操作系统和容器的行为. Linux 上有很多常用的监控工具,比如 strace,t ...

  2. 监控利器 sysdig - 每天5分钟玩转 Docker 容器技术(79)

    sysdig 是一个轻量级的系统监控工具,同时它还原生支持容器.通过 sysdig 我们可以近距离观察 linux 操作系统和容器的行为. Linux 上有很多常用的监控工具,比如 strace,tc ...

  3. 2019.04.26 mongaodb

    打开服务  mongod.exe --dbpath E:\Develop\mongodb_64\data\db 在安装和打开服务之前要建一个db  文件的存储位置 然后打开服务 打开服务之后  打开图 ...

  4. MySQL监控利器-PMM

    本篇文章来简要介绍一下MySQL监控利器-PMM的部署过程. 环境: 主机名 IP 功能 系统 数据库版本 pmmclient 192.168.91.34 PMM-client RHEL7.4   p ...

  5. 测者的性能测试手册:JVM的监控利器

    测者的性能测试手册:JVM的监控利器 每次聊起性能测试,最后的终结话题就是怎么做优化.其实在Java的复杂项目中都会有内存不足问题.内存泄露问题.线程死锁问题.CPU问题.这些问题工程测试或者是小压力 ...

  6. Linux 服务器运行健康状况监控利器 Spotlight on Unix 的安装与使用

    1.本文背景 1.1.Linux 服务器情况 # cat /etc/issueRed Hat Enterprise Linux Server release 6.1 (Santiago)Kernel ...

  7. PowerBI更新2019/04 - 解决方案架构 - PowerBI Solution Architecture(一图胜万字!)

    Power BI 架构图 (2019/04) 1) Power BI Desktop 是一个免费的工具.它可以用来准备和管理数据模型:包括链接各种数据:做数据清洗:定义关系:定义度量值和层级关系:应用 ...

  8. 每日一练ACM 2019.04.13

    2019.04.13 第1002题:A+B Proble Ⅱ Problem DescriptionI have a very simple problem for you. Given two in ...

  9. Alpha冲刺(3/10)——2019.4.26

    所属课程 软件工程1916|W(福州大学) 作业要求 Alpha冲刺(3/10)--2019.4.26 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪 ...

随机推荐

  1. SQL Server使用sys.master_files计算tempdb大小不正确

    一直习惯使用sys.master_files来统计数据库的大小以及使用情况,但是发现sys.master_files不能准确统计tempdb的数据库大小信息.如下所示: SELECT       da ...

  2. 【原】Java学习笔记033 - IO

    package cn.temptation; public class Sample01 { public static void main(String[] args) { // 需求:继承关系中爷 ...

  3. uWSGI、WSGI、uwsgi是什么?

    uWSGI是一个web服务器,它实现了WSGI协议.uwsgi协议.HTTP等协议: WSGI是web服务器网管接口,是一套协议,用于接收用户请求并将请求进行初次封装,然后交给web框架: uwsgi ...

  4. VUE 简单属性操作

    在main.js内配置路由及相应模板 import Vue from 'vue' import App from './App' // 引入router路由 import Router from 'v ...

  5. 如何在本地编译Fabric Code

    之前的博客都是拿官方现成的Docker镜像来用,但是并没有自己动手做镜像,也没有说到如何去开发和测试Fabric的代码.这一篇博客就从入门的角度讲解如何编译.测试和开发Fabric. 一.环境准备 要 ...

  6. servlet运行机制、Request内置对象和服务器端跳转

    servlet运行机制: 当发送一个请求到服务器的时候,容器(Tomcat)会判断该路径属于哪一个 Servlet 进行处理,Servlet 有一个抽象父类“HttpServlet”,这个类是一个模板 ...

  7. ABP之多租户

    “软件多租户”指的是一种软件架构,一个软件实例在一个服务器上运行,但为多个租户服务.租户们对软件实例有通用的访问入口,但是每个租户都有特定的权限. 在多租户体系架构中,用程序旨在为每个租户提供一个专用 ...

  8. 【转】Linux之crontab定时任务命令

    1.  crontab命令概念 crontab命令用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行. cron 系统调度进程. 可以使 ...

  9. NodeJs操作MongoDB之多表查询($lookup)与常见问题

    NodeJs操作MongoDB之多表查询($lookup)与常见问题 一,方法介绍 aggregate()方法来对数据进行聚合操作.aggregate()方法的语法如下 1 aggregate(ope ...

  10. redis 开启远程访问权限

    1 开启redis端口访问权限 redis默认的端口是6379,要远程访问redis服务,确保服务器上的6379端口打开. 1.1 查看打开的端口 /etc/init.d/iptables statu ...