CPU调优 mpstat命令

目录

一 mpstat命令

1.1 下载mpstat软件包

1.2  mpstat命令的含义

1.3 显示所有CPU的统计信息(4 3 表示每4秒运行一次,总共运行3次)

1.4 平均负载信息

二 压力测试工具stress

2.1 参数详情

2.2 安装工具

三 实验

3.1 模拟CPU负载

3.1.1 查看系统平均负载情况:uptime

3.1.2  压力测试查看CPU的使用率

3.1.3 进行压力测试 

3.1.4 查看进程和任务

3.1.5  问题原因:压力测试导致CPU负载

3.2 模拟I/O负载 

3.2.1 进行压力测试

3.2.2  压力测试结果

3.2.3 找出问题原因:查看是否有进程导致I/O读写负载

四 本章总结


一 mpstat命令

1.1 下载mpstat软件包

yum install -y sysstat

1.2  mpstat命令的含义

显示参数

描述

CPU

显示的是某个CPU0-n-1 还是全部CPU  all=全部

%usr

表示用户所有使用的CPU百分比

%nice

表示使用nice值的CPU的百分比

%sys

表示内核进程使用的CPU百分比

%iowait

表示等待进行I/O所使用的CPU时间百分比

%irq

表示用于处理系统中断的CPU百分比

%soft

表示用于软件中断的CPU百分比

%steal

虚拟机强制CPU等待的时间百分比

%guest

虚拟机占用CPU时间的百分比

%gnice

CPU运行niced guest虚拟机所花费的时间百分比

%idle

CPU的空闲时间的百分比

1.3 显示所有CPU的统计信息(4 3 表示每4秒运行一次,总共运行3次)

mpstat -P ALL 4 3

 显示第一块CPU的显示信息

1.4 平均负载信息

使用uptime来了解系统的负载情况

如果单个CPU性能活动进程数不大于3,表示系统情况良好

 最后三个数表示1分钟,5分钟,15分钟的平均负载值

二 压力测试工具stress

stress是linux下的一个压力测试工具,可以对CPU、memory(内存)I/O和磁盘进行压力测试,可以指定负载的CPU个数

2.1 参数详情

-c

--cpu

产生n个进程,每个进程都反复不停的计算随机数的平方根

-i

--io

产生n个进程,每个进程反复调用,将内存上的内容写到硬盘上

-m

--vm

产生n个进程,每个进程不断分配和释放内容

-t

--timeout

在n秒后结束进程

-d

--hdd

产生n个不断执行write和unlink函数的进程(创建文件、写入内容、删除文件)

2.2 安装工具

yum install -y epel-release

yum install -y stress

三 实验

3.1 模拟CPU负载

3.1.1 查看系统平均负载情况:uptime

3.1.2  压力测试查看CPU的使用率

压力测试前的CPU使用率

3.1.3 进行压力测试 

stress --cpu 2 --timeout 600  #对两块CPU压力测试,持续600秒

 通过mpstat可以看到CPU的使用率为100%

3.1.4 查看进程和任务

pidstat -u 5 查看进程和任务,每5秒刷新一次

3.1.5  问题原因:压力测试导致CPU负载

解决问题:杀死负载进程,释放CPU

kill -9+进程号

3.2 模拟I/O负载 

3.2.1 进行压力测试

stress --io 15 --hdd 15 --timeout 600s/stress -i 15 -d 15 -t 600s  #产生10个进程,持续600秒

3.2.2  压力测试结果

mpstat -P ALL 1 2

3.2.3 找出问题原因:查看是否有进程导致I/O读写负载

pidstat -d 1 3  #查看各进程情况

问题原因:stress占用进程倒是io读写过高

解决方法:杀死进程

四 本章总结

cpu使用率是单位时间内cpu繁忙情况的统计,跟系统平均负载不一定完全对应,系统中存在大量等待cpu调度的进程,会使load average平均负载和cpu使用率都升高,mpstat的全称为Multiprocessor Statistics,是一款常用的多核CPU性能分析工具,用来实时查询每个CPU的性能指标,以及所有CPU的平均指标。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值