4 minutes reading time
最近出现了服务器cpu、内存升高导致服务器宕机的问题,发生宕机后,往往由于对系统资源数据收集的不齐全,导致无法快速查明发生宕机的原因。在通过云厂商客服和网络相关资料帮助下,了解了 atop 这个工具,本机对 atop 的安装及使用进行介绍。
atop 是一款用于监控 Linux 系统资源与进程的工具,能够报告所有进程的活动。其以一定的频率记录系统和进程活动,采集的数据包含 CPU、内存、磁盘、网络的资源使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中。对于每个进程,会显示CPU使用率、内存增长、磁盘使用率、优先级、用户名、状态和退出码等。当服务器出现问题后,可以根据相应的atop日志文件进行分析。
atop 不是系统的内部自带命令,需要进行安装,接下来以 Ubuntu 系统为例子,介绍如何安装 atop 命令。
1 更新软件源
执行 sudo apt update
进行软件源的更新。
2 安装 atop
执行 sudo apt install atop
命令安装 atop。
安装完 atop 后,可以使用 atop 的默认配置使用,也可根据使用情况修改默认配置,atop 默认配置在 /etc/sysconfig/atop
,查看默认配置文件内容:
# /etc/default/atop
# see man atoprc for more possibilities to configure atop execution
LOGOPTS="-R"
LOGINTERVAL=600
LOGGENERATIONS=28
LOGPATH=/var/log/atop
LOGINTERVAL 是监控周期,默认600s,LOGGENERATIONS是日志文件保留周期,默认是28天,可以根据具体的需求进行修改。
命令行输入 atop
命令即可使用,可以看到分为2块,上部是系统资源的使用情况,下部是没个进程的使用情况。
如果想看内存的使用情况,可以添加 -m
参数或者在 atop 命令输入 m
如果想看磁盘的情况可以输入 d,输入 c 可以查看各个进程的cpu使用情况。
atop 还有其它命令参数,具体可以执行 atop -h
查看。
系统出现问题时,往往无法实时的查看系统资源的情况,这时我们可以通过 atop 的日志文件进行针对分析,atop 的日志文件存放在 /var/log/atop
路径下,
可以使用 atop -r /var/log/atop/atop_xx
命令进行查看分析,执行命令后同样进入相应的界面,但此界面不会实时更新数据,我们可以使用相应的命令进行 cpu 内存 磁盘等资源的分析。
本文介绍了 linux 上一个常用的系统资源进程监控工具,通过此工具可以分析系统资源和进程的使用情况,并且可以针对不同时间点进行分析研究。 atop 是一个复杂的工具,需要我们持续学习使用。