测试磁盘fio性能

本文档介绍了如何使用fio工具在Linux服务器上进行磁盘性能测试,包括测试脚本的编写和测试结果的解读。
摘要由CSDN通过智能技术生成

1、测试脚本

#!/bin/bash
#脚本功能
#1.按顺序测试裸盘性能(包括1m随机读、1m顺序读、1m顺序写,128k随机读、128k顺序读、128k顺序写、4k随机读、4k随机写
#2.测试1、32深度、每个测试5分钟
#3.保存完整的测试结果至/sf/log/vs/vst_perf/路径下
#4.精简结果也保存在/sf/log/vs/vst_perf/vst_diskPerf_fio中
#5. 对于混合读写,如果没有指定rwmixread或者rwmixwrite, 混合比例默认是50
#6. 对于precondition, 如果没有指定loops, 默认loops=1

#输入参数 /dev/sdX ---待测磁盘盘符

RESULT_DIR=/sf/log/vs/vst_perf

# rw_type :    读写模型,包括read write randread randwrite
# bs_type :    块大小,包括1m,128k,4k
# depth_type : 深度列表,包括1,32

function do_fio_test()
{
   
    local filename=$1
    local rw_type=$2
    local bs_type=$3
    local depth_type=$4

    local rw_model=""
    local cmd=""
    local result_file=""

    local summary_result="$RESULT_DIR/vst_diskPerf_fio.log"
 	file_end=$(echo $filename |awk -F '/' '{print $3}')
    if [[ "$rw_type" =~ "randrw" ]];then
        rw_model="$rw_type -rwmixread=70"
    else
        rw_model="$rw_type"
    fi

	for depth in $depth_type; do
        result_file="$RESULT_DIR/fio_${bs_type}_${rw_type/=/-}_$file_end.log"
        cmd="fio -name=fiotest -filename=$filename -group_reporting -direct=1 -iodepth=$depth -ioengine=libaio -rw=$rw_model -bs=$bs_type -numjobs=1 -runtime=300"
        echo "$cmd > $result_file"
        $cmd > $result_file

        echo $result_file >> $summary_result

        if [[ "$result_file" =~ "rw" ]];then
            grep -E "read :|write:" $result_file >> $summary_result
        else
            if [[ "$result_file" =~ "read" ]];then
                grep "read :" $result_file >> $summary_result
            else
                grep "write:" $result_file >> $summary_result
            fi
        fi

    done
}

#从原始数据中过滤出吞吐量和iops
function analize_result()
{
   
    for file in $(find $RESULT_DIR -maxdepth 1 -type f -name "fio*.log"
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值