Linux监控工具(atop安装使用)
atop是一个功能强大的linux服务器监控工具,它支持收集和显示CPU,内存,磁盘,网络,进程等资源的相关信息,负载比较大的资源信息会以特别的颜色显示, 可以作为系统管理的辅助工具使用。官方网站为:
http://www.atoptool.nl/
项目官方wiki地址:http://fedoraproject.org/wiki/EPEL/zh-cn
一、安装
1.yum安装
安装atop需要先安装第三方源:安装第三方yum源EPEL,EPEL的全称叫 Extra Packages for Enterprise Linux。
yum install epel-release#
yum install -y atop
二、使用介绍 运行atop n,可每隔n秒显示系统资源信息:
ATOP - server12020/09/0221:25:33--------------5s elapsed
PRC | sys0.08s| user0.02s| #proc96| #trun1| #tslpi155| #tslpu0| #zombie0| clones0|| #exit0|
CPU | sys0%| user0%| irq0%| idle200%| wait0%| guest0%| ipc notavail| cycl unknown| curf?MHz| curscal?%|
cpu | sys0%| user0%| irq0%| idle100%| cpu000 w0%| guest0%| ipc notavail| cycl unknown| curf?MHz| curscal?%|
cpu | sys0%| user0%| irq0%| idle100%| cpu001 w0%| guest0%| ipc notavail| cycl unknown| curf?MHz| curscal?%|
CPL | avg10.00| avg50.04| avg150.05||| csw710| intr626||| numcpu2|
MEM | tot974.6M| free242.4M| cache 395.2M| buff2.0M| slab90.3M| shmem7.7M| shrss0.0M| vmbal0.0M| hptot0.0M| hpuse0.0M|
SWP | tot2.0G| free2.0G||||||| vmcom1.2G| vmlim2.5G|
DSK |sda| busy0%| read0| write21| KiB/r0| KiB/w11| MBr/s0.0| MBw/s0.0| avq11.20| avio 0.48 ms|
NET | transport| tcpi2| tcpo3| udpi0| udpo0| tcpao0| tcppo0| tcprs0| tcpie0| udpie0|
NET | network| ipi2| ipo3| ipfrw0| deliv2|||| icmpi0| icmpo0|
NET | ens330%| pcki2| pcko3| sp 1000 Mbps| si0 Kbps| so0 Kbps| erri0| erro0| drpi0| drpo0|PIDSYSCPUUSRCPUVGROWRGROWRDDSKWRDSKRUIDEUIDSTEXCTHRSCPUNRCPUCMD1/1
25400.05s0.01s0K0K0K0Krootroot---1R11%atop
7370.00s0.01s0K0K0K0Kmysqlmysql---30S10%mysqld
5440.01s0.00s0K0K0K0Krootroot---2S00%vmtoolsd
30.01s0.00s0K0K0K0Krootroot---1S00%ksoftirqd/0
2850.01s0.00s0K0K0K0Krootroot---1S10%xfsaild/sda2
7050.00s0.00s0K0K0K0Krootroot---3S10%rsyslogd
Atop行显示服务器的主机名、当前时间以及信息收集频率。
ATOP - server12020/09/0221:25:33--------------5s elapsed
PRC行显示系统进程相关汇总信息:
- sys:采样周期内所有进程在系统态运行时间总和
- user 采样周期内所有进程在用户态运行时间综合
- proc 采样周期内进程总数
- tslpu 采样周期内处于不可中断的睡眠状态的进程数
- zombie 采样周期内僵死状态进程数
- exit 采样周期内退出的进程数
PRC | sys0.08s| user0.02s| #proc96| #trun1| #tslpi155| #tslpu0| #zombie0| clones0|| #exit0|
CPU行显示服务器CPU利用率汇总信息,各个cpu行显示各个cpu核上利用率汇总信息:
- sys 采样周期内CPU处于系统态的利用率
- user 采样周期内CPU处于用户态的利用率
- idle 采样周期内CPU处于空闲状态的比例
CPU | sys0%| user0%| irq0%| idle200%| wait0%| guest0%| ipc notavail| cycl unknown| curf?MHz| curscal?%|
cpu | sys0%| user0%| irq0%| idle100%| cpu000 w0%| guest0%| ipc notavail| cycl unknown| curf?MHz| curscal?%|
cpu | sys0%| user0%| irq0%| idle100%| cpu001 w0%| guest0%| ipc notavail| cycl unknown| curf?MHz| curscal?%|
CPL行显示CPU负载信息:
- avg1 过去1分钟进程等待队列数
- avg5 过去5分钟进程等待队列数
- avg15 过去15分钟进程等待队列数
- csw(context swapping) 上下文交换次数
- intr(interrupt) 中断发生的次数
- numcpu cpu的核数
CPL | avg10.00| avg50.04| avg150.05||| csw710| intr626||| numcpu2|
MEM行显示内存使用信息:
- tot 物理内存总量
- free 空闲内存大小,不包含cache和buffer的内存
- cache 用于页缓存的内存大小
- buff 用于文件缓存的内存大小
- slab 系统内核占用的内存大小
MEM | tot974.6M| free242.4M| cache 395.2M| buff2.0M| slab90.3M| shmem7.7M| shrss0.0M| vmbal0.0M| hptot0.0M| hpuse0.0M|
SWP行显示交换空间使用情况:
SWP | tot2.0G| free2.0G||||||| vmcom1.2G| vmlim2.5G|
LVM,DSK行显示磁盘逻辑卷和分区使用情况:
- busy 磁盘忙时所占比例
- read KiB/r 、MBr/s 每秒读的请求数和请求的kb、mb数
- write KiB/w 、MBr/w 每秒写的请求数和请求的kb、mb数
- avio 磁盘的平均io时间
LVM |system-root |busy1% | read0 |write16 | MBw/s0.0 |avio 1.50 ms |
DSK |sda| busy0%| read0| write21| KiB/r0| KiB/w11| MBr/s0.0| MBw/s0.0| avq11.20| avio 0.48 ms|
NET 显示传输层、网络层、各个网络接口的网络传输信息:
- sp 网卡的带宽
- pcki 传入的数据包的大小
- pcko 传出的数据包的大小
- si 每秒传入的数据大小
- so 每秒传出的数据大小
- coll 每秒的冲突数
- mlti 每秒的多路广播的数量
- erri/erro 每秒输入输出的错误数
- drpi/drpo 每秒的输入输出的丢包数
NET | transport| tcpi2| tcpo3| udpi0| udpo0| tcpao0| tcppo0| tcprs0| tcpie0| udpie0|
NET | network| ipi2| ipo3| ipfrw0| deliv2|||| icmpi0| icmpo0|
NET | ens330%| pcki2| pcko3| sp 1000 Mbps| si0 Kbps| so0 Kbps| erri0| erro0| drpi0| drpo0|
最下边显示的各进程的具体信息,可输入m(内存)、p(进程)、u(用户)、d(磁盘)、c(进程运行的代码)、v(线程)切换显示模式,不同模式下的显示信息这里不再展开,可使用 man atop查看atop的手册。
PIDSYSCPUUSRCPUVGROWRGROWRDDSKWRDSKRUIDEUIDSTEXCTHRSCPUNRCPUCMD1/1
25400.05s0.01s0K0K0K0Krootroot---1R11%atop
7370.00s0.01s0K0K0K0Kmysqlmysql---30S10%mysqld
m模式:内存状态模式
- SYSCPU:过去10s内进程处于内核模式占用的CPU时间
- USRCPU:过去10S进程处于用户模式占用的CPU时间
- VSIZE:过去10S进程占用的虚拟空间大小
- RSIZE:过去10S进程占用的内存空间大小
- PSIZE:过去10S进程占用的页大小
- VGROW:过去10S进程增长的虚拟空间大小
- RGROW:过去10S进程增长的内存大小
- SWAPSZ:过去10S进程使用交换空间的大小。
- MEM:过去10S进程占用内存百分比
- RDDSK:过去10S进程读磁盘的数据量
- WRDSK:过去10S进程写磁盘的数据量
- DSK:过去10S进程所占磁盘的百分比
- CMD:进程名
- NPROCS:相同名称的进程数量
- 其它的参数上面已经有列出
u模式:用户模式
- 根据用户进行分组显示
- s:进程当前的状态,包括:s(sleeping),R(runing)等
- /etc/atop:目录保存的是atop的配置文件
- /etc/rc.d/init.d/atop:atop的启动文件
- /etc/cron.d/atop:atop的定时任务文件,默认是每天0点开始
- /var/log/atop:atop日志文件,默认是每天0点开始会产生当天的一个日志文件,然后可以通过atop -r file 查看信息,但是没有找到自动播放的的功能,只能通过输入b显示一个指定的时间的信息,可以写个循环来实现
- /usr/bin/atop:atop命令目录
对于atop日志文件的保存方式,我们可以这样:
》每天保存一个atop日志文件,该日志文件记录当天信息
》日志文件以”atop_YYYYMMDD”的方式命名
》设定日志失效期限,自动删除一段时间前的日志文件
在atop.daily脚本中,我们可以通过修改INTERVAL变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天):
(sleep 3; find 'atop_*' -mtime +28 -exec rm {} ; )&最后,我们修改cron文件,每天凌晨执行atop.daily脚本:
0 0 * * * root /etc/cron.daily/atop.daily
推荐阅读
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 孩子不是实现父母欲望的工具——林哈夫
- Linux下面如何查看tomcat已经使用多少线程
- Beego打包部署到Linux
- 最有效的时间管理工具(赢效率手册和总结笔记)
- 工具|后天就是七夕节,你准备好了吗(送上几个七夕代码,展示你技能的时候到了!)
- 工具分享|5个有趣好玩的网站,拒绝无聊!
- Linux|109 个实用 shell 脚本
- 工具人的一天
- linux定时任务contab