2016-08-29 2 views
0

어쩌면 당신은 나를 도울 수있다, 나는 조금 잃어버린, 나는 여분의 IOPs 및 처리량을 8 개의 로컬 SSD를 RAID (mdadm)에 넣으려고했는데 할 수 없다. 단일 로컬 ssd 드라이브의 평균 성능보다 높아집니다. 나는 테스트를 실행하기 위해 fio를 사용하고 있으며 지금까지의 RAID 구성은 RAID 0으로 단일 드라이브와 거의 동일한 성능을 보여줍니다.로컬 ssd RAID의 mdadm 성능

RAID 페널티 때문에 성능이 저하되는 것처럼 보이는 RAID 5도 시도했습니다 (특별히 쓰기). 그래서 거기에 입출력 제한이있는 로컬 SSD의 금액에 상관없이 나는 그것에 넣어 같은 통계를 얻을 경우 RAID 설정 페널티가 있다면 내가 어떤 통계를 얻을 낮은 통계? 내가 RAM에서 32 vcores에 CentOS/데비안 및 208Gb를 사용하고 테스트에 대한 인스턴스에 대한 IO 제한 (이

일부 출력 :.

RAID 0 :

[email protected] data]# /usr/local/bin/fio --ioengine=libaio --direct=1 
--name=test --filename=/data/t22 --bs=4k --iodep th=128 --size=4G --randrepeat=1 --readwrite=randrw --rwmixread=70 test: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=128 fio-2.13 Starting 1 process Jobs: 1 (f=1): [m(1)] [100.0% done] [313.8MB/132.6MB/0KB /s] [80.4K/33.1K/0 iops] [eta 00m:00s] test: (groupid=0, jobs=1): err= 0: pid=13748: Mon Aug 29 07:19:10 2016 read : io=2865.9MB, bw=323120KB/s, iops=80780, runt= 9082msec 
    slat (usec): min=2, max=167, avg= 7.22, stdev= 4.42 
    clat (usec): min=125, max=9876, avg=1128.41, stdev=298.77 
    lat (usec): min=132, max=9881, avg=1135.63, stdev=298.82 
    clat percentiles (usec): 
    | 1.00th=[ 908], 5.00th=[ 956], 10.00th=[ 980], 20.00th=[ 1012], 
    | 30.00th=[ 1032], 40.00th=[ 1064], 50.00th=[ 1080], 60.00th=[ 1112], 
    | 70.00th=[ 1128], 80.00th=[ 1160], 90.00th=[ 1208], 95.00th=[ 1288], 
    | 99.00th=[ 2928], 99.50th=[ 3472], 99.90th=[ 3920], 99.95th=[ 4320], 
    | 99.99th=[ 5088] write: io=1230.3MB, bw=138706KB/s, iops=34676, runt= 9082msec 
    slat (usec): min=2, max=116, avg= 8.05, stdev= 4.64 
    clat (usec): min=87, max=8943, avg=1034.94, stdev=146.07 
    lat (usec): min=94, max=8947, avg=1042.99, stdev=146.39 
    clat percentiles (usec): 
    | 1.00th=[ 852], 5.00th=[ 900], 10.00th=[ 924], 20.00th=[ 964], 
    | 30.00th=[ 988], 40.00th=[ 1004], 50.00th=[ 1032], 60.00th=[ 1048], 
    | 70.00th=[ 1064], 80.00th=[ 1096], 90.00th=[ 1144], 95.00th=[ 1176], 
    | 99.00th=[ 1272], 99.50th=[ 1320], 99.90th=[ 3184], 99.95th=[ 3984], 
    | 99.99th=[ 5856] 
    lat (usec) : 100=0.01%, 250=0.01%, 500=0.01%, 750=0.02%, 1000=21.69% 
    lat (msec) : 2=76.85%, 4=1.35%, 10=0.07% 

RAID 5 :

