ProblematicLlama
Dabbler
- Joined
- Jan 25, 2015
- Messages
- 26
Hi,
TL;DR: I know you can easily add disks to a striped mirror to increase capacity, however... is it possible to replace 2x mirrored 3TB disks in that setup with 2x 8TB disks and get the additional capacity? Or is the only way to increase capacity to add another mirror to the end of the stripe?
I have recently started to develop an issue with one of my disks which is in a raidz1 array. I'm considering eventually moving to something else (either raidz2 or striped mirrors) as resilvering is pretty nervewracking in raidz1.
Right now I have 5x 3TB WD Reds but I'm thinking if I do go ahead and change everything, I'll gradually get 8TB drives - partially so I can actually grab the data off the existing setup I have ready to copy over to the new one! The reason I'm leaning more to striped mirrors is that I have heard that replacing a disk with raidz2 takes a *very* long time, so just imagine that when I eventually have a load of 8TB drives.. it would be nuts. Also it will be quite a while before I can afford to make them all 8TB disks (and obviously ever disk has to be the same size in order to get the full capacity in z1-3).
Anyway, at first, the array would probably look like this:
6x3TB WD Red Drives = 9TB in a striped mirror (obviously 3 mirrors striped, and beforehand I'd copy as much data as I can onto 8TB disks)
Then I'd add in the 2x 8TB disks.
So basically - is that possible or is the only way to increase capacity to add disks at the end of a stripe (or, I guess, dangerously seaparate the mirror, create a new unmirrored stripe with the new capacity, copy the data on the original unmirrored stripe over to the new one, then retroactively mirror them... if that's even possible.. and that sounds incredibly dangerous!)
If it is possible, how exactly does FreeNAS do it? Trying to wrap my head around that part and can only come up with pretty unconvincing methods, e.g. it creates a new vdev on the back half of the disk and adds that to the stripe, but that would be stupid as it would have double striping on the same disk with presumably quite a large performance impact. I guess the sensible way for it to do it would be for it to push all the data from the subsequent disks back - presumably that would be pretty slow and intensive but it would.. probably.. work.
Thanks in advance!
TL;DR: I know you can easily add disks to a striped mirror to increase capacity, however... is it possible to replace 2x mirrored 3TB disks in that setup with 2x 8TB disks and get the additional capacity? Or is the only way to increase capacity to add another mirror to the end of the stripe?
I have recently started to develop an issue with one of my disks which is in a raidz1 array. I'm considering eventually moving to something else (either raidz2 or striped mirrors) as resilvering is pretty nervewracking in raidz1.
Right now I have 5x 3TB WD Reds but I'm thinking if I do go ahead and change everything, I'll gradually get 8TB drives - partially so I can actually grab the data off the existing setup I have ready to copy over to the new one! The reason I'm leaning more to striped mirrors is that I have heard that replacing a disk with raidz2 takes a *very* long time, so just imagine that when I eventually have a load of 8TB drives.. it would be nuts. Also it will be quite a while before I can afford to make them all 8TB disks (and obviously ever disk has to be the same size in order to get the full capacity in z1-3).
Anyway, at first, the array would probably look like this:
6x3TB WD Red Drives = 9TB in a striped mirror (obviously 3 mirrors striped, and beforehand I'd copy as much data as I can onto 8TB disks)
Then I'd add in the 2x 8TB disks.
So basically - is that possible or is the only way to increase capacity to add disks at the end of a stripe (or, I guess, dangerously seaparate the mirror, create a new unmirrored stripe with the new capacity, copy the data on the original unmirrored stripe over to the new one, then retroactively mirror them... if that's even possible.. and that sounds incredibly dangerous!)
If it is possible, how exactly does FreeNAS do it? Trying to wrap my head around that part and can only come up with pretty unconvincing methods, e.g. it creates a new vdev on the back half of the disk and adds that to the stripe, but that would be stupid as it would have double striping on the same disk with presumably quite a large performance impact. I guess the sensible way for it to do it would be for it to push all the data from the subsequent disks back - presumably that would be pretty slow and intensive but it would.. probably.. work.
Thanks in advance!
Last edited: