Linux安装使用监控软件Collectl的方法

互联网 2017-05-18

  作为Linux系统监控工具,Collectl是款值得推荐的软件,使用Collectl能够及时掌握系统的运行状况,还能像iotop命令一样使用collectl进行智能统计,下面小编就给大家介绍下Collectl的安装及使用。

 Linux安装使用监控软件Collectl的方法

  系统资源监控

  Collectl作为一个轻量级的监控工具,在同类工具中是功能最全的。用户可监测不同的复杂系统矩阵值,并可保留数据以做之后的分析。不同于其他只用来监测特定系统参数的工具,Collectl可以同时监测不同的变量,并以合适的方式记录它们。

  不同于或聚焦于一小组统计数据、采用唯一输出方式,或采用迭代、作为守护进程运行的大部分监测工具,collectl可以同时全部实现。用户可选择各种子系统中的任一系统来监测包括内存,CPU,磁盘,索引节点,无线带宽,lustre,内存,网络,网络文件系统,进程,二次型,slabs,套接口及TCP等信息。

  深入学习前让我们先看以下命令。

  $ collectl

  waiting for1 second sample.。。

  #《--------CPU--------》《----------Disks-----------》《----------Network----------》

  #cpu sys inter ctxsw KBRead Reads KBWrit Writes KBIn PktIn KBOut PktOut

  00864177200000100

  521338273400820001

  1012222647009230201

  107631722008030102

  CPU使用率,磁盘输入输出和网络活动以每秒为单位来加载。Collectl是款值得推荐的软件,使用Collectl能够及时掌握系统的运行状况,还能像iotop命令一样使用collectl进行智能统计,下面为大家介绍Collectl的安装及使用。

  安装collectl工具

  对Ubuntu/Debian用户来说Collectl是默认资源,所以使用apt命令便可获取。

  $ sudo apt-get install collectl

  Fedora/CentOS用户使用yum命令便可获取。

  $ yum install collectl

  使用

  必要的了解 - Collectl子系统

  子系统是可检测到的不同系统资源类型。像CPU,内存,带宽等等都可构成一个子系统。只运行collectl命令将以批处理模式输出CPU,磁盘和网络子系统信息,我们在上文已看到相关内容。

  从操作说明可以看到,Collectl可以识别以下子系统。

  总计子系统

  b - buddy info (内存片段)

  c - CPU

  d -Disk

  f - NFS V3 Data

  i -InodeandFileSystem

  j -Interrupts

  l -Lustre

  m -Memory

  n -Networks

  s -Sockets

  t - TCP

  x -Interconnect

  y -Slabs(system object caches)

  细节子系统

  这是一系列的详细信息,大部分情况下都会由相应的总计数据衍生出来。目前“环境变量”和“进程”2类没有相应的总计数据。如果有3个磁盘,选择-sd,将只会看到3个磁盘组合出的单一信息。如果选择-sD,将会分别显示各磁盘信息。

  C - CPU

  D -Disk

  E -Environmental data (fan, power, temp), via ipmitool

  F - NFS Data

  J -Interrupts

  L -Lustre OST detail OR client Filesystem detail

  M -Memory node data, which is also known as numa data

  N -Networks

  T -65 TCP counters only available in plot format

  X -Interconnect

  Y -Slabs(system object caches)

  Z -Processes

  使用“-s”来监测特定的子系统并向其添加子系统的识别项。现在让我们举几个例子。

  1. 监测cpu使用率

  用“-sc”实现CPU总使用率的监测

  $ collectl -sc

  waiting for1 second sample.。。

  #《--------CPU--------》

  #cpu sys inter ctxsw

  3018003729

  3017673599

  使用“-C”观察各个单独的CPU使用情况。结果将会输出多行,分别对应一个CPU。

  $ collectl -sC

  waiting for1 second sample.。。

  # SINGLE CPU STATISTICS

  # Cpu User Nice Sys Wait IRQ Soft Steal Idle

  0300000096

  1300000096

  2200000097

  3100000098

  0200000097

  1202000095

  2100000098

  3401000095

  如果需要,可以同时使用C和c来获取单项CPU监测数据和汇总数据。

  2. 内存监测

  使用m子系统查看内存。

  $ collectl -sm

  waiting for1 second sample.。。

  #《-----------Memory-----------》

  #Free Buff Cach Inac Slab Map

  2G220M1G1G210M3G

  2G220M1G1G210M3G

  2G220M1G1G210M3G

  不难解释。 M用来查看更多内存的详细信息。

  $ collectl -sM

  waiting for1 second sample.。。

  # MEMORY STATISTICS

  # Node Total Used Free Slab Mapped Anon Locked Inact Hit%

  07975M5939M2036M215720K372184K06652K1434M0

  07975M5939M2036M215720K372072K06652K1433M0

  3. 查看磁盘使用情况

  d和D可以查看磁盘使用的概况和详细情况。

  $ collectl -sd

  waiting for1 second sample.。。

  #《----------Disks-----------》

  #KBRead Reads KBWrit Writes

  4113624

  008013

  $ collectl -sD

  waiting for1 second sample.。。

  # DISK STATISTICS (/sec)

  # 《---------reads---------》《---------writes---------》《--------averages--------》 Pct

  #Name KBytes Merged IOs Size KBytes Merged IOs Size RWSize QLen Wait SvcTim Util

  sda 0000000000000

  sda 0000000000000

  sda 10211715322621

  sda 0000921151818112125

  “--verbose”命令可以用来查看附加信息。和D命令不同,它将概况扩展,包含了更多信息。

  $ collectl -sd --verbose