Attempting to mount NFS Share from VM hosted on TrueNAS Scale

I recently migrated my TrueNAS from CORE to SCALE Dragonfish-24.04.2. The migration went smoothly for the most part - my data is all intact, the basic shares are there, and the Virtual Machine I have that is running Virtualmin is intact and working. So far, so good.

Under my CORE setup, I had a dataset shared out via NFS, which I then mounted from the VM (running Rocky Linux). The VM would run backups on a regular schedule, backing up various data to the NFS share, so it would be outside the VM and on the TrueNAS file system. After migrating to SCALE, the NFS share is still there, but the Linux VM cannot connect to it - when I used the UI in Virtualmin to try to find the share, a message comes back that no NFS servers are found.

The TrueNAS host is on 10.0.0.253, the VM is on 10.0.0.240. I’ve added the VM as an allowed host via IP, and even when the Network and Host fields are blank, I am getting the same error.

Given the VM hasn’t changed, I suspect the issue is TrueNAS Scale. How can I check to make sure the share is properly configured to allow a client to access it? Am I missing something obvious?

Alternatively, if there’s another way to map / mount a dataset to a VM to allow disk access that’s new under SCALE, that would work, too.

Thank you!

This sounds like the “create a network bridge” issue. Can you ping the NAS from the VM?

Ah, no, I cannot. I can access both of them individually, but I cannot ping the TrueNAS from inside the VM. They’re on the same subnet and are both available, so I figured they could talk to each other that way.

Then yes, you need to create a network bridge. These docs cover the process:
https://truecharts.org/clustertool/virtual-machines/truenas-scale/

You don’t need to follow all of them, naturally, because you aren’t creating a Talos VM, but they cover creating the bridge interface. That’s the interface on your NAS to which you’ll assign an IP address, and that’s also the interface you’ll give your VM.

I made a short video about this, the order of operations can be tricky to get right.

Also, check the CPU Mode in your VM config. It should probably be “Host Model” rather than the default of “null” which is effectively “potato”

When I try to remove the currently assigned IP address for eno1, I get the message:

‘10.0.0.253’ is being consumed by Applications, please use a different node IP in applications configuration.

I can’t see where to remove / unset this - I don’t have any Apps installed yet.

“Unset” the apps pool. Then do the bridge thing.

Then reselect the apps pool (if you want)

OK, got everything configured according to the documentation, I’m booting the VM now and will report back once I can get NFS mounted. Thank you for the guidance!

BINGO! I’m back and mounted! Thank you for all the help!