TrueNAS Scale in a VM`

I have a xen hypervisor (Debian) running on a server and want to use a VM to run my main NAS. I’m having some issues getting the install to work, so I’m wondering if anyone here has tried this?

I’m using the scale install USB that I used for my backup machine for a clean install of 24.10, mounted in dom0. In my config I point to the kernal and ramdisk from in that mount point and it is obviously seeing it as I get the Debian version info. The create command is hanging (no prompt any more, but I ssh in to dom0 in another window and it is listed as running) at a line that says:

crc32c_intel: module verification failed: signature and/or required key missing - tainting kernel

I think this is fine, just means the kernel is not known by the dom0 host. But perhaps this is not possible on the xen project hypervisor?

Some more detail: in the xl config file I am pointing to the kernel that I take from the iso:

kernel = "/mypath/vmlinuz"

I have the iso itself mounted as a cdrom for guest access:

disk = [ 'phy:/dev/VG_Fast/LVWin,hda,w','file:/root/TrueNAS-SCALE-24.10.1.iso,hdc:cdrom,r' ]

I think that the “hdc” designator means the cdrom is on disk c, but I took this from a windows guest config. I also need to tell the installer where the root device is, and it wants a block device. So I tell it to use the iso file directly:

extra = "root=/root/TrueNAS-SCALE-24.10.1.iso debian-installer/exit/always_halt=true -- quiet console=hvc0"

This results in an error “/dev/root: Can’t open blockdev”. I get the same error when I give the root argument a path to the iso mounted in dom0. So somehow in my config I have to have the guest mount the block device that is the iso file. The create command lists all of the bdev filesystems with fuseblk and there are none. I’m not sure how to provide the proper root path for the kernel from the iso image file.

I know you’re not on Proxmox but posting links to both articles on TrueNAS being virtualized.

Virtualize TrueNAS

Thanks for that . . . I have in the meantime decided that the old xen debian needed an upgrade so put xcp-ng on it. Getting used to that, but I was able to get TrueNAS SCALE 12.10 running, and even imported my 2x8TB mirrored pool with success.

However, I’m getting a system instability from systemd-journal processes spawning and then being killed. It seems that the VM shutdown or there was some problem with the pool once it was loaded. I did not do any writes to it, and was just setting up a samba share for it when it went into this unstable mode. From what I’m reading I will probably have to start over with a new pool and reload the data from backups. I’ll poke around a bit before I decide to do that, but the idea is this will be my primary TrueNAS deploy and will do backups to another TrueNAS SCALE box that has a 6x2TB array with more redundancy.

From the second link it seems that there is potential that not having the boot pool isolated on a passthrough could be an issue especialy if the storage pools use zfs. I’m not sure how I would pull this off though, if the boot and storage devices are on the same controller which is on a pass through, how would I get the system installed? It must be a sequential operation, install, then set up the passthrough.

It’s a Proxmox with TrueNAS VM issue because both can use ZFS. I don’t know if the boot is an issue in your case.