Try that: do not use Raid 5 on anything 2gb or larger in drives ;) For 30tb I would even go
with Raid 6 mirrored (i.e. 2 copies in software raid) to make sure I keep the data in case
of corruption.
Now I am using ext4 and 64KB strip size. Should I increase strip size to 128KB/256KB ? >
Hard or software? Generally yes - it is a lot less work to read more data than to come back later. Not a Linux guy here - but SQL Server for example does read 64kb extends but tries to keep table data in linear blocks so IO is reduced. A good large file system will try the same, which means a larger than 64gb IO segment size is good.
I remember analysis of enterprise level Raid controllers that showed an increase in throughput at 512kb / 256kg compared to smaller sizes. Especially if you ahve enough caching to make it "stick" on the Raid controller level.
A lot also depends on read. LArge archives and filesa re mostly linear non random access. That will fly. I have a smaller system but we do redundant reading from nearly 200 processes on it on a larger number of machines, the machines with 1gb, the storage with 10 - so it is HEAVILY random IO coming in and I use a Raid 6 now of 8 velociraptors. THat is half a gigabyte per second delivered. 256kb Stripe, Raid 6, 1gb cache on an Adaptec 71605Q. SSD as cache available but not active for that group ;)
A lot depends on read patterns.
But stay away from Raid 5 for those large drives. That is gambling the data - unless you can live without the Raid (during a full rebuild when the raid blows during a rebuild due to a drive failure) and have another backup source (like tapes). YOu can basically expect a problem with that many 4tb drives, mathematically.