Let's say I have two 2TB HDDs and I want to start my first ZFS zpool. Is it possible to create a RAIDZ with just those two discs, giving me 2TB of usable storage (if I understand it right) and then later add another 2TB HDD bringing the total to 4TB of usable storage. Am I correct or does there need to be three HDDs to start with?

The reason I ask is I already have one 2TB drive I'm using that's full of files. I want to transition to a zpool but I'd rather only buy two more 2TB drives if I can. From what I understand, RAIDZ behaves similarly to RAID5 (with some major differences, I know, but in terms of capacity). However, RAID5 requires 3+ drives. I was wondering if RAIDZ has the same requirement.

If I have to, I can buy the three drives and just start there, later adding the fourth, but if I could start with two and move to three that would save me $80.

link|improve this question
feedback

migrated from stackoverflow.com May 11 '11 at 0:30

This question came from our site for professional and enthusiast programmers.

3 Answers

Unfortunately, at the moment it is not possible:

It is not possible to add a disk as a column to a RAID-Z, RAID-Z2, or RAID-Z3 vdev. This feature depends on the block pointer rewrite functionality due to be added soon. One can however create a new RAID-Z vdev and add it to the zpool.

RAID-Z1 might work with just 2 drives, but clearly this is not very useful if extra drives cannot be added later. RAID-Z (like RAID 5) becomes more efficient, in terms of usable storage space, the more drives that are used.

link|improve this answer
feedback

Raidz1 can be used with only two disks but there with no advantage at all compared to mirroring - unless your two disks have different sector sizes so can't be mirrored (e.g: a new 4K sector disk and an older 512byte disk). As already stated, adding a device to a raidz isn't supported. Should you want to add a disk to an existing raidz, the only way is to backup your data elsewhere, destroy the the pool and recreate it with the extra disk added then restore your data.

link|improve this answer
feedback

What about the following idea:

  1. start with a set of two disks making up a degenerated raidz1 with double capacity but no redundancy.
  2. copy all data from your third disk to degenerated raidz1.
  3. add (replace) the third disk and resilver

I think this is not possible, you have to start with three disks. This case gives a good reason to initialize a degenerated raidz1 and later resilver the missing redundancy. Practically you create a three disk raidz1 and immediatly after that take one disk offline. Why not create the raidz1 with a missing third disk?

link|improve this answer
feedback

Your Answer

 
or
required, but never shown