TrueNAS-13.0-U1.1: Single stripe to stripe + mirror or simple mirror.

fastzombies

Explorer
Joined
Aug 11, 2022
Messages
57
TrueNAS noob. Recently installed TrueNAS-13.0-U1.1 on a purpose built AMD machine in a 2U rackmount with a 3-bay hotswap chassis.

To get started I had one spare 4TB drive. The plan was to move 2 other identical drives over from a USB RADI1 enclosure once I got stuff setup and copied over. I am ready to do that but now I am very concerned I have screwed myself. I have read many other posts and read documentation but I have not found any definitive answer to my question.

I have a one disk stripe pool. That may have been a mistake but I didn't know any better getting started, never heard of zfs before starting this much less stripes and ZRAIDs. I would like to add one disk as a stripe expansion and the other as a mirror to have a stripe+mirror setup. I thought this would look like RAID5. If that is not possible then at least a mirror and I can upgrade the disks later if they get full.

However, I am very afraid that I cannot change pool topology once it is created so once a non-mirrored stripe always a non-mirror stripe and I can never have redundancy. This would mean I have to create a new pool with the two other disks as a mirror, then recreate all the datasets and permissions copy everythnig over then change the mountpoints of all my plugins, jails and samba shares. This is a miserable prospect as I know something will break.

My options seem to be the following:

1. Add vdevs, but it seems espanding the stripe is all I can do.
2. Go to the status page and find the extend option (why so hidden?) but this seems the same as adding a vdev.
3. Some CLI secret sauce.
4. The miserable prospect described above.

I haven't tried anything yet because I think once I add a vdev or expand I can't take it back and I am limited to 3 drives. This seems like a somewhat common scenario for people who are getting started so I hope this can be an updated definitive guide for TrueNAS-13.0-U1.1 for anyone who hasn't found an answer yet. Any help is much appreciated.
 
Last edited:

c77dk

Patron
Joined
Nov 27, 2019
Messages
468
you can put in one of the "extra" drives and in the GUI select "expand" and choose the extra drive. This should give you a mirror. And if you can do this again to get a 3-way mirror (I'm using this for my important data, to be able to loose 2 disks)
 

fastzombies

Explorer
Joined
Aug 11, 2022
Messages
57
Thanks for the reply.

When I select "Expand" I get a dialogue that says "Expand pool to fit all available disk space." and there is no option to select a disk. The documentation says

Increases the size of the pool to match all available disk space. This option is typically used when virtual disks are resized apart from TrueNAS.

Is that what I want? That doesn't sound like it will make a mirror. I want to be sure before I try something that might be an irreversible operation.
 

c77dk

Patron
Joined
Nov 27, 2019
Messages
468
sorry, I remembered wrong - it's "Extend".

Can't find it in the docs right now (guess it's time to go to sleep) - but this is how to get there (I'm on SCALE now, but did the process in CORE, and think it's the same place):

- find your pool, and show the status
- click the dots to the right on the current disk, and you should see "Extend".

Hope it helps - otherwise I'll check on a CORE system tomorrow (12.0, but UI is about the same)
 

fastzombies

Explorer
Joined
Aug 11, 2022
Messages
57
Looks like that did it, thank you.

root@truenas[~]# zpool status data-pool
pool: data-pool
state: ONLINE
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Tue Sep 6 16:29:49 2022
558G scanned at 14.0G/s, 840K issued at 21K/s, 1020G total
0B resilvered, 0.00% done, no estimated completion time
config:

NAME STATE READ WRITE CKSUM
data-pool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
gptid/10075e9d-1b91-11ed-8c76-d85ed3d9f677 ONLINE 0 0 0
gptid/0848113e-2e2b-11ed-ba77-d85ed3d9f677 ONLINE 0 0 0

truenas-pool-extend-resilvering.png


At least I now have it mirrored and if it gets full I can replace with bigger drives. Is this all I can do? Is it safe to say that if I wanted a stripe+mirror configuration I would have needed to start with at least 3 drives and create the pool with that topology?
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
Is it safe to say that if I wanted a stripe+mirror configuration
There's no sensible way to have stripe+mirror with three disks. It's possible to have a mirror striped with a single disk, but why would you want to? You'd have a 33% chance of a disk failure losing all your data for you.
 

fastzombies

Explorer
Joined
Aug 11, 2022
Messages
57
Reading some zfs docs I had understood stripe+mirror to be like RAID5, so I was not thinking a single disk as that doesn't make sense. From what I can tell a striped+mirror/RAID5 topology would need to be done when the pool is created and a single stripe disk pool cannot be expanded to that after the fact. I am fortunate I can add a mirror.

So I will have to live with a simple mirror which is fine as it frees up my last bay for a single stripe pool for TimeMachine backups, which I don't need mirrored and keeps my main data pool clear of non-critical data.

I think I have this sorted, thanks all for the help. I hope someone else gets help from this. If there are any other comments on this I am still interested learning.
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
I had understood stripe+mirror to be like RAID5
I'm not sure how you would have thought that. The ZFS parallel to RAID 5 would be RAIDZ1.
 
Top