快速写文件dd:
创1T文件:dd if=/dev/zero of=/mnt/sparse_file.txt bs=400M count=2500
监控dd进度:watch -n2 'kill -USR1 $(pgrep ^dd)'
可以考虑用truncate --size 1T file_name
# 设定写5T数据的定时任务
# [root@iz2ze9s4hsntd6vayp5ugdz bin]# crontab -l
# 45 4 3 * * nohup fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randwrite -bs=10M -size=5120G -name=file_5T -directory=/mnt/alinas_test_5T/ --write_bw_log=/mnt/alinas_test_5T/write_5T --write_iops_log=/mnt/alinas_test_5T/write_5T -write_lat_log=/mnt/alinas_test_5T/write_5T -output=/mnt/alinas_test_5T/final_out_write_5T.log &
fio读文件操作:
fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randread -bs=1M -size=1024G -name=file_1 -directory=/mnt/alinas_test/ --write_bw_log=/mnt/alinas_test/write_1T --write_iops_log=/mnt/alinas_test/write_1T -write_lat_log=/mnt/alinas_test/write_1T -output=/mnt/alinas_test/final_out_write_1T.log
多态ecs压测方案:
目前单台ecs nfs 支持的最大读带宽为500MB/S
多台ecs 固定一台ecs上开发一个sh脚本。在每个ecs上面执行scp 脚本拷贝
sh 脚本名.sh 1t file_name log_dir
truncate --size $1 $2
nohup fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randread -bs=1M -size=1024G -name=$1 -directory=/mnt -output=$3 &
while 循环获取 获取fio任务的pid 当任务结束后
获取bw与lat对应内容 写入log
后台启动一个检测脚本
当文件夹下log数目达到结点数目后
执行
在固定ecs获取每个结点的log ,cat >> 到第一个文件中