简单来说,stress是linux系统下做压力测试的一个工具,其主要的几个功能如下:
a.测试CPU负荷
输入命令:stress –c 4
增加4个cpu进程,处理sqrt()函数函数,以提高系统CPU负荷
b.内存测试
输入命令:stress –i 4 –vm 10 –vm-bytes 1G –vm-hang 100 –timeout 100s
新增4个io进程,10个内存分配进程,每次分配大小1G,分配后不释放,测试100S
c.磁盘I/O测试
输入命令:stress –d 1 --hdd-bytes 3G
新增1个写进程,每次写3G文件块
d.硬盘测试(不删除)
输入命令:stress –i 1 –d 10 --hdd-bytes 3G –hdd-noclean
新增1个IO进程,10个写进程,每次写入3G文件块,且不清除,会逐步将硬盘耗尽。
用top指令可以查看机器的情况:
参数含义:
load average:当前系统负载的平均值,后面的3个值分别为1分钟、5分钟、15分钟前进程的平均数。
表示CPU的几个参数:
us:用户空间占用CPU百分比
sy:内核空间占用CPU百分比
ni:用户进程空间内改变过优先级的进程占用CPU百分比
id:空闲CPU百分比
wa:等待输入输出的cpu时间百分比
输入top后,按大写P,以CPU占用大小排序,按M,以内存占用大小排序
s-tui是开源的一个工具,可以监测机器指标,同时可以用stress注入故障:
ubuntu系统直接pip install s-tui&apt-get install stress就可以了(注意s-tui要放置在PATH下,才能直接输入s-tui启动)
启动后效果如下,可以看到四个指标(其中不是每个指标都能显示的,比如温度有些机器就无法监控到)
可以在这里进行stress的配置,然后可以从监控器上看到变化