如何在Linux上使用“压力工具”强加高CPU负载和压力测试

作为系统管理员 ,你可能需要检查和监控你的Linux系统的状态,当他们在高负荷的压力。 这对于系统管理员和程序员来说是一个很好的方法:

  1. 微调系统上的活动。
  2. 监视操作系统内核接口。
  3. 测试你的Linux硬件部件 ,如CPU,内存,磁盘设备和许多其他观察在压力下的表现。
  4. 测量系统上不同的功耗负载。

Linux CPU负载应力测试与应力工具

在本指南中,我们将看一下两个重要的工具, 紧张压力纳克在你的Linux系统压力测试。

1. 压力 -是一个工作负载生成工具,旨在系统遭受CPU,内存,I / O和磁盘压力的配置措施。

2. 压力纳克 -是应力工作负载生成工具,测试你的系统以下功能的更新版本:

  1. CPU计算
  2. 驱动应力
  3. I / O同步
  4. 管I / O
  5. 缓存抖动
  6. VM应力
  7. socket应力
  8. 过程创建和终止
  9. 上下文切换属性

虽然这些工具有助于检查您的系统,但它们不应该只由任何系统用户使用。

重要说明 :强烈建议您使用这些工具以root用户权限,因为他们可以强调你的Linux机器这么快,以避免某些系统错误在设计不良的硬件。

如何在Linux中安装“压力”工具

要安装在Debian和它的衍生物,Ubuntu薄荷压力的工具,运行以下命令。

$ sudo apt-get install stress

要在RHEL / CentOS的Fedora Linux上安装压力,你需要打开EPEL资源库 ,然后键入以下命令Yum安装相同的:

# yum install stress

使用压力的一般语法:

$ sudo stress option argument

您可以与压力使用某些选项。

  1. 产卵ñ工人开方纺()函数,按如下方式使用-cpu N选项。
  2. 产卵ñ工人同步纺()函数,使用如下-io N选项。
  3. 产卵ñ工人纺的malloc()/ free()的函数,使用-vm N选项。
  4. 为了分配每个VM工人内存,使用-vm字节N选项。
  5. 相反,释放和重新分配内存资源,可以通过-vm-keep选项redirty内存。
  6. 通过-vm恒N选项释放内存之前设置睡眠N秒。
  7. 产卵ñ工人写纺()/取消链接()函数,使用-hdd N选项。
  8. 您可以通过使用-timeout N选项设置N秒后超时。
  9. 任何工作使用-backoff N选项如下开始前组N个微秒的等待因素。
  10. 要在运行时的应力显示更详细的信息,请使用-v选项。
  11. 使用-help查看帮助使用压力或查看联机帮助页。

如何在Linux系统上使用压力?

1.在每次运行它时检查命令的效果,首先运行uptime命令,记下平均负载。

接下来,运行压力命令以20秒的超时产卵8工作者纺的sqrt()。 运行压力后,再次运行uptime命令,并比较平均负载。

youcl@youcl ~ $ uptime
youcl@youcl ~ $ sudo stress --cpu  8 --timeout 20
youcl@youcl ~ $ uptime
示例输出
youcl@youcl ~ $ uptime    
17:20:00 up  7:51,  2 users,  load average: 1.91, 2.16, 1.93     [<-- Watch Load Average]
youcl@youcl ~ $ sudo stress --cpu 8 --timeout 20
stress: info: [17246] dispatching hogs: 8 cpu, 0 io, 0 vm, 0 hdd
stress: info: [17246] successful run completed in 21s
youcl@youcl ~ $ uptime
17:20:24 up  7:51,  2 users,  load average: 5.14, 2.88, 2.17     [<-- Watch Load Average]

2.要spwan 8工作者纺的sqrt()以30秒的超时,显示有关操作的详细信息,运行以下命令:

youcl@youcl ~ $ uptime
youcl@youcl ~ $ sudo stress --cpu 8 -v --timeout 30s
youcl@youcl ~ $ uptime
示例输出
youcl@youcl ~ $ uptime
17:27:25 up  7:58,  2 users,  load average: 1.40, 1.90, 1.98     [<-- Watch Load Average]
youcl@youcl ~ $ sudo stress --cpu 8 -v --timeout 30s
stress: info: [17353] dispatching hogs: 8 cpu, 0 io, 0 vm, 0 hdd
stress: dbug: [17353] using backoff sleep of 24000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 8 [17354] forked
stress: dbug: [17353] using backoff sleep of 21000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 7 [17355] forked
stress: dbug: [17353] using backoff sleep of 18000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 6 [17356] forked
stress: dbug: [17353] using backoff sleep of 15000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 5 [17357] forked
stress: dbug: [17353] using backoff sleep of 12000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 4 [17358] forked
stress: dbug: [17353] using backoff sleep of 9000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 3 [17359] forked
stress: dbug: [17353] using backoff sleep of 6000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 2 [17360] forked
stress: dbug: [17353] using backoff sleep of 3000us
stress: dbug: [17353] setting timeout to 30s
stress: dbug: [17353] --> hogcpu worker 1 [17361] forked
stress: dbug: [17353] youcl@youcl ~ $ uptime
17:27:59 up  7:59,  2 users,  load average: 5.41, 2.82, 2.28     [<-- Watch Load Average]

3.要spwan 的malloc()free()函数的一个工人60秒超时,运行以下命令。

youcl@youcl ~ $ uptime
youcl@youcl ~ $ sudo stress --vm 1 --timeout 60s 
youcl@youcl ~ $ uptime
示例输出
youcl@youcl ~ $ uptime
17:34:07 up  8:05,  2 users,  load average: 1.54, 2.04, 2.11     [<-- Watch Load Average]
youcl@youcl ~ $ sudo stress --vm 1 --timeout 60s 
stress: info: [17420] dispatching hogs: 0 cpu, 0 io, 1 vm, 0 hdd
stress: info: [17420] successful run completed in 60s
youcl@youcl ~ $ uptime
17:35:20 up  8:06,  2 users,  load average: 2.45, 2.24, 2.17     [<-- Watch Load Average]

4.要spwan 4个工人在纺纱的sqrt(),2个工人spwaning上同步(),2名工人的malloc()/ free()的,具有超时20秒和分配每个VM工人256MB的内存,运行此命令。

youcl@youcl ~ $ uptime
youcl@youcl ~ $ sudo stress --cpu 4 --io 3 --vm 2 --vm-bytes 256M --timeout 20s 
youcl@youcl ~ $ uptime
示例输出
youcl@youcl ~ $ uptime
17:40:33 up  8:12,  2 users,  load average: 1.68, 1.84, 2.02     [<-- Watch Load Average]
youcl@youcl ~ $ sudo stress --cpu 4 --io 3 --vm 2 --vm-bytes 256M --timeout 20s
stress: info: [17501] dispatching hogs: 4 cpu, 3 io, 2 vm, 0 hdd
stress: info: [17501] successful run completed in 20s
youcl@youcl ~ $ uptime
17:40:58 up  8:12,  2 users,  load average: 4.63, 2.54, 2.24     [<-- Watch Load Average]
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