/usr/local/bin/fio --ioengine=libaio --direct=1 --name=test 
--filename=/data/t22 --bs=4k --iodepth=128 --size=4G --randrepeat=1 --readwrite=ra ndrw --rwmixread=70 test: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=128 fio-2.13 Starting 1 process Jobs: 1 (f=1): [m(1)] [100.0% done] [248.7MB/104.6MB/0KB /s] [63.7K/26.8K/0 iops] [eta 00m:00s] test: (groupid=0, jobs=1): err= 0: pid=10743: Mon Aug 29 07:19:10 2016 read : io=2865.9MB, bw=235218KB/s, iops=58804, runt= 12476msec 
    slat (usec): min=2, max=402, avg= 9.43, stdev= 8.99 
    clat (usec): min=100, max=15268, avg=1155.38, stdev=790.57 
    lat (usec): min=108, max=15271, avg=1164.81, stdev=792.64 
    clat percentiles (usec): 
    | 1.00th=[ 119], 5.00th=[ 137], 10.00th=[ 155], 20.00th=[ 195], 
    | 30.00th=[ 286], 40.00th=[ 1320], 50.00th=[ 1400], 60.00th=[ 1464], 
    | 70.00th=[ 1512], 80.00th=[ 1624], 90.00th=[ 1928], 95.00th=[ 2096], 
    | 99.00th=[ 3440], 99.50th=[ 3952], 99.90th=[ 5600], 99.95th=[ 6432], 
    | 99.99th=[14656] write: io=1230.3MB, bw=100972KB/s, iops=25243, runt= 12476msec 
    slat (usec): min=2, max=13853, avg= 9.33, stdev=29.91 
    clat (usec): min=212, max=424477, avg=2341.19, stdev=1500.44 
    lat (usec): min=217, max=424481, avg=2350.52, stdev=1499.50 
    clat percentiles (usec): 
    | 1.00th=[ 1336], 5.00th=[ 1448], 10.00th=[ 1512], 20.00th=[ 1592], 
    | 30.00th=[ 1656], 40.00th=[ 1752], 50.00th=[ 2024], 60.00th=[ 2288], 
    | 70.00th=[ 2704], 80.00th=[ 3056], 90.00th=[ 3568], 95.00th=[ 3984], 
    | 99.00th=[ 5280], 99.50th=[ 6048], 99.90th=[ 8256], 99.95th=[15168], 
    | 99.99th=[20352] 
    lat (usec) : 250=19.32%, 500=3.46%, 750=0.40%, 1000=0.34% 
    lat (msec) : 2=56.10%, 4=18.56%, 10=1.79%, 20=0.02%, 50=0.01% 
    lat (msec) : 100=0.01%, 250=0.01%, 500=0.01% cpu   : usr=7.26%, sys=87.08%, ctx=43414, majf=0, minf=33 

단일 드라이브

/usr/local/bin/fio --ioengine=libaio --direct=1 --name=test 
--filename=/data/t22 --bs=4k --iode pth=128 --size=4G --randrepeat=1 --readwrite=randrw --rwmixread=70 test: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=128 fio-2.13 Starting 1 process Jobs: 1 (f=1): [m(1)] [100.0% done] [328.1MB/138.5MB/0KB /s] [83.1K/35.5K/0 iops] [eta 00m:00s] test: (groupid=0, jobs=1): err= 0: pid=4554: Mon Aug 29 07:19:19 2016 read : io=2865.9MB, bw=338163KB/s, iops=84540, runt= 8678msec 
    slat (usec): min=1, max=199, avg= 3.41, stdev= 4.70 
    clat (usec): min=98, max=19530, avg=1226.75, stdev=1142.24 
    lat (usec): min=103, max=19532, avg=1230.16, stdev=1142.32 
    clat percentiles (usec): 
    | 1.00th=[ 153], 5.00th=[ 243], 10.00th=[ 302], 20.00th=[ 386], 
    | 30.00th=[ 458], 40.00th=[ 548], 50.00th=[ 676], 60.00th=[ 980], 
    | 70.00th=[ 1480], 80.00th=[ 2160], 90.00th=[ 2928], 95.00th=[ 3600], 
    | 99.00th=[ 4768], 99.50th=[ 5216], 99.90th=[ 5856], 99.95th=[ 6688], 
    | 99.99th=[15936] write: io=1230.3MB, bw=145163KB/s, iops=36290, runt= 8678msec 
    slat (usec): min=1, max=196, avg= 4.14, stdev= 5.17 
    clat (usec): min=29, max=16473, avg=654.72, stdev=732.68 
    lat (usec): min=45, max=16476, avg=658.86, stdev=732.68 
    clat percentiles (usec): 
    | 1.00th=[ 59], 5.00th=[ 88], 10.00th=[ 123], 20.00th=[ 193], 
+0

이 질문은 프로그래밍과 관련이 없으므로 (이 문제는 수퍼 유저 또는 serverfault에게 너무 광범위 할 수도 있기 때문에) 주제와 관련이 없으므로 닫으려고합니다. –

답변

0

mdadm에서 병목 현상이 발생할 수 있습니다. 일부 작업에 대해 단일 커널 스레드를 가지고 있다고 말하는 스레드 performance of raid5 on fast devices을 확인하십시오. RAID 5에 대해 언급했지만 많은 코드가 재사용되므로 RAID 0에서 비슷한 문제가 될 수 있습니다. 병목 현상을 해결하기 위해 노력하고 있습니다.

관련 문제