Hi Everyone.
Been looking through the forums and trying to find the answer, have tried a number of things and have done benchmark tests from other peoples troubleshooting.
I noticed the issue recently when I copied my Plex media from one folder to another, it took nearly a day, so I decided to investigate.
Vol1 is used for Jails/VM - very low usage, just nginx, Pritunl, Plex / System Dataset Pool
Disk da8 & da9 make up this volume and are SEAGATE ST4000NM0023 10k rpm (See test below)
Vol2 is used for media only, so written to very seldom, mostly read by Plex.
The remainder of the disks are SEAGATE ST4000NM0023, 7200 RPM (see test below)
One of the two VM/Jail disks / System Dataset Pool
One of the remaining 12 disks making up Vol2 (these all produce similar results)
Running fio on Vol2 says its going to take 13minutes and jumps between KiB/s and up to 80MiB/s (very seldom higher number)
Pretty much seeing the same result with Vol1 tests
Any help or direction would be greatly appreciated.
I have purchased another server which will be here in about a week so I can start from scratch, but I'll need to move all the data over.
Finding the cause to this issue will allow me to start fresh and in the correct way I hope.
P.S. I have ordered NVMe drives for log/cache, will run RAID2 with multiple vdevs for the pool
Been looking through the forums and trying to find the answer, have tried a number of things and have done benchmark tests from other peoples troubleshooting.
I noticed the issue recently when I copied my Plex media from one folder to another, it took nearly a day, so I decided to investigate.
Vol1 is used for Jails/VM - very low usage, just nginx, Pritunl, Plex / System Dataset Pool
Disk da8 & da9 make up this volume and are SEAGATE ST4000NM0023 10k rpm (See test below)
Code:
NAME STATE READ WRITE CKSUM Vol1 ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 gptid/64ebe6e0-bd0e-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/6538a3ce-bd0e-11eb-ac17-b82a72cfcabd ONLINE 0 0 0
Vol2 is used for media only, so written to very seldom, mostly read by Plex.
The remainder of the disks are SEAGATE ST4000NM0023, 7200 RPM (see test below)
Code:
NAME STATE READ WRITE CKSUM Vol2 ONLINE 0 0 0 raidz1-0 ONLINE 0 0 0 gptid/1c2f74d9-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/1d830a1b-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/1e07214a-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/1f835716-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/1f470494-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/1fea528c-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/20b39770-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/214276cf-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/21337812-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/21af5b63-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/21be580a-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0 gptid/21cf6056-bd0f-11eb-ac17-b82a72cfcabd ONLINE 0 0 0
Code:
NAME STATE READ WRITE CKSUM boot-pool ONLINE 0 0 0 da14p2 ONLINE 0 0 0
One of the two VM/Jail disks / System Dataset Pool
Code:
[root@TGA-Truenas ~]# diskinfo -tv /dev/da8 /dev/da8 512 # sectorsize 300000000000 # mediasize in bytes (279G) 585937500 # mediasize in sectors 0 # stripesize 0 # stripeoffset 36472 # Cylinders according to firmware. 255 # Heads according to firmware. 63 # Sectors according to firmware. SEAGATE ST300MM0006 # Disk descr. S0K2F6GC # Disk ident. mps0 # Attachment No # TRIM/UNMAP support 10000 # Rotation rate in RPM Not_Zoned # Zone Mode Seek times: Full stroke: 250 iter in 2.764277 sec = 11.057 msec Half stroke: 250 iter in 1.852089 sec = 7.408 msec Quarter stroke: 500 iter in 3.090188 sec = 6.180 msec Short forward: 400 iter in 1.258590 sec = 3.146 msec Short backward: 400 iter in 1.198859 sec = 2.997 msec Seq outer: 2048 iter in 0.099816 sec = 0.049 msec Seq inner: 2048 iter in 0.256881 sec = 0.125 msec Transfer rates: outside: 102400 kbytes in 0.625300 sec = 163761 kbytes/sec middle: 102400 kbytes in 0.598765 sec = 171019 kbytes/sec inside: 102400 kbytes in 0.871804 sec = 117458 kbytes/sec
One of the remaining 12 disks making up Vol2 (these all produce similar results)
[root@TGA-Truenas ~]# diskinfo -tv /dev/da0
/dev/da0
512 # sectorsize
4000787030016 # mediasize in bytes (3.6T)
7814037168 # mediasize in sectors
0 # stripesize
0 # stripeoffset
486401 # Cylinders according to firmware.
255 # Heads according to firmware.
63 # Sectors according to firmware.
SEAGATE ST4000NM0023 # Disk descr.
Z1Z3GTRQ # Disk ident.
mps0 # Attachment
No # TRIM/UNMAP support
7200 # Rotation rate in RPM
Not_Zoned # Zone Mode
Seek times:
Full stroke: 250 iter in 4.395745 sec = 17.583 msec
Half stroke: 250 iter in 3.565977 sec = 14.264 msec
Quarter stroke: 500 iter in 4.313871 sec = 8.628 msec
Short forward: 400 iter in 2.099903 sec = 5.250 msec
Short backward: 400 iter in 2.121230 sec = 5.303 msec
Seq outer: 2048 iter in 0.145272 sec = 0.071 msec
Seq inner: 2048 iter in 0.098212 sec = 0.048 msec
Transfer rates:
outside: 102400 kbytes in 0.535380 sec = 191266 kbytes/sec
middle: 102400 kbytes in 0.714354 sec = 143346 kbytes/sec
inside: 102400 kbytes in 1.154738 sec = 88678 kbytes/sec
Running fio on Vol2 says its going to take 13minutes and jumps between KiB/s and up to 80MiB/s (very seldom higher number)
[root@TGA-Truenas ~]# sync ; fio --randrepeat=1 --direct=1 --gtod_reduce=1 --numjobs=10 --name=test --filename=/mnt/Vol2/test --bs=4k --iodepth=64 --size=2G --readwrite=randwrite --ramp_time=4 --group_reporting
test: (g=0): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=psync, iodepth=64
...
fio-3.28
Starting 10 processes
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
test: Laying out IO file (1 file / 2048MiB)
Jobs: 10 (f=10): [w(10)][6.1%][w=11.8MiB/s][w=3025 IOPS][eta 13m:06s]
Run status group 0 (all jobs):
CANCELLED WITH CTRL C
WRITE: bw=25.8MiB/s (27.1MB/s), 25.8MiB/s-25.8MiB/s (27.1MB/s-27.1MB/s), io=3517MiB (3688MB), run=136279-136279msec
Pretty much seeing the same result with Vol1 tests
Run status group 0 (all jobs):
WRITE: bw=23.5MiB/s (24.7MB/s), 23.5MiB/s-23.5MiB/s (24.7MB/s-24.7MB/s), io=623MiB (654MB), run=26508-26508msec
Any help or direction would be greatly appreciated.
I have purchased another server which will be here in about a week so I can start from scratch, but I'll need to move all the data over.
Finding the cause to this issue will allow me to start fresh and in the correct way I hope.
P.S. I have ordered NVMe drives for log/cache, will run RAID2 with multiple vdevs for the pool
Last edited by a moderator: