On 1/29/2014 1:11 PM, C. Morgan Hamill wrote:
> Thanks for the quick reply.
> Excerpts from Eric Sandeen's message of 2014-01-29 10:07:15 -0500:
>> The stripe unit and width are units of geometry of the underlying
>> storage; a filesystem will span some number of stripe units, depending
>> on its size.
>> So no, the filesystem's notion of stripe geometry does not change
>> with the filesystem size.
>> You do want to make sure that stripe geometry is correct and aligned
>> from top to bottom.
> Just to make sure I've understood, for 3 14-disk RAID 6 groups striped
> together into a single RAID 60, with stripe units of 128k, split up into
> some number of LVM logical volumes, I'd create the filesystems with the
> mkfs.xfs -d su=128k,sw=36 ...
This is not correct. You must align to either the outer stripe or the
inner stripe when using a nested array. In this case it appears your
inner stripe is RAID6 su 128KB * sw 12 = 1536KB. You did not state your
outer RAID0 stripe geometry. Which one you align to depends entirely on
However, given that you currently intend to assemble one large array
from 3 smaller arrays, then immediately carve it into smaller pieces,
it's seems that RAID60 is probably not the correct architecture for your
workload. RAID60 is suitable for very large streaming write/read
workloads where you are evenly distributing filesystem blocks across a
very large spindle count, with a deterministic IO pattern, and with no
RMW. It is not very suitable for consolidation workloads, as you seem
to be describing here.
Everything starts and ends with the workload. You always design the
storage to meet the needs of the workload, not the other way round. You
seem to be designing your system from the storage up. This is often a
recipe for disaster.
Please describe your workload in more detail so we can provide better,