Hi guys,
this is my first experience with Freenas and I'm thrilled by the features it offers.
I read all docs (section 8 in particular), beginners guide, and ZFS primer but I still have some questions before the "live test". I think I have already my answers but I need to be 100% sure.
Scenario: I'm going to create a Volume (aka "Storage Pool") made by 5 different Raidz1, each of them created with 3 physical HDDs (different size for each Raidz1 but same size for HDDs of each stripe).
1st:
Safety issues. I presume that this configuration protects the Volume from a failure of max 1 disk of each Raidz1 in the pool (a total of 5 disk in the worst case, as long as the failed disks are each in one different stripe). Is this correct?
2nd:
Even if this is correct, I'm not that confident about this way because if I loose 1 stripe (i.e. in the unfortunate event of 2 disk loss in a single Raidz1) I'm gonna trash ALL my storage pool. Is this assumption correct? (Or can I recovery data from the healty survived stripes? According to the "noob guide", no, the volume will be totally crashed)
3rd (interesting only if 2nd is false, unlikely): :
How does ZFS span my data across different stripes? Fill the first stripe added and then write to the second? Does it make any kind of balance between all stripes?
4th (valid only if 2nd is false, unlikely):
I'm going to create multiple dataset, is there a way to "force" the system to use a specific stripe for each dataset? If so, it could provide the "one storage pool" flexibility advantages (i.e. variable size of datasets) along with the option to choose the "most reliable" stripe for critical data (I have some old disks, more prone to fail).
In conclusion, if 1st and 2nd assumptions are true as I suspect, I'm going to create different Volumes for each Raidz1. If a stripe fail I'm not going to loose all my data. Correct? :D
Thank you
this is my first experience with Freenas and I'm thrilled by the features it offers.
I read all docs (section 8 in particular), beginners guide, and ZFS primer but I still have some questions before the "live test". I think I have already my answers but I need to be 100% sure.
Scenario: I'm going to create a Volume (aka "Storage Pool") made by 5 different Raidz1, each of them created with 3 physical HDDs (different size for each Raidz1 but same size for HDDs of each stripe).
1st:
Safety issues. I presume that this configuration protects the Volume from a failure of max 1 disk of each Raidz1 in the pool (a total of 5 disk in the worst case, as long as the failed disks are each in one different stripe). Is this correct?
2nd:
Even if this is correct, I'm not that confident about this way because if I loose 1 stripe (i.e. in the unfortunate event of 2 disk loss in a single Raidz1) I'm gonna trash ALL my storage pool. Is this assumption correct? (Or can I recovery data from the healty survived stripes? According to the "noob guide", no, the volume will be totally crashed)
3rd (interesting only if 2nd is false, unlikely): :
How does ZFS span my data across different stripes? Fill the first stripe added and then write to the second? Does it make any kind of balance between all stripes?
4th (valid only if 2nd is false, unlikely):
I'm going to create multiple dataset, is there a way to "force" the system to use a specific stripe for each dataset? If so, it could provide the "one storage pool" flexibility advantages (i.e. variable size of datasets) along with the option to choose the "most reliable" stripe for critical data (I have some old disks, more prone to fail).
In conclusion, if 1st and 2nd assumptions are true as I suspect, I'm going to create different Volumes for each Raidz1. If a stripe fail I'm not going to loose all my data. Correct? :D
Thank you