检查判断工具之,检查判断工具之top详解

作者: 计算机网络  发布:2019-08-27

学学 linux 系统监察和控制工具1,学学linux

丰硕利用好 linux 系统自带的系统监控工具得以非常快方便地打听系统性格以及其余事项,方便对系统实行分析和调养

学学文章:各类系统管理员都要明了的 30 个 Linux 系统监察和控制工具 、通过vmstat学习CPU和进度质量监察和控制

对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作。在IT领域作为一名Linux系统的管理员工作5年后,我逐渐认识到监控和保持系统启动并运行是多么的不容易。基于此原因,我们已编写了最常使用的18个命令行工具列表,这些工具将有助于每个Linux/Unix 系统管理员的工作。这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因。这个命令行工具列表提供了足够的工具,您可以挑选适用于您的监控场景的工具。

linux系统监察和控制、会诊工具之top详解  

linux 系统监察和控制、会诊工具之 IO wait

1、问题:

这几天在做日志的实时同步,上线在此以前是做过单份线上日志压力测验的,音信队列和顾客端、本机都没难点,可是没悟出上了第二份日记之后,难题来了:

集群中的某台机器 top 看到负载巨高,集群中的机器硬件配备同样,陈设的软件都一致,却唯有这一台负载有毛病,开头嫌疑或许硬件不符合规律了。

还要,大家还须要把负载有分外的罪魁祸首揪出来,到时候从软件、硬件层面分别寻觅应用方案。

2、排查:

从 top 中能够观察 load average 偏高,%wa 偏高,%us 相当低:

图片 1

从上海教室我们大致能够推断 IO 境遇了瓶颈,上边大家得以再用相关的 IO 会诊工具,具体的验证排查下。

PS:要是你对 top 的用法不打听,请参见小编二〇一八年写的一篇博文:

linux 系统监察和控制、检查判断工具之 top 详解

常用组合措施有如下两种:

• 用vmstat、sar、iostat检查测量试验是或不是是CPU瓶颈
• 用free、vmstat检查实验是不是是内部存款和储蓄器瓶颈
• 用iostat、dmesg 检查评定是不是是磁盘I/O瓶颈
• 用netstat检验是还是不是是互联网带宽瓶颈

2.1 vmstat

vmstat命令的意义为呈现设想内部存款和储蓄器状态“Viryual Memor Statics”),不过它能够告知有关进程、内部存款和储蓄器、I/O等系统完全运会行状态。

图片 2

它的连锁字段表明如下:

Procs进程)  • r: 运行队列中进程数量,这个值也可以判断是否需要增加CPU。长期大于1)  • b: 等待IO的进程数量,也就是处在非中断睡眠状态的进程数,展示了正在执行和等待CPU资源的任务个数。当这个值超过了CPU数目,就会出现CPU瓶颈了     Memory内存)  • swpd: 使用虚拟内存大小,如果swpd的值不为0,但是SI,SO的值长期为0,这种情况不会影响系统性能。  • free: 空闲物理内存大小。  • buff: 用作缓冲的内存大小。  • cache: 用作缓存的内存大小,如果cache的值大的时候,说明cache处的文件数多,如果频繁访问到的文件都能被cache处,那么磁盘的读IO bi会非常小。     Swap  • si: 每秒从交换区写到内存的大小,由磁盘调入内存。  • so: 每秒写入交换区的内存大小,由内存调入磁盘。  注意:内存够用的时候,这2个值都是0,如果这2个值长期大于0时,系统性能会受到影响,磁盘IO和CPU资源都会被消耗。有些朋友看到空闲内存free)很少的或接近于0时,就认为内存不够用了,不能光看这一点,还要结合si和so,如果free很少,但是si和so也很少大多时候是0),那么不用担心,系统性能这时不会受到影响的。     IO现在的Linux版本块的大小为1kb)  • bi: 每秒读取的块数  • bo: 每秒写入的块数  注意:随机磁盘读写的时候,这2个值越大如超出1024k),能看到CPU在IO等待的值也会越大。     system系统)  • in: 每秒中断数,包括时钟中断。  • cs: 每秒上下文切换数。  注意:上面2个值越大,会看到由内核消耗的CPU时间会越大。     CPU以百分比表示)  • us: 用户进程执行时间百分比(user time)  us的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期超50%的使用,那么我们就该考虑优化程序算法或者进行加速。  • sy: 内核系统进程执行时间百分比(system time)  sy的值高时,说明系统内核消耗的CPU资源多,这并不是良性表现,我们应该检查原因。  • wa: IO等待时间百分比  wa的值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈块操作)。  • id: 空闲时间百分比 

从 vmstat 中得以看出,CPU大多数的年月浪费在等待IO上边,可能是出于大气的磁盘随机拜望依旧磁盘的带宽所导致的,bi、bo 也都当先 1024k,应该是碰见了IO瓶颈。

2.2 iostat

上边再用尤其正式的磁盘 IO 检查判断工具来看下相关总结数据。

图片 3

它的连带字段表达如下:

rrqm/s:    每秒进行 merge 的读操作数目。即 delta(rmerge)/s  wrqm/s:    每秒进行 merge 的写操作数目。即 delta(wmerge)/s  r/s:       每秒完成的读 I/O 设备次数。即 delta(rio)/s  w/s:       每秒完成的写 I/O 设备次数。即 delta(wio)/s  rsec/s:    每秒读扇区数。即 delta(rsect)/s  wsec/s:    每秒写扇区数。即 delta(wsect)/s  rkB/s:     每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。(需要计算)  wkB/s:     每秒写K字节数。是 wsect/s 的一半。(需要计算)  avgrq-sz:  平均每次设备I/O操作的数据大小 (扇区)。delta(rsect wsect)/delta(rio wio)  avgqu-sz:  平均I/O队列长度。即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。  await:     平均每次设备I/O操作的等待时间 (毫秒)。即 delta(ruse wuse)/delta(rio wio)  svctm:     平均每次设备I/O操作的服务时间 (毫秒)。即 delta(use)/delta(rio wio)  %util:     一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为use的单位为毫秒) 

能够看出两块硬盘中的 sdb 的利用率已经 百分百,存在严重的 IO 瓶颈,下一步我们正是要寻找哪些进度在往那块硬盘读写多少。

2.3 iotop

图片 4

依附 iotop 的结果,大家相当的慢的一向到是 flume 进度的主题素材,产生了大气的 IO wait。

而是在起来小编早已说了,集群中的机器配置同样,安顿的主次也都 rsync 过去的一模二样,难道是硬盘坏了?

那得找运营同学来调查了,最终的定论是:

Sdb为双盘raid1,使用raid卡为“LSI Logic / Symbios Logic SAS1068E”,无cache。近400的IOPS压力一度达到规定的规范了硬件极限。而其它机器使用的raid卡是“LSI Logic / Symbios Logic MegaRAID SAS 1078”,有256MB cache,并未有达到规定的标准硬件瓶颈,化解办法是改造能提供越来越大IOPS的机械。

然则前边也说了,我们从软硬件两方面动手的指标正是看能还是不可能分别寻求代价最小的消除方案:  

检查判断工具之,检查判断工具之top详解。知晓硬件的原故了,我们得以尝尝把读写操作移到另一块盘,然后再看看效果:

图片 5

3、最终的话:另辟蹊径

实则,除了用上述规范的工具定位这些标题外,我们得以平昔利用进度景况来找到相关的经过。

我们知晓进度有如下几种情状:

PROCESS STATE CODES   D uninterruptible sleep (usually IO)   R running or runnable (on run queue)   S interruptible sleep (waiting for an event to complete)   T stopped, either by a job control signal or because it is being traced.   W paging (not valid since the 2.6.xx kernel)   X dead (should never be seen)   Z defunct ("zombie") process, terminated but not reaped by its parent. 

里面情景为 D 的一般便是出于 wait IO 而形成所谓的”非中断睡眠“,大家能够从那点动手然后一步步的定位难点:

