NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 512M 0 part
├─sda3 8:3 0 449.3G 0 part
└─sda4 8:4 0 16G 0 part
└─sda4 253:0 0 16G 0 crypt [SWAP]
sdb 8:16 0 3.6T 0 disk
└─sdb1 8:17 0 3.6T 0 part
sdc 8:32 0 9.1T 0 disk
└─sdc1 8:33 0 9.1T 0 part
sdd 8:48 1 18.2T 0 disk
└─sdd1 8:49 1 18.2T 0 part
sde 8:64 1 232.9G 0 disk
└─sde1 8:65 1 232.9G 0 part
My boot-pool is on sda, it is a 512 GB SSD. My concern is that boot pool doesn’t need that much space, so most of it is wasted. More importantly, I would like to start using virtual machines and jailed apps, and I need storage for that. I would like to use this SSD for that but currently I cannot select it, the UI only lets me select a data pool, which is HDD.
How can I repartition the SSD while keeping the boot pool on it? So in the end, I would like to have the boot pool and all the necessary EFI and other partitions there, and have a couple hundred GB data pool which I can use for VM storage.
Save your config file, re-install on a smaller SSD, restore your config file.
Save your config file, re-install on this SSD with a small boot-pool (say 16GB or 32GB - search for instructions), restore your config file and then build an extra pool on the remainder of the SSD. (I have done this and don’t regret it. It is NOT supported by iXsystems because of the additional difficulties if you need to reinstall TrueNAS again in the future, but it works.) If you do this, make sure that you replicate your SSD pool to an HDD pool as a backup.
It doesn’t get more straightforward than option 1, takes less time too.
Compared to your example it doesn’t even require the use of a third-party application.
Yes, but I have to reinstall TrueNAS, so it requires a display and keyboard which is a little more setup than I expected, not to mention that I have to “destroy” the original system and re-import the pools etc.
Given your hodgepodge of drive sizes, it doesn’t seem like you are using much (if any) of the power of ZFS - so I am wondering what prompted you to use it over (say) UnRaid or OMV which might give you more flexibility on redundancy with mixed sized drives?
I would definitely recommend this option. Today, when large drives are needed, small ones are very cheap and you certainly should get one (or even two and make boot pool mirror).
Get for example a 128 GB SSD for 20-30 $/€ and use your current drive for something else.
This is something that you’ll do once, so you can “borrow” them from your regular desktop computer just for this purpose. After that, disconnect the peripherals and continue to manage it through network.
(by the way, when I installed mine, I connected it to TV)
Proper server hardware is definitely recommended for any commercial environment where you should have a rack-mounted infrastructure (even if it is only a single rack)…
But for home / very small businesses where this may be your only server, then I think that low cost non-rack-mounted hardware where you need a keyboard and mouse for initial build and rarely for support is a much more valid choice (or if this is a problem for you as the owner, then cough up the wonga and buy IPMI hardware).
This is not the final setup, I’m still figuring things out. TrueNAS seemed like the best choice for many reasons and I learned a lot along the way, which is nice.
The 4 and 10 TB disks will be yanked out and repurposed and I will put in (eventually) a second 20 TB one to have a mirrored pool. Having read the comments here I will probably repurpose the 250GB SSD (which was L2ARC for a time hoping it will help with faster directory listing), buy a second one and reinstall Trunas there to have it mirrored, too. And I will use the 512GB one as app data pool. This setup will be probably good enough for a long time, apart from probably needing to increase the not too big 16GB RAM that is has now.
L2ARC will actually slow down your access if you only have 16GB of memory - you really need 64GB before it becomes useful and even then it is probably better for you to get more memory instead.
By all means repurpose the 250GB SSD as a boot drive - a mirror is a nice-to-have but not essential so long as you have a recent backup of your configuration. (Implement @joeschmuck’s Multi-Report script to get a copy emailed to you weekly.) In the event of a boot drive failure, you can reinstall to any spare drive, upload your configuration file and you are off and running again.
Using the newly free 512GB SSD as an apps / VM pool is a great idea. Buying a 2nd SSD as a mirror is a good idea for this, but if not you can replicate it to HDD as a backup.
If faster directory listings are your real performance requirement, then you can either set ARC to metadata only for your pool/dataset, or you can tweak the relative importance that ZFS gives to keeping metadata in ARC over actual data. (But beware that the default settings are designed to be good for most workloads, so you may make things worse by tweaking these.)
My own NAS has only 10GB of memory, of which 1GB is used for apps, and yet I still get 99.5%+ ARC hit rate. But more memory is generally good.