Safe to upgrade from Core to Scale?

I am currently running a TrueNAS Core server, version 13.0-U6.2. I am preparing to migrate to Scale (Dragonfish).I have been through the Docs and covered all points in the preparation document. I just want to make really sure I´ve done everything and thought of everything, thus this post.

Som info about my current system that might be relevant:

I´ve built it out of an HP Z420, with a Xeon CPU and 64gb RAM.

In a PCI port, I have an HBA installed. LSI SAS9211-8i. To that, there is 6x4TB WD HDD Drives connected, all my “important” data is stored in a single Raidz2 pool here. The critical stuff is also stored on another server, geo-redundant.
Connected to the S-ATA ports of my mainboard, there are 5 SSD drives connected. 1 for boot environment (240gb), and four that make up another pool, where I have all my apps/jails, VMs and such. Also all storage associatied with those VMs and appsm such as config files, databases etc.
I have not encrypted any of the pools, how can I verify that no encryption is in place?

I have moved everything away from iocage jails. I still have three of them, but they or not being used, and are shut down. They also hold no data that I need. Everything is moved to an Ubuntu server that is running a Docker host, which is one of my VMs.

My VMs: docker(ubuntu), openvpn(ubuntu) and Windows10.

The VMs are important. I really want them to transfer and work after migrating. Same for the pools of course.

What do i need to do in order to keep everything intact after migrating?

In the Core UI, there is an option to switch to tha Scale Dragonfish train and migrate that way. But the recommended way seem to be to do a clean install. Which would mean retrieving the server, connecting a monitor and keyboard etc. Is that necessary? Any risk in trying migrating in the UI?
If I do a clean install, should I replace the current boot disk, or overwrite the current Core system with the Scale installation, using the same disk?

Anything else I haven´t thought of?

I think you’ve covered the bases here. Removing iocage jails and making sure you didn’t have full disk encryption was the primary things to check. I’d recommend taking a backup of your config DB first, then you can go the online update route. Depending on any bootloader funkiness you may need to re-load fresh, in which case you would do that and tell it to import the configuration, or provide the backed up version you saved offline.

You need to check the network interfaces on the VMs after the migration, and you may want to check the CPU model which is passed into the VM.

I did download the config, including secret seed, I also downloaded a debug file, as per what the prep docs said. So that´s covered.

About encryption, how can I double check, and make 100% sure no encryption is used? I´ve never made the choice to encrypt, I just want to make really really sure

We´re talking about Adapter type under VM → Devices → NIC, right? I have that noted.

How and where can I check this? Worth noting before migrating?

Today, I decided to go ahead with the migration. I migrated using the web interface, changed trains to Dragonfish and pushed it through.

The upgrade itself went smoothly, and the server was up and running Scale a few minutes later. The problem now is networking för my VMs. As said earlier, I have three of the, Two running Ubuntu server, and one running Windows. The Windows one has a VirtIO adapter and can access the Internet. It can not ping the TrueNAS ip address, though.

The two Ubuntu servers don´t seem to have any networking at all.
ip a looks like this:

So there is no IPv4 address, which they should get from DHCP, in the same network as the TrueNAS host is installed. For some reason they can´t reach that network anymore.

Something seems to have been lost in the upgrade, but I am not sure what. The Interdace name changed from em0 to eno1, but each VM NIC has that adapter selected. i tried switching a Ubuntu to the VirtIO adapter, but that didn´t help.
Pre-upgrade I checked my network settings in TrueNAS, and there was only one device, so I don´t think there should be another here either. I think everything looks as it should, but since it doesn´t work, I am crearly missing something.

I could really use some help here, in finding out what´s wrong.
I have saved a config fil from before the upgrade, and also a debug file, if that could help somehow…?

I fund, and tried, this:
https://www.truenas.com/docs/scale/23.10/scaletutorials/virtualization/accessingnasfromvm/

But as I pressed Test changes, it took about a minute, and them the Network page came back, but with all the changes reverted. So there must be something misconfigured there, but I don´t really get any hint or message to what it could be. Does anyone know what I am doing wrong?

The 60 Seconds are a test window for your Changes, there should be a Pop-up where you have to click and save the changes, otherwise the changes will be reverted after the 60 Seconds. If the Pop Up doesn’t Show try to Open the GUI in a new window and ib the top right Corner of the GUI should be an Icon you can click to save the changes

No, I don´t get a popup when I save the new bridge interface. I just get this, on the Network page, above the Interfaces section:

There I click Test Changes, and then it reverts after those 60 seconds. I tried opening a new window, but I don´t see any save option in the top right. Where should I see that exactly, and when?

The Pop-up should come after you press test changes.

Pressing Test Changes, I get this popup:
image

I check Confirm, and press Test Changes again. Then it takes a minute, and loads the Network page again, all changes reverted. Should there be another popup, or am I doing something wrong?

There should be another Pop-up to confirm and save the changes

Thank you for helping,

Ok,
I rebooted my laptop, went into Network in my Google Chrome Inspect window, disabled caching and left it open.

I then tried doing this again. Same thing. Just the above popup, not another one. Page comes back reverted. Any way to work around this? I didn´t have a bridge interface in Core, do I need one in Scale anyway? Or is there another way to solve this?

When creating the bridge, I entered the TrueNAS current IP for an alias, is that correct? Or should that be something else?
Where do I go from here? :slight_smile:

If you don’t create a bridge your vms cant access the data on your nas because by default they’re isolated from the host on scale.
Community Member stux made a video on setting up bridges, maybe it’ll help you:

2 Likes

I finally got the bridge to stick, actually. I had missed that you need to have all VMs turned off, or the bridge won´t get created. So, now that is there. And I selected it in the NIC settings for each of my Ubuntu VMs, and started one of them. But it still doesn´t get an IP. Is there something else to be done?

Running ip a in the VM, there are two interfaces, lo0(loopback) and ens3 (broadcast, multicast). No IPv4 to be found there, though. Should/Could DHCP still work here, or would I need to set an IP in the VM too?

I’m afraid i can’t help you anymore, i’ve never used vm’s on core and never did a migration. I’ve started to use scale while it was in late beta. All vm’s i did use were created on scale and on ubuntu server i’ve used netplan to assign static ips to it.

I understand. Thank for all your time. I actually found something.
As I wrote in my first post today, the NIC name changed when I upgraded. That also happened to the VMs, I just discovered. So I need to set th correct interface name in the netplan config file. Tried it on my first VM, and that seems to do the trick. Got the correct address from DHCP, and it is online!

Now I´ll just work through the rest of them and see if that solves everything.
Again, thanks!

1 Like

This solved it. All VMs now have networking and DHCP IP addresses. Along with the bridge I finally got setup everything is working. Again, thanks for the help and time.

1 Like