利用atop进行性能监控分析
atop 是一款功能强大的Linux性能监控和分析工具,它可以实时显示系统资源使用情况,并可以保存历史记录供后续分析。以下是atop在 Centos 7 上的安装部署教程,以供参考。
安装atop工具
- 安装atop
yum install -y atop
systemctl start atop
systemctl enable atop
- 附1:如果安装atop提示
No package atop available.
则需要先装EPEL仓库,再装atop
yum install -y epel-release
yum install -y atop
- 附2:如果安装epel-release之后,再次安装atop提示
Error: Nothing to do
则可尝试yum localinstall
的方式来安装
[root@localhost ~]# yum install -y epel-release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cloud.aliyuncs.com
* extras: mirrors.cloud.aliyuncs.com
* updates: mirrors.cloud.aliyuncs.com
Package epel-release-7-11.noarch already installed and latest version
Nothing to do
[root@localhost ~]# yum install -y atop
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cloud.aliyuncs.com
* extras: mirrors.cloud.aliyuncs.com
* updates: mirrors.cloud.aliyuncs.com
No package atop available.
Error: Nothing to do
[root@localhost ~]# wget -c http://iso.sqlfans.cn/linux/atop-2.6.0-1.el7.x86_64.rpm
[root@localhost ~]# rpm -ivh atop-2.6.0-1.el7.x86_64.rpm
error: Failed dependencies:
/usr/bin/python3 is needed by atop-2.6.0-1.x86_64
python3 is needed by atop-2.6.0-1.x86_64
[root@localhost ~]# yum localinstall --nogpgcheck atop-2.6.0-1.el7.x86_64.rpm
[root@localhost ~]# atop -V
Version: 2.6.0 - 2020/12/21 20:45:10 <gerlof.langeveld@atoptool.nl>
使用atop工具
- 查看实时系统指标
atop 5 #.每5秒查看一次系统指标
atop -M 10 30 #.查看当前时间之后5分钟内(间隔10秒,共30次)的系统指标
atop -M 60 10 > /tmp/atop.mem #.查看当前时间之后10分钟(间隔60秒,共10次)的系统指标,并将结果写入文件
- 查看历史指标日志
atop -r #.查看当天历史指标日志
atop -r y #.查看昨天历史指标日志
atop -r 20241113 #.查看指定日期内的历史指标日志。示例为2024年11月13日
atop -r 20241113 -b 14:00 #.查看指定日期内自指定时间起的历史指标日志。示例为2024年11月13日14:00起始
atop -r 20241113 -b 00:04 -e 00:08 #.查看指定日期内,指定时间段的历史指标日志。示例为2024年11月13日00:04至00:08
- 查看系统活动报告
atopsar -c 5 12 #.查看当前系统在1分钟内(间隔5秒,共12次)的CPU利用率报告
atopsar -m -b 18:00 -e 18:01 #.查看当天指定时间段的内存指标报告。示例为18:00至18:01
atopsar -c -r 20241113 -b 18:00 -e 18:01 #.查看指定日期内,指定时间段的内存指标报告。示例为2024年11月13日18:00至18:01
- 分析atop日志文件
atop -r /var/log/atop/atop_2024xxxx #.分析atop日志文件
配置atop工具
自定义atop监控周期及日志保留时间
- atop服务启动后,默认将采集记录存放在
/var/log/atop
目录下的日志文件中,atop默认每600秒采集一次系统信息,日志保留时间为28天。 - 如果这些配置不适合实际需求,可手动修改配置文件,示例中将监控周期修改为15秒,日志保留时间设定为14天
[root@localhost ~]# cat /etc/sysconfig/atop
LOGOPTS=""
LOGINTERVAL=15
LOGGENERATIONS=14
LOGPATH=/var/log/atop
- 修改完配置文件,记得重启atop服务以生效
systemctl restart atop
- 基于配置文件的策略,执行如下命令,为atop配置按天轮转日志策略(每天生成一个日志文件),并将atop服务设置为开机启动并启动服务
systemctl enable --now atop atopacct atop-rotate.timer
加载可选的netatop内核模块
- 如需监测网络使用率,可安装网络监控模块 netatop
#.安装yum依赖
yum install -y kernel-devel dkms elfutils-libelf-devel
#.安装netatop
cd /opt/
wget -c https://www.atoptool.nl/download/netatop-3.2.2.tar.gz --no-check-certificate
tar -zxvf netatop-3.2.2.tar.gz
cd netatop-3.2.2
make && make install
systemctl start netatop