for x in `seq 10`; do ps -eo state,pid,cmd | grep "^D"; echo "----"; sleep 5; done   D 248 [jbd2/dm-0-8]   D 16528 bonnie   -n 0 -u 0 -r 239 -s 478 -f -b -d /tmp   ----   D 22 [kdmflush]   D 16528 bonnie   -n 0 -u 0 -r 239 -s 478 -f -b -d /tmp   ----  # 或者:  while true; do date; ps auxf | awk '{if($8=="D") print $0;}'; sleep 1; done   Tue Aug 23 20:03:54 CLT 2011   root       302  0.0  0.0      0     0 ?        D    May22   2:58  _ [kdmflush]   root       321  0.0  0.0      0     0 ?        D    May22   4:11  _ [jbd2/dm-0-8]   Tue Aug 23 20:03:55 CLT 2011   Tue Aug 23 20:03:56 CLT 2011     cat /proc/16528/io   rchar: 48752567   wchar: 549961789   syscr: 5967   syscw: 67138   read_bytes: 49020928   write_bytes: 549961728   cancelled_write_bytes: 0      lsof -p 16528   COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME   bonnie   16528 root cwd DIR 252,0 4096 130597 /tmp   <truncated>   bonnie   16528 root 8u REG 252,0 501219328 131869 /tmp/Bonnie.16528   bonnie   16528 root 9u REG 252,0 501219328 131869 /tmp/Bonnie.16528   bonnie   16528 root 10u REG 252,0 501219328 131869 /tmp/Bonnie.16528   bonnie   16528 root 11u REG 252,0 501219328 131869 /tmp/Bonnie.16528   bonnie   16528 root 12u REG 252,0 501219328 131869 <strong>/tmp/Bonnie.16528</strong>      df /tmp   Filesystem 1K-blocks Used Available Use% Mounted on   /dev/mapper/workstation-root 7667140 2628608 4653920 37% /      fuser -vm /tmp          USER        PID ACCESS COMMAND   /tmp:  db2fenc1   1067 ....m db2fmp          db2fenc1   1071 ....m db2fmp          db2fenc1   2560 ....m db2fmp          db2fenc1   5221 ....m db2fmp 

4、Refer:

[1] Troubleshooting High I/O Wait in Linux

      ——A walkthrough on how to find processes that are causing high I/O Wait on Linux Systems

[2] 精通Linux系统负荷

 

[3] 24 iostat, vmstat and mpstat Examples for Linux Performance Monitoring

 

[4] vmstat vmstat命令

[5] Linux vmstat命令实战详解

[6] 影响Linux服务器品质的成分

 

[7] linux磁盘IO查看iostat,vmstat

 

[8] What Process is using all of my disk IO

[9] Linux Wait IO Problem

 

[10] Tracking Down High IO Wait in Linux

初稿出自:


图片 6


系统监察和控制、检查判断工具之 IO wait 1、难题: 方今在做日志的实时同步,上线在此以前是做过单份线上日志压力测量试验的,信息队列和客商端、本...

【1】top - 监察和控制进度命令

命令 top 的实时监察和控制图

1. 认识top

top (区别类外号字只怕不雷同,如 IBM 的 aix 中叫 topas ) 命令展现系统的进度,提供实时动态视图(即对进程活动进展实时监察),默许意况下,top 命令显示 CPU 占用率最高的进程并每 5s 更新三回。

2. 最首要效率
尤为重要用来监督体系实时负载率、进度的财富占用率及其余各样系统状态属性是不是正规。

3. 翻看进程监察和控制
终极输入命令 top

输出认知

  • 率先行:展现系统级的载荷,平均负载有3个出口,分别代表在过去的1、5、15分钟时的平分负载。那部分的出口和指令 uptime 一致。
  • 第二行:突显关于进度的有个别大要音信例如当前的长河总数、运转或睡觉进程的多寡。在那之中,标亮的进度列表中的 S 列对应的值为 R 代表 running ,如果为 S 则为 sleeping
  • 第三行:显示 cpu 的部分载荷新闻,个中,极度是 %id%wa 那四个目标进一步重大,非常多的属性难点中,假设 %id 过低,%wa 也很低,说明 cpu 使用率异常高,可能有一部分 sql 语句消耗了大气的 cpu 资源,如果 %wa 异常高的话,很恐怕是系统 IO 出现了难题。
  • 第四行:呈现内部存款和储蓄器的接纳意况,假使内部存款和储蓄器使用状态存在鲜明的可怜,能够经过标亮的经过音信中查找 %MEM 消耗相比高的进程。
  • 第五行: 显示交换区的处境,如若内部存款和储蓄器丰盛只怕系统负荷不高,那一个部分的数量尚未什么样大的变通。

Notte:关于 CPU 的动静音信参数表明
%Cpu(s): 9.5 us, 4.2 sy, 0.0 ni, 74.5 id, 11.7 wa, 0.0 hi, 0.1 si, 0.0 st

4. 常用神速键
deepin 的 top 命令的 z 连忙键黑白切换方式

飞快键用法表明

  • t: 是不是出示汇总音讯
  • m: 是不是出示内部存款和储蓄器音讯
  • A: 依据各个系统资源的利用率对经过张开排序,有利于神速识别系统中品质不好的天职。
  • b: 展开只怕关闭表中首要性数字的加粗展现
  • c: 直接输入 top -c 或者(输入 top,然后输入快速键c)会切换呈现过程的一声令下名恐怕是做到的命令行输入音讯。
  • f: 步入 top 的交互式配置荧屏,用于依照特定的需求而设置 top 的显得。
  • o: 假诺想定制呈现 top 命令的出口顺序,举例私下认可是依据 piduser的依次来显示进度音信的,假使您想依附 userpid 来彰显,可以选用c 快捷键。输入top,然后在体现显示屏上输入o,就能够弹出二个互动分界面。假如想先出示列 USE冠道,就输入 E,然后回车,结果就打开了重排。
  • r: 调节优先级(renice)
  • k: 杀掉进程(kill)
  • z: 切换彩色或是非情势

1.Top-Linux进程监控

Linux下的Top命令是一个性能监控程序,许多系统管理员常常用它来监控Linux性能,在许多Linux或者类Unix操作系统里都有这个命令。Top命令用于按一定的顺序显示所有正在运行而且处于活动状态的实时进程,而且会定期更新显示结果。这条命令显示了CPU的使用率、内存使用率、交换内存使用大小、高速缓存使用大小、缓冲区使用大小,进程PID、所使用命令以及其他。它还可以显示正在运行进程的内存和CPU占用多的情况。对系统管理员来说,top命令式是一个非常有用的,它可用于监控系统并在需要的时候采取正确的处理动作。让我们看看实际中的top命令。

# top

Top命令举例
有关Top命令更多的例子,请阅读 :Linux下12个使用Top命令的例子。

接触 linux 的人对此 top 命令只怕不会面生(不相同系统名字可能不均等,如 IBM 的 aix 中叫 topas ),它的功力主要用来监督系统实时负载率、进度的财富占用率及任何各队系统状态属性是还是不是健康。 

【2】vmstat - 虚构内部存款和储蓄器计算

1.认识 vmstat

vmstat [options] [delay [count]]

vmstat 命令是最布满的 Linux/Unix 监察和控制工具,能够表现给定时期间隔的服务器的场地值,包含服务器的CPU使用率、内部存款和储蓄器使用、虚构内存交流情形以及 IO 读写景况。

vmstat 命令的 man

2. 尤为重要作用
vmstat 命令报告关于进度、内部存款和储蓄器、分页、块 IO、中断和 CPU 活动等音讯。

3. 翻看内部存款和储蓄器总计

vmstat 监控

Note:关于参数表达
procs ———–memory———- —swap– —–io—- -system– ——cpu—–
Procs
r b swpd free buff cache si so bi bo in cs us sy id wa st

  1. r: 处于运营队列中的内核线程数目(进程数),那么些值也能够看清是不是要求充实CPU。(短时间过量1)
  2. b:置于等待队列(等待能源、等待输入/输出)的内核线程数目; 处于block 队列中不可中断的进程数
    Memory
  3. swpd: 可用的虚拟交流内部存款和储蓄器,即便 swpd 的值不为 0,然则 SISO 的值长期为0,这种景观不会影响系统性情
  4. free:空闲物理内部存款和储蓄器大小
  5. buff:用作缓冲的内部存款和储蓄器大小
  6. cache:用作缓存的内部存款和储蓄器大小,要是 cache 值相当的大的时候,表达 cache 处的公文数多,假设一再探望到的文件都能被 cache 处,那么磁盘的读IO bi会十分小。
    Swap
  7. si: 从磁盘到内部存款和储蓄器的置换页数目 (单位/S)
    8.so: 从沟通内部存款和储蓄器到磁盘的沟通页数目(单位/S)
    IO
    9.bi: 接收到块设备的块数(块/秒)
    10.bo: 发送到块设备的块数(块/秒)
    System
    11.in: 每秒中断数,包含石英钟中断
    12.cs: 每秒上下文切换数
    CPU
    13.us: 全部进度客商态消耗CPU的时辰百分比。us值相比较高时,表达经过客户态消耗的CPU时间多,若是长时间过量二分一,供给考虑优化应用程序
    14.sy: 内核系统经超过实际行时间百分比(system time)。sy 值比较高时,表达经过内核态消耗的 CPU时间多;假诺 us sy 超过 80% ,就标注CPU财富存在欠缺。
    15.id: CPU 空闲时间百分比
  8. wa: IO等待时间百分比
  9. st: 虚构机占用 CPU 时间百分比。如若 wa 值超过 20%,说明 IO 等待严重。st 仅在 Linux 系统 vmstat 中显示

4. 选项(options)

选择用法表达

  • a:展现活动和非活动的页
  • f:展现运转后创立的历程总量
  • m:显示 slab 信息
  • n:头消息仅浮现叁遍
  • s:以表格格局浮现事件计数器和内存状态
  • d:彰显磁盘相关总括音讯
  • p:彰显内定磁盘分区总计新闻
  • S:输出音讯的单位。参数有 k 、K 、m 、M ,分别代表1000、1024、一千000、1048576字节(byte)。暗许单位为K(1024 bytes)
  • V:显示 vmstat 版本新闻。

5.参数

  • delay:刷新时间距离。若是不钦命,只突显一条结果。
  • count:刷新次数。假使不点名刷新次数,但钦命了刷新时间间隔,那时刷新次数为Infiniti。

6.应用实例

实例一:一般 vmstat 通过八个数字参数来成功,第贰个参数是采集样品的时日间隔数,单位是秒,第二个参数是采集样品的次数,

vmstat 2 1

其实,在使用进程中,平日习于旧贯在一段时间内平素监察和控制,不想监察和控制直接甘休 vmstat

实例二:显示活跃和非活跃内部存款和储蓄器

vmstat -a 2 3

使用 -a 选项展现活跃和非活跃内部存款和储蓄器时,所出示的开始和结果扩充 inactactive

字段补充表明
Memory(内存):
inact: 非活跃内部存款和储蓄器大小(当使用 -a 选项时展现)
active: 活跃的内部存款和储蓄器大小(当使用 -a 选项时显示)

实例三:查看系统已经 fork 了有一点点次

vmstat -f

翻开评论

linux 系统监察和控制工具1,学学linux 丰盛利用好 linux 系统自带的系统监察和控制工具得以高速方便地掌握系统性格以及任何事项,方便对系统进行...

2. VmStat – 虚拟内存统计

Linux 的 VmStat 命令用于显示虚拟内存、内核线程、磁盘、系统进程、I/O 块、中断、CPU 活动 等的统计信息。缺省情况下, vmstat 命令在 Linux 系统下不可用,你需要安装一个包含了 vmstat 程序的 sysstat 软件包。命令格式的常见用法是:

# vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free inact active si so bi bo in cs us sy id wa st 1 0 0 810420 97380 70628 0 0 115 4 89 79 1 6 90 3 0

更多的 vmstat 例子,请阅读 : 6 Linux 下的 Vmstat 命令实例

下面大家先来看张 top 截图:

3.Lsof-列出打开的文件

在许多Linux或者类Unix系统里都有lsof命令,它常用于以列表的形式显示所有打开的文件和进程。打开的文件包括磁盘文件、网络套接字、管道、设备和进程。使用这条命令的主要情形之一就是在无法挂载磁盘和显示正在使用或者打开某个文件的错误信息的时候。使用这条命令,你可以很容易地看到正在使用哪个文件。这条命令最常用的格式如下:

# lsofCOMMAND PID USER FD TYPE DEVICE SIZE NODE NAMEinit 1 root cwd DIR 104,2 4096 2 /init 1 root rtd DIR 104,2 4096 2 /init 1 root txt REG 104,2 38652 17710339 /sbin/initinit 1 root mem REG 104,2 129900 196453 /lib/ld-2.5.soinit 1 root mem REG 104,2 1693812 196454 /lib/libc-2.5.soinit 1 root mem REG 104,2 20668 196479 /lib/libdl-2.5.soinit 1 root mem REG 104,2 245376 196419 /lib/libsepol.so.1init 1 root mem REG 104,2 93508 196431 /lib/libselinux.so.1init 1 root 10u FIFO 0,17 953 /dev/initctl

有关lsof命令的用法和例子的更多信息,请参考: Linux下10个使用lsof命令的例子。

图片 7

4.Tcpdump-网络包分析器

Tcpdump是最广泛使用的网络包分析器或者包监控程序之一,它用于捕捉或者过滤网络上指定接口上接收或者传输的TCP/IP包。它还有一个选项用于把捕捉到的包保存到文件里,以便以后进行分析。在几乎所有主要的Linux发布里,tcpdump都可以使用。

# tcpdump -i eth0tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes22:08:59.617628 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 2532133365:2532133481(116) ack 3561562349 win 964822:09:07.653466 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 116:232(116) ack 1 win 964822:08:59.617916 IP 115.113.134.3.static-mumbai.vsnl.net.in.28472 > tecmint.com.ssh: . ack 116 win 64347

要想获得更多有关tcpdump用法的信息,请参阅: Linux下12个使用Tcpdump命令的例子。

(1)系统、职责总结信息:

5.Netstat-网络状态统计

Netstat是一个用于监控进出网络的包和网络接口统计的命令行工具。它是一个非常有用的工具,系统管理员可以用来监控网络性能,定位并解决网络相关问题。

# netstat -a | moreActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 0 *:mysql *:* LISTENtcp 0 0 *:sunrpc *:* LISTENtcp 0 0 *:realm-rusd *:* LISTENtcp 0 0 *:ftp *:* LISTENtcp 0 0 localhost.localdomain:ipp *:* LISTENtcp 0 0 localhost.localdomain:smtp *:* LISTENtcp 0 0 localhost.localdomain:smtp localhost.localdomain:42709 TIME_WAITtcp 0 0 localhost.localdomain:smtp localhost.localdomain:42710 TIME_WAITtcp 0 0 *:http *:* LISTENtcp 0 0 *:ssh *:* LISTENtcp 0 0 *:https *:* LISTEN

有关Netstat更多的例子,请参阅: Linux下20个使用Netstat命令的例子。

前 8 行是系统完整的总计音信。第 1 行是任务队列消息,同 uptime 命令的实行结果。其内容如下:

6. Htop – Linux进程监控

Htop 是一个非常高级的交互式的实时linux进程监控工具。 它和top命令十分相似,但是它具有更丰富的特性,例如用户可以友好地管理进程,快捷键,垂直和水平方式显示进程等等。 Htop是一个第三方工具,它不包含在linux系统中,你需要使用YUM包管理工具去安装它。 关于安装的更多信息,请阅读下文.

# htop

Htop 命令示例截图

对于Htop的安装,请读 : 在Linux安装Htop(Linux进程监控)

01:06:48

7.Iotop-监控Linux磁盘I/O

Iotop命令同样也非常类似于top命令和Htop程序,不过它具有监控并显示实时磁盘I/O和进程的统计功能。在查找具体进程和大量使用磁盘读写进程的时候,这个工具就非常有用。

# iotop

Iotop命令举例的截图
有关如何安装和使用iotop的信息,请阅读: 在Linux下安装Iotop。

8.Iostat-输入/输出统计

Iostat是一个用于收集显示系统存储设备输入和输出状态统计的简单工具。这个工具常常用来追踪存储设备的性能问题,其中存储设备包括设备、本地磁盘,以及诸如使用NFS等的远端磁盘。

# iostatLinux 2.6.18-238.9.1.el5 (tecmint.com) 09/13/2012avg-cpu: %user %nice %system %iowait %steal %idle 2.60 3.65 1.04 4.29 0.00 88.42Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtncciss/c0d0 17.79 545.80 256.52 855159769 401914750cciss/c0d0p1 0.00 0.00 0.00 5459 3518cciss/c0d0p2 16.45 533.97 245.18 836631746 384153384cciss/c0d0p3 0.63 5.58 3.97 8737650 6215544cciss/c0d0p4 0.00 0.00 0.00 8 0cciss/c0d0p5 0.63 3.79 5.03 5936778 7882528cciss/c0d0p6 0.08 2.46 2.34 3847771 3659776

有关iostat用法和举例的更多信息,请访问: Linux下6个使用iostat命令的例子。

当下时光

9.IPTraf-实时局域网IP监控

IPTraf是一个在Linux控制台运行的、开放源代码的实时网络(局域网)监控应用。它采集了大量信息,比如通过网络的IP流量监控,包括TCP标记、ICMP详细信息、TCP/UDP流量分离、TCP连接包和字节数。同时还采集有关接口状态的常见信息和详细信息:TCP、UDP、IP、ICMP、非IP,IP校验和错误,接口活动等。

IP流量监控
有关IPTraf工具用法以及其他更多信息,请访问: IPTraf网络监控工具。

up 1:22

10. psacct 或者 acct - 监视用户活动

psacct或者acct工具用于监视系统里每个用户的活动状况。这两个服务进程运行在后台,它们对系统上运行的每个用户的所有活动进行近距离监视,同时还监视这些活动所使用的资源情况。

系统管理员可以使用这两个工具跟踪每个用户的活动,比如用户正在做什么,他们提交了那些命令,他们使用了多少资源,他们在系统上持续了多长时间等等。

有关这些命令的安装和用法举例信息,请参阅文章:使用psacct或者acct监视用户活动。

系统运营时刻,格式为时:分

11.Monit - Linux进程和服务监控工具

Monit是一个免费的开源软件,也是一个基于网络的进程监控工具。它能自动监控和管理系统进程,程序,文件,文件夹,权限,总和验证码和文件系统。

这个软件能监控像Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH这样的服务。你可以通过命令行或者这个软件提供的网络借口来查看系统状态。

Monit Linux系统监控

更多内容请参阅:用Monit监控Linux进程

1 user

12.NetHogs-监视每个进程使用的网络带宽

NetHogs是一个开放源源代码的很小程序(与Linux下的top命令很相似),它密切监视着系统上每个进程的网络活动。同时还追踪着每个程序或者应用所使用的实时网络带宽。

NetHogs:Linux下的带宽监视
更多信息请参阅: 使用NetHogs监视Linux的网络带宽使用状况。

现阶段报到客商数

13.iftop-监视网络带宽

iftop是另一个在控制台运行的开放源代码系统监控应用,它显示了系统上通过网络接口的应用网络带宽使用(源主机或者目的主机)的列表,这个列表定期更新。iftop用于监视网络的使用情况,而'top'用于监视CPU的使用情况。iftop是'top'工具系列中的一员,它用于监视所选接口,并显示两个主机间当前网络带宽的使用情况。

iftop-监视网络带宽。

更多信息请参阅:iftop-监视网络带宽的使用情况。

load average: 0.06, 0.60, 0.48

14 Monitorix-系统和网络监控

Monitorix 是一个免费的轻量级应用工具,它的设计初衷是运行和监控Linux/Unix服务器系统和资源等。它有一个HTTP 网络服务器,这个服务器有规律的收集系统和网络的信息并以图形化的形式展示出来。它监控系统的平均负载和使用,内存分配、磁盘健康状况、系统服务、网络端口、邮件统计(Sendmail,Postfix,Dovecot等),MySQL统计,等等。它就是用来监控系统的总体性能,帮助发现失误、瓶颈和异常活动的。

系统负荷,即便命队列的平分长度。

15. Arpwatch – 以太网活动监视器

Arpwatch被设计用来监察和控制Linux上的以太网地址剖析(MAC和IP地址的变型)。他在一段时间内连发监察和控制以太网活动并出口IP和MAC地址配成对退换的日志。它还是能向管理员发送邮件文告,对地方配成对的增改发出警告。那对于检验互联网上的ARP攻击很有用。

愈来愈多音信请参阅 : Arpwatch to Monitor Ethernet Activity

四个数值分别为 1分钟、5分钟、15分钟前到今后的平均值。

16. Suricata – 互联网安全监察

Suricata 是一个开源的高品质网络安全、侵略检查测试和反监测工具,能够运营Linux、FreeBSD和Windows上。非营利组织OISF (Open Information Security Foundation)开辟并负有其版权。

越来越多新闻请参阅 : Suricata – A Network Intrusion Detection and Prevention System

17. VnStat PHP – 网络流量监控

VnStat PHP 是流行网络工具"vnstat"的基于web的前端呈现。VnStat PHP 将网络使用情况呈现在漂亮的图形界面中。他可以显示以小时、日、月计的上传和下载流量并输出总结报告。

更多信息请参阅 : VnStat PHP – Monitoring Network Bandwidth

18. Nagios – 网络/服务器监控

Nagios是领先而强大的开源监控系统,他可以让网络 /系统管理员在问题影响到正常的业务之前发现并解决它们。有了Nagios系统,管理员可以在单个窗口内远程检测Linux、Windows、开关、路由器和打印机。它可以危险警告并指出系统/服务器是否有异常,这可以间接帮助你在问题发生之前采取抢救措施。

...

细心:那四个值能够用来推断系统是不是负载过高——要是值

穿梭高于系统 cpu 个数,就必要优化你的程序照旧架构了。

(2)进程、 cpu 总结音信:

第 2~6 行为进度和CPU的音讯。当有四个CPU时,那些剧情只怕会超过两行。内容如下:

Tasks: 29 total

进度总量

1 running

正在运作的经过数

28 sleeping

睡觉的长河数

0 stopped

终止的进程数

0 zombie

丧尸进度数

Cpu(s): 0.3% us

顾客空间攻陷CPU百分比

1.0% sy

水源空间占有CPU百分比

0.0% ni

客商进度空间内转移过优先级的长河占用CPU百分比

98.7% id

空闲CPU百分比

0.0% wa

等候输入输出的CPU时间百分比

0.0% hi

Hardware IRQ

0.0% si

Software IRQ

 

注:

(1)ILANDQ: I奥迪Q7Q全称为Interrupt Request,正是“中断央浼”的野趣。

(2)st(Steal Time):Steal time is the percentage of time a virtual CPU waits for a real CPU while the hypervisor is servicing another virtual processor. It's only relevant in virtualized environments. It represents time when the real CPU was not available to the current virtual machine

本文由韦德国际1946发布于计算机网络,转载请注明出处:检查判断工具之,检查判断工具之top详解

关键词: