ZFS confusion
Kaya Saman
kayasaman at gmail.com
Mon Jan 27 09:59:31 UTC 2014
Many thanks Trond for the response....
I was getting worried for a sec there :-)
On 01/27/2014 09:08 AM, Trond Endrestøl wrote:
> On Sat, 25 Jan 2014 19:12-0000, Kaya Saman wrote:
>
> [...]
> No one's answered this, so I'll just give you my 2 cents.
>
> Triple parity means you're using storage capacity equivalent of three
> drives for parity alone. If you use five drives in total, this gives
> you 2 drives worth of real data and 3 drives worth of parity. In other
> words, you should really consider using a lot more drives when using
> triple parity, say nine drives.
So, basically if I have (just as silly example); 5x drives of 100MB
capacity, this would equal 500MB in total.
Meaning that only 200MB would be usable.....
Having just done a quick experiment:
zpool create test_pool raidz3 /tmp/disk1 /tmp/disk2 /tmp/disk3
/tmp/disk4 /tmp/disk5
I get:
test_pool 476M 304K 476M 0% 1.00x ONLINE -
then writing a 300M file to pool:
dd if=/dev/zero of=/test_pool/file bs=300M count=1
dd: /test_pool/file: No space left on device
test_pool 476M 396M 79.8M 83% 1.00x ONLINE -
du -sch /test_pool/file
157M /test_pool/file
157M total
>
>
So I guess, now I have to ask; when building a disk pool, what's the
best option to go for between capacity and redundancy?
In my case I gradually want to expand my storage when I need it, so to
maximize capacity RAID0 would be the easiest. This doesn't give me any
redundancy however, unless I use RAID1+0 but then I loose physical
capacity due to the mirrors.
Would it be better to create a raidz1 pool then just add raidz1 pools to
the master as time goes by?
As in:
zpool create test_pool raidz1 /tmp/disk1 /tmp/disk2 /tmp/disk3
/tmp/disk4 /tmp/disk5
zpool add test_pool raidz1 /tmp/disk6 /tmp/disk7 /tmp/disk8 /tmp/disk9
/tmp/disk10
dd if=/dev/zero of=/test_pool/file bs=600M count=1
1+0 records in
1+0 records out
629145600 bytes transferred in 190.069986 secs (3310073 bytes/sec)
Then running a 'zpool list' gets:
test_pool 952M 751M 201M 78% 1.00x ONLINE -
So virtually out of:
NAME STATE READ WRITE CKSUM
test_pool ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
/tmp/disk1 ONLINE 0 0 0
/tmp/disk2 ONLINE 0 0 0
/tmp/disk3 ONLINE 0 0 0
/tmp/disk4 ONLINE 0 0 0
/tmp/disk5 ONLINE 0 0 0
raidz1-1 ONLINE 0 0 0
/tmp/disk6 ONLINE 0 0 0
/tmp/disk7 ONLINE 0 0 0
/tmp/disk8 ONLINE 0 0 0
/tmp/disk9 ONLINE 0 0 0
/tmp/disk10 ONLINE 0 0 0
errors: No known data errors
I have 8 disks usable with 2x disks for parity.... if my understanding
is correct.
Regards,
Kaya
More information about the freebsd-questions
mailing list