I have three projects queued to update and expand my Plex Media Server TrueNAS CORE server (all media is backed up offline, so data loss is just inconvenient, not catastrophic):
- upgrade my 2014-ish ASUS M5A97 MB / AMD FX-6300 CPU server to an Asrock E3C246D4U2 MB / Intel Xeon E-2246G CPU server
- migrate from TrueNAS CORE to SCALE
- add two 8TB HDDs as a mirror vdev to the current mirrored 8TB TANK pool, to bring total TANK pool storage to two mirrored x 8TB vdevs, or 16TB redundant storage
My gut says do 2) first since its less involved, run it for a week or two to make sure things work, THEN do 1).
My plan is to get a new pair of 120GB SSDs to replace the mirrored 120GB SSD’s I currently use to boot CORE; copy the old CORE SSDs to the new CORE SSDs; install the new CORE SSDs; and make sure CORE boots like it has for years. THEN do the SCALE migration. This way I’m able to retreat back to the removed current CORE SSDs if the SCALE boot SSDs take me into the weeds (I think?).
My thinking is if I do 1) first, then 2) and subsequently have problems after the migration, it might be difficult to determine if the problem originates with the migration or the hardware upgrade.
THEN do 3), the HDD addition. The reading I’ve done discourages RAIDZ1 for large HDDs due to the risk of a 2nd drive failing while resilvering a replaced HDD. One comment suggested the max for Z1 might be 8TB HDDs, so I’m on the cusp.
Assuming my risk aversion allows me to accept Z1 on 8TB HDDs, I figured on a pool made up of 2 x 2-way mirror vdevs, that is a pool made up of 2 vdev’s of mirrored 8TB HDDs. Because the data is striped across both vdevs, the pool only fails if I lose both HDDs in either vdev. So I should have a pool of 16TB single parity storage (50% efficiency).
To move from the current pool of a single vdev of one 8TB mirror to two vdevs each of one 8TB mirror, I’d have to backup the original 8TB mirror, then create the two 8TB mirror vdevs from scratch as a 2x2-way RAIDZ1, then recover the backed up data to the new Z1 setup, where data is striped across the two vdevs.
Or can I just add the new mirrored vdev to the existing pool - I can’t see this working, but I’m just not sure … I’m right on the edge of my knowledge/experience, and after a while my eyes glaze over.
Any input/suggestions/expressions of horror on any of the three projects I’ve described are most welcome.