@MichaelCropper
My Truenas runs on bare metal, I have smb SR for iso, NFS SR for VMs, another smb for VMs.
In production I have a second old Truenas that that has smb and nfs that I use for storage updates, migrate from faster to slower storage which is still generally enough for my needs, update Truenas, migrate back to faster. I also have a third Truenas that has user data, but it's big so I set up a backup remote smb to spread out my disaster footprint.
In my lab is just a single bare metal Truenas with whatever kind of share I need. Generally just smh and nfs or iso and vm.
Both systems run three XCP-ng hosts so I can do things like rolling pool updates with no VM downtime. RPU is genius, all automated, just click a button and watch VMs move and hosts reboot.