????????¨?|?????μ?èˉ??-???¨????§è????ˉ??|?-£??????
????????¨?£??????ˉ????????¨??…?????ˉ?°‘???????aé…??????????????????ˉ????¤??ooé???????¥é?“è?a?·±????????¨????£????????§è????°?o????1???·???????¤??’??¤§???????o??μ?èˉ??£?????§è??????–1?3????????????ˉ??¥????????°???
????‰?????μ?????????‰?–1IO?μ?èˉ??·¥?…·??‰fio??iometer?’?Orion???è????‰?§??·¥?…·?????‰????§?
fio??¨Linux?3???????????”¨?ˉ”è???–1??????iometer??¨window?3???????????”¨?ˉ”è???–1??????Orion??ˉoracle???IO?μ?èˉ?è?ˉ????????ˉ??¨?2???‰??‰è£…oracle??°????o“?????…??μ????¨????oracle??°????o“??o??ˉ???èˉ????
??¥?????ˉ??¨Linux?3???????é???”¨fio?·¥?…·??¥?ˉ1SAN?-???¨è??è?????IO?μ?èˉ?
1????‰è£…fio
??¨fio?????‘???è??fio-2.1.10.tar?–???????解??????./configure??make??make install?1?????°±??ˉ??¥????”¨fio?o?
2??fio?????°è§£é??
????ˉ??¥????”¨fio -help??¥????ˉ???a?????°????…·??“????????°?·|??3??ˉ??¥??¨?????‘??¥???how to?–???£????|??????o?????a???è§?????????°???è?°
filename=/dev/emcpowerb??”ˉ????–?????3??????–è…è£?è???¤????-filename=/dev/sda2??–-filename=/dev/sdb
direct=1 ?μ?èˉ?è???¨????è????o??¨è?a??|???buffer???????μ?èˉ???“?????′??????
rw=randwread ?μ?èˉ?é????oèˉ????I/O
rw=randwrite ?μ?èˉ?é????o??????I/O
rw=randrw ?μ?èˉ?é????o?··???????’?èˉ????I/O
rw=read ?μ?èˉ?é?o?o?èˉ????I/O
rw=write ?μ?èˉ?é?o?o???????I/O
rw=rw ?μ?èˉ?é?o?o??··???????’?èˉ????I/O
bs=4k ??????io?????—?–?????¤§?°???o4k
bsrange=512-2048 ?????????????????°?????—????¤§?°?è????′
size=5g ??????????μ?èˉ??–?????¤§?°???o5g?????¥?ˉ????4k???ioè??è???μ?èˉ?
numjobs=30 ??????????μ?èˉ??o??¨???o30
runtime=1000 ?μ?èˉ??—?é—′??o1000?§’????|?????????????????′?°?5g?–???????4k?ˉ????????????o?-¢
ioengine=psync io????“?????”¨pync?–1???????|????è|?????”¨libaio????“????é?è|?yum install libaio-devel??…
rwmixwrite=30 ??¨?··???èˉ????????¨????????????????30%
group_reporting ?…3?o?????¤o??“??????????±????ˉ???aè???¨?????????ˉ
?-¤?¤–
lockmem=1g ??a????”¨1g??…?-?è??è???μ?èˉ?
zero_buffers ?”¨0????§???–?3????buffer
nrfiles=8 ?ˉ???aè???¨??”?????–?????????°é??
3??fio?μ?èˉ???o??ˉ????”??????¥?‘?èˉ|解
?μ?èˉ???o??ˉ???
??100%é????o???100%èˉ???? 4K
??fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100read_4k
??100%é????o???100%?????? 4K
??fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100write_4k
??100%é?o?o????100%èˉ? ???4K
??fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100read_4k
??100%é?o?o????100%??? ???4K
??fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100write_4k
100%é????o???70%èˉ????30%??? 4K
??fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=randrw_70read_4k
??“?????¥?‘???¥??????
[root@rac01-node02]# fio -filename=/dev/sdc4 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=randrw_70read_4k_local
randrw_70read_4k_local: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=psync, iodepth=1
…
fio-2.1.10
Starting 50 threads
Jobs: 21 (f=21): [____m____m_m___m____mmm__mmm__mm_m_mmm_m__m__m_m_m] [3.4% done] [7004KB/2768KB/0KB /s] [1751/692/0 iops] [eta 01h:27m:00s]
randrw_70read_4k_local: (groupid=0, jobs=50): err= 0: pid=13710: Wed May 31 10:23:31 2017
read : io=1394.2MB, bw=7926.4KB/s, iops=1981, runt=180113msec
clat (usec): min=39, max=567873, avg=24323.79, stdev=25645.98
lat (usec): min=39, max=567874, avg=24324.23, stdev=25645.98
clat percentiles (msec):
| 1.00th=[ 3], 5.00th=[ 5], 10.00th=[ 6], 20.00th=[ 7],
| 30.00th=[ 9], 40.00th=[ 12], 50.00th=[ 16], 60.00th=[ 21],
| 70.00th=[ 27], 80.00th=[ 38], 90.00th=[ 56], 95.00th=[ 75],
| 99.00th=[ 124], 99.50th=[ 147], 99.90th=[ 208], 99.95th=[ 235],
| 99.99th=[ 314]
bw (KB /s): min= 15, max= 537, per=2.00%, avg=158.68, stdev=38.08
write: io=615280KB, bw=3416.8KB/s, iops=854, runt=180113msec
clat (usec): min=167, max=162537, avg=2054.79, stdev=7665.24
lat (usec): min=167, max=162537, avg=2055.38, stdev=7665.23
clat percentiles (usec):
| 1.00th=[ 201], 5.00th=[ 227], 10.00th=[ 249], 20.00th=[ 378],
| 30.00th=[ 548], 40.00th=[ 692], 50.00th=[ 844], 60.00th=[ 996],
| 70.00th=[ 1160], 80.00th=[ 1304], 90.00th=[ 1720], 95.00th=[ 3856],
| 99.00th=[40192], 99.50th=[58624], 99.90th=[98816], 99.95th=[123392],
| 99.99th=[148480]
bw (KB /s): min= 6, max= 251, per=2.00%, avg=68.16, stdev=29.18
lat (usec) : 50=0.01%, 100=0.03%, 250=3.15%, 500=5.00%, 750=5.09%
lat (usec) : 1000=4.87%
lat (msec) : 2=9.64%, 4=4.06%, 10=21.42%, 20=18.08%, 50=19.91%
lat (msec) : 100=7.24%, 250=1.47%, 500=0.03%, 750=0.01%
cpu : usr=0.07%, sys=0.21%, ctx=522490, majf=0, minf=7
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued : total=r=356911/w=153820/d=0, short=r=0/w=0/d=0
latency : target=0, window=0, percentile=100.00%, depth=1
Run status group 0 (all jobs):
READ: io=1394.2MB, aggrb=7926KB/s, minb=7926KB/s, maxb=7926KB/s, mint=180113msec, maxt=180113msec
WRITE: io=615280KB, aggrb=3416KB/s, minb=3416KB/s, maxb=3416KB/s, mint=180113msec, maxt=180113msec
Disk stats (read/write):
sdc: ios=356874/153927, merge=0/10, ticks=8668598/310288, in_queue=8978582, util=99.99%
io=?‰§è???o??¤??°‘M???IO
bw=?13???IO??|???
iops=IOPS
runt=?o??¨?è??è???—?é—′
slat=????o¤???è??
clat=?????????è??
lat=?“??o”?—?é—′
bw=??|???
cpu=????Ӭ???
IO depths=ioé????—
IO submit=?????aIO????o¤è|?????o¤???IO??°
IO complete=Like the above submit number, but for completions instead.
IO issued=The number of read/write requests issued, and how many of them were short.
IO latencies=IO??????è???????????
io=???…±?‰§è???o??¤??°‘size???IO
aggrb=group????|???
minb=???°?.?13?????|???.
maxb=???¤§?13?????|???.
mint=group??-?o??¨????????-è??è???—?é—′.
maxt=group??-?o??¨??????é??è??è???—?é—′.
ios=?‰??‰group???…±?‰§è?????IO??°.
merge=???…±??‘?”????IO????1???°.
ticks=Number of ticks we kept the disk busy.
io_queue=è?±è′1??¨é????—?????????…±?—?é—′.
util=?£????????”¨???
4???‰??±??1?IOé????—?·±?o|
??¨?????a?—????,??‰N??ainflight???IOèˉ·?±?,??…?????¨é????—??-???IOèˉ·?±????£?????-£??¨?¤???????IOèˉ·?±???N?°±??ˉé????—?·±?o|
????¤§??????é????—?·±?o|?°±??ˉè????????????–-?·¥??????????°‘???????????oé—2?—?é—′
????¤§é????—?·±?o| -> ???é??????”¨??? -> è?·??—IOPS?’?MBPS?3°?? ->?3¨????“??o”?—?é—′??¨??ˉ??¥??—???è????′??…
?¢????é????—?·±?o|???????3???‰????¤????????”¨????-¥IO???????—???‘èμ·?¤???aIOèˉ·?±?????????“?o?é????—??-??‰?¤???aIOèˉ·?±?????¤??o??¨???‘èμ·????-¥IOèˉ·?±?????????“?o?é????—??-??‰?¤???aIOèˉ·?±?
?¢??¤§?o”?”¨IO?¤§?°??????°è???o??±??1?????????????????¤???aIOèˉ·?±?????????“?o?é????—??-??‰?¤???aIOèˉ·?±? é????—?·±?o|?¢?????o?
é????—?·±?o|?¢?????o????IO??¨é????—????-‰??…?—?é—′?1?????¢????????ˉ?è?′IO?“??o”?—?é—′????¤§???è??é?è|????è??
??o???è|??ˉ1?£????I/Oè??è???1?è???¤?????‘¢??????è|?????????ˉ???????o”?”¨?¨??o?????§è????è??????1?ˉ1?o??¤??‰?????£?????????????è??????£?????????–LUN??‰?????—?°¤??oé??è|?
?|?????????????o¤????aI/O???è??????“??o”?—?é—′è????-???????3?????????????é??????°?
????ˉ”è??è?è¨????????????o¤?¤???aI/O?—¢?????-?o??£??¤′?§???¨è·??|????é?è???”μ?¢ˉ??—?3???‰???????—??1?è???¤???????IOPS
????|???é?¨?”μ?¢ˉ???????aè????-?1????oo???é?£?1??ˉ???a?oo??????1?????”μ?¢ˉ????°±è?????é?è????°????????°????“??o”?—?é—′??‰??????é?è|?è—è′1è??é??????-‰??…?—?é—′???é????—é???o|??‰
????-¤???????‘?£?????3????????o¤?¤???aI/Oè???¤??13è????????é???’???′??“?“??o”?—?é—′
Linux?3??????¥???é??è?¤é????—?·±?o|???
[root@qsdb ~]# lsscsi -l
[0:0:0:0] disk DGC VRAID 0533 /dev/sda
state=running queue_depth=30 scsi_level=5 type=0 device_blocked=0 timeout=30
[0:0:1:0] disk DGC VRAID 0533 /dev/sdb
state=running queue_depth=30 scsi_level=5 type=0 device_blocked=0 timeout=30
[2:0:0:0] disk DGC VRAID 0533 /dev/sdd
state=running queue_depth=30 scsi_level=5 type=0 device_blocked=0 timeout=30
[2:0:1:0] disk DGC VRAID 0533 /dev/sde
state=running queue_depth=30 scsi_level=5 type=0 device_blocked=0 timeout=30
[4:2:0:0] disk IBM ServeRAID M5210 4.27 /dev/sdc
state=running queue_depth=256 scsi_level=6 type=0 device_blocked=0 timeout=90
[9:0:0:0] cd/dvd Lenovo SATA ODD 81Y3677 IB00 /dev/sr0
state=running queue_depth=1 scsi_level=6 type=5 device_blocked=0 timeout=30
????”¨dd?‘???¤è?????bs=2Mè??è???μ?èˉ????
dd if=/dev/zero of=/dev/sdd bs=2M count=1000 oflag=direct
è?°????o?1000+0 ???èˉ??…¥ è?°????o?1000+0 ????????o 2097152000?-—è??(2.1 GB)?·2?¤???????10.6663 ?§’???197 MB/?§’
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sdd 0.00 0.00 0.00 380.60 0.00 389734.40 1024.00 2.39 6.28 2.56 97.42
??ˉ??¥?????°2MB???IO??°è???o??±??1?????????????????¤???a512KB???IO????13???é????—é???o|??o2.39???è????a?????????????”¨?????ˉ97%???MBPSè????°?o?197MB/s??
(??o???1??????????512KB???IO????????ˉ??¥???????”¨Google?????¥???????…????????° max_sectors_kb???????1‰?’?????”¨?–1?3? )?1??°±??ˉèˉ′?¢????é????—?·±?o|?????ˉ??ˉ??¥?μ?èˉ???o??????????3°???????
Linux?3??????-??¥???IO?‘???¤iostatèˉ|解
[root@rac01-node01 /]# iostat -xd 3
Linux 3.8.13-16.2.1.el6uek.x86_64 (rac01-node01) 05/27/2017 _x86_64_ (40 CPU)
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda 0.05 0.75 2.50 0.50 76.59 69.83 48.96 0.00 1.17 0.47 0.14
scd0 0.00 0.00 0.02 0.00 0.11 0.00 5.25 0.00 21.37 20.94 0.05
dm-0 0.00 0.00 2.40 1.24 75.88 69.83 40.00 0.01 1.38 0.38 0.14
dm-1 0.00 0.00 0.02 0.00 0.14 0.00 8.00 0.00 0.65 0.39 0.00
sdc 0.00 0.00 0.01 0.00 0.11 0.00 10.20 0.00 0.28 0.28 0.00
sdb 0.00 0.00 0.01 0.00 0.11 0.00 10.20 0.00 0.15 0.15 0.00
sdd 0.00 0.00 0.01 0.00 0.11 0.00 10.20 0.00 0.25 0.25 0.00
sde 0.00 0.00 0.01 0.00 0.11 0.00 10.20 0.00 0.14 0.14 0.00
è?“??o?????°???è?°???
rrqms????ˉ??§’è????aè???¤?????…3???èˉ???–èˉ·?±???‰?¤??°‘è¢?Merge?o??????“?3????è°??”¨é?è|?èˉ???–??°???????—??????VFS?°?èˉ·?±???‘??°?????aFS????|????FS??‘??°?????????èˉ???–èˉ·?±?èˉ???–?????ˉ??????Block?????°??????FS????°?è????aèˉ·?±?????1?Merge??‰
wrqm/s????ˉ??§’è????aè???¤?????…3???????…¥èˉ·?±???‰?¤??°‘è¢?Merge?o?
rsec/s????ˉ??§’???è???¤?èˉ???–????‰???o??°??The number of sectors read from the device per second.
wsec/s????ˉ??§’????…¥è???¤?????‰???o??°??The number of sectors written to the device per second.
rKB/s????ˉ??§’???è???¤?èˉ???–???KB??°??The number of kilobytes read from the device per second.
wKB/s????ˉ??§’????…¥è???¤????KB??°??The number of kilobytes written to the device per second.
avgrq-sz????13???èˉ·?±??‰???o????¤§?°???The average size (in sectors) of the requests that were issued to the device.
avgqu-sz?????ˉ?13???èˉ·?±?é????—???é???o|???ˉ??—??–‘é—????é????—é???o|è????-è???¥???The average queue length of the requests that were issued to the device.
await????ˉ?????aIOèˉ·?±?????¤????????13????—?é—′???????????ˉ????§’?ˉ??§’??‰??è??é????ˉ??¥???解??oIO????“??o”?—?é—′?????è????°?3????IO?“??o”?—?é—′?o”èˉ¥????o?5ms????|?????¤§?o?10ms?°±?ˉ”è???¤§?o???è????a?—?é—′??…????o?é????—?—?é—′?’????????—?é—′????1??°±??ˉèˉ′?????è????…??μ??????await?¤§?o?svctm?????????????·???è???°???????èˉ′???é????—?—?é—′è????-???????1??·???è???¤§???é????—?—?é—′è??é?????èˉ′????3??????o?o?é—?é¢???
svctm???è?¨?¤o?13????ˉ????è???¤?I/O?“??????????????—?é—′?????¥?ˉ??§’??o????????‰???|????svctm????????await?????¥è?‘???è?¨?¤o????1??2???‰I/O?-‰??…????£?????§è??????¥????|????await?????è??é???o?svctm???????????è?¨?¤oI/Oé????—?-‰??…?¤aé??????3???????è??è??????o”?”¨?¨??o??°?????…¢??
%util??? ??¨???è???—?é—′??…?‰??‰?¤????IO?—?é—′???é?¤??¥???…±???è???—?é—′??????|?????|???????è??é—′é?”1?§’???èˉ¥è???¤???‰0.8?§’??¨?¤????IO???è?0.2?§’é—2??????é?£?1?èˉ¥è???¤????%util = 0.8/1 = 80%????‰??¥èˉ¥?????°??—?¤o?o?è???¤?????1?????¨??o|?????è????°????|????èˉ¥?????°??ˉ100%è?¨?¤o?£????è???¤??·2?????¥è?‘???è′?è?·è??è???o??????“????|??????ˉ?¤??£?????????3???%util??ˉ100%????????o?£????????1???‘è?????????‰??¥?£????????”¨??a??…?°±??°?o??“?é¢???‰
????????????????
本文链接:https://www.zhantian9.com/233350.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2000000@qq.com 举报,一经查实,本站将立刻删除。