FIO 在正常的测试生活中是真没少用,正常就是安装了fio后,直接开干,比如下面的
fio -ioengine=libaio -direct=1 -bs=4k -thread -rw=randread -size=100G -filename=/dev/scinia -name='fio read test' -iodepth=64 -runtime=60 -numjobs=16 -time_based=1 -allow_mounted_write=1 -group_reporting >>4kread.txt
测试4k 随机读 iodepth 64 job 为16 单个机器可以这样进行测试的,但如果出现多个机器的话
如何进行测试,此外如果为了提高效率,最好的方法是进行帮核的操作,又如何进行呢?
其实也不复杂,fio也是有方法进行测试的如下
1 安装了fio后,比如有2个节点,可以在hosts文件中分别写入2个节点的ip信息
2 每个节点分别作为server 进行使用 如fio --server 即可运行
3 在其中一个节点中进行client 操作 fio --client=host.list 4kjobrandread
需要创建一个hosts文件 一个fio的jjob文件 如下
fio job中写入如下 其中job 中的下面 可以输入cpu_allowed=xx--xx 进行cpu帮核操作,这样可以很好的提高性能
如果涉及到是分布式存储的话,最好是能和网卡同一个Numa node
如何查看如下:
lscpu 查看当前的node信息
查看当前主频信息
cpupower monitor
可以在/etc/default/grub 中进行设置如下
intel_idle.max_cstate=0 processor.max_cstate=1 intel_pstate=disable idle=poll
grub2-mkconfig --output=/boot/efi/EFI/redhat/grub.cfg
这样重启后,主频都会在最高状态下
可以查看当前的tuned 进行设置相应的信息
yum install tuned -y
tuned-adm list
tuned-adm active
tuned-adm profile throughput-performance
check 网卡属于哪个numa node 信息
对网卡进行帮核操作
在绑核之前要先关闭中断平衡,再进行绑核,将网卡绑到逻辑CPU 20-23上面,此处用的是脚本smart_irq_affi.sh(https://download.csdn.net/download/qq_44777969/12691687)来进行绑核的
# systemctl stop irqbalance
安装numactl yum -y install numactl numastat
使用numactl -c 进行测试fio进行测试