Team Leader - Nutanix Technology Champion - Nutanix NTC Storyteller

Julien DUMUR
Infrastructure in a Nutshell
nutanix move

It may happen that you host servers whose operating systems are not supported by Nutanix Move. In these rare cases, you will then have to proceed manually to migrate your virtual machines and you may encounter post-migration network issues.

In my example, I deployed on my ESXi an Ubuntu Server machine in version 24.04LTS, an operating system released only a few months ago. It is not yet officially supported by Nutanix Move according to the documentation:

When creating my migration plan, I did not encounter any errors, I was able to validate the options without any problems, in automatic mode and I start it immediately.

Unfortunately, the automatic preparation of the virtual machine fails:

The message is clear, Nutanix Move cannot install the necessary drivers:

Drivers Installation Failed. Driver(s) virtio_scsi could not be installed for kernel 6.8.0-45-generic

So I delete my migration plan, create a new one manually and shut down the virtual machine without running the scripts:

I then start my migration plan to migrate the virtual machine to my AHV cluster and everything goes well:

Once the data transfer is complete, I launch the switch immediately. The server is migrated:

On the Nutanix AHV side, I can clearly see my freshly migrated virtual machine:

I start the virtual machine to check that the migration went well. The VM starts correctly but it does not take an IP address…

This problem is common with recent operating systems. As a general rule, they integrate the modules and components necessary for full support by Nutanix. However, it is common for the configuration of the network cards not to be correctly resumed after migration.

To correct the malfunction, you must open a console on your VM and perform the configuration manually.

We start by retrieving the name of the interface:

nutanix@ubuntu24e1:~$ sudo lshw -class network
[sudo] password for nutanix:
*-network
description: Ethernet controller
product: Virtio network device
vendor: Red Hat, Inc.
physical id: 3
bus info: pci@0000:00:03.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: msix bus_master cap_list rom
configuration: driver=virtio-pci latency=0
resources: irq:11 ioport:c040(size=32) memory:febd1000-febd1fff memory:fe000000-fe003fff memory:feb80000-febbffff
*-virtio0
description: Ethernet interface
physical id: 0
bus info: virtio@0
logical name: ens3
serial: 50:6b:8d:c0:82:7b
capabilities: ethernet physical

Here it is ens3. Now we will modify the network card configuration file:

nutanix@ubuntu24e1:~$ sudo vi /etc/netplan/50-cloud-init.yaml
This file is generated from information provided by the datasource. Changes to it will not persist across an instance reboot. To disable cloud-init's network configuration capabilities, write a file /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
network: {config: disabled}
network:
ethernets:
ens160:
dhcp4: true
version: 2

Correct the “ens” line with the correct name of your network card and save the file. Apply the configuration:

sudo netplan apply

That’s it, the machine retrieves an IP address.

You get the idea, my example is based on Ubuntu but reproducible on other recent Linux distributions, as long as you adapt the commands to the operating system.

0 comments

Leave a Reply