BetYourBottom
Contributor
- Joined
- Nov 26, 2016
- Messages
- 141
I've finally used up over 80% of my ZFS storage and it's currently mad at me for it (read: I have the warning that ZFS doesn't work as efficiently in this range), so I'm looking to get some more drives.
I started with 6x4TB Raid-Z2 and am looking at getting 6x12 or 14TB drives. I never enabled encryption, even with an empty key, on my old pool which was a mistake because it makes it more complicated should I have a drive start to fail and I need to get rid of it or trade it in securely. Based on my research, I read that it wouldn't really be feasible for me to enable encryption after the fact so I gave up on it.
Since I'm now reaching my storage limits, I figured this would be a perfect time to transfer to pool over to a new set of drives while enabling encryption. However, I'm having a bit of trouble planning it out so that I can do it as seemlessly and safely as possible.
I'd like if I can move my jails over seemlessly and keep any mounted storage they have set up the same. I'm considering modifying my ACLs and I'm not sure if that would be better to do on a fresh directory structure and then move the files in or if I should just do it after the transfer and adjust all the files at once; I know that modifying a large number of ACLs on Windows at once can be slow and sometimes will freeze (IIRC) but I know there is the new ACL editor built in that might make it a lot easier to manage.
Also I'm debating on what to do with the old drives; my server supports 12 drives total, so I was considering attempting to just combine all the drives into one large zpool separated into 2 vdevs, however, I'm worried about how the data would balance out, storage efficiency and drive failures. If I just expanded the zpool with a new vdev I wouldn't be able to add encryption, that means I'd have probably have to move the zpool to the new drives and then add in the old drives after it's finished; I'm not sure if the data being all on the larger array would be terribly unbalanced or if that could cause any issues. On storage efficiency, ideally I'd be able to use only 2 parity drives across all 12 drives to increase the amount of storage I get but with the previous setup it looks like I'd continue with the 66% storage efficiency; is there an elegant way to increase this without sacrificing data safety? With drive failues, I am slightly worried about the costs of drive failures in the future, if I add in the old 4TB drives into the pool then if they fail I'd either have to buy 4TB drives that are no longer cost efficient (and are likely now SMR) or replace them with larger drives that I won't be able to utilize the space of until I've swapped all the 4TB drives and expanded the vdev.
With those issues in mind, are there good mitigations for the issues or should I consider using the 4TB drives as a separate zpool that I'd have to manually balance data into or use only for certain files e.g. movies or isos exclusively.
Once I have the new drives, will transferring the data be as easy as doing a zfs send from the original pool into a zfs receive for the new pool? Or is there some other precautions that I have to take into account?
I started with 6x4TB Raid-Z2 and am looking at getting 6x12 or 14TB drives. I never enabled encryption, even with an empty key, on my old pool which was a mistake because it makes it more complicated should I have a drive start to fail and I need to get rid of it or trade it in securely. Based on my research, I read that it wouldn't really be feasible for me to enable encryption after the fact so I gave up on it.
Since I'm now reaching my storage limits, I figured this would be a perfect time to transfer to pool over to a new set of drives while enabling encryption. However, I'm having a bit of trouble planning it out so that I can do it as seemlessly and safely as possible.
I'd like if I can move my jails over seemlessly and keep any mounted storage they have set up the same. I'm considering modifying my ACLs and I'm not sure if that would be better to do on a fresh directory structure and then move the files in or if I should just do it after the transfer and adjust all the files at once; I know that modifying a large number of ACLs on Windows at once can be slow and sometimes will freeze (IIRC) but I know there is the new ACL editor built in that might make it a lot easier to manage.
Also I'm debating on what to do with the old drives; my server supports 12 drives total, so I was considering attempting to just combine all the drives into one large zpool separated into 2 vdevs, however, I'm worried about how the data would balance out, storage efficiency and drive failures. If I just expanded the zpool with a new vdev I wouldn't be able to add encryption, that means I'd have probably have to move the zpool to the new drives and then add in the old drives after it's finished; I'm not sure if the data being all on the larger array would be terribly unbalanced or if that could cause any issues. On storage efficiency, ideally I'd be able to use only 2 parity drives across all 12 drives to increase the amount of storage I get but with the previous setup it looks like I'd continue with the 66% storage efficiency; is there an elegant way to increase this without sacrificing data safety? With drive failues, I am slightly worried about the costs of drive failures in the future, if I add in the old 4TB drives into the pool then if they fail I'd either have to buy 4TB drives that are no longer cost efficient (and are likely now SMR) or replace them with larger drives that I won't be able to utilize the space of until I've swapped all the 4TB drives and expanded the vdev.
With those issues in mind, are there good mitigations for the issues or should I consider using the 4TB drives as a separate zpool that I'd have to manually balance data into or use only for certain files e.g. movies or isos exclusively.
Once I have the new drives, will transferring the data be as easy as doing a zfs send from the original pool into a zfs receive for the new pool? Or is there some other precautions that I have to take into account?