Same thing happened to me. Installing the package and rebooting did not make the module auto load. The doccumentation says it will auto load.
After creating the zpool and doing ‘xe sr-create …’ it did load on reboot.
I’m on xcp-ng 8.2.1 (latest as of writing).
pool is everything. You can create filesystems at will by creating a dataset with your preferred properties. It usually makes sense to create multiple dataset for different types of data and purposes, also to save space and get more performance. I have 17 datasets on my server (+30 or so zvols) and 26 on my laptop. Limit is 2^48 datasets and thus mountpoints, so make use of it.
With only one dataset, you’re also limited in snapshots/backup, as you have to rollback the entire pool where a special dataset/zvol for a VM is all you need to rollback the VM.
Limit on the amount of datasets is 2^48, so there is no need to not use them.