Error while moving LXD VM between two different hosts

Summary

I’m attempting to move an Ubuntu 23.04 Lunar Lobster VM between two different LXD hosts, from my Windows 11 dev workstation.

Repro Steps

  1. Create two LXD 5.15 hosts on Ubuntu Server
  2. Configure both as remotes from Windows 11 client
  3. Create a VM on one host
  4. Move the VM to the other host

Actual Result

# lxc move lxd01:u01 lxd02:u01
Error: Error transferring instance data: Failed migration on target: Failed getting migration target filesystem connection: context deadline exceeded

# lxc move --mode=relay lxd01:u01 lxd02:u01
Error: Error transferring instance data: Failed migration on target: Failed getting migration target filesystem connection: context deadline exceeded

Expected Result

VM is moved between hosts.

Does this work if not using relay mode or pull mode?

Please can you get the output of lxc monitor --pretty on both source and target when running those commands?

@tomp Sent PM with logs

I tried using --mode=push and get this instead:

Error: Failed instance migration: Failed waiting for migration control connection on source: lookup lxd05.local: Temporary failure in name resolution

I’m using mDNS (avahi-daemon) on both LXD nodes. On Windows 11, it’s built in.

I verified that:

  • Source can resolve / ping client
  • Source can resolve / ping target host
  • Target host can resolve / ping client
  • Target host can resolve / ping source host
  • Client can resolve / ping source host
  • Client can resolve / ping target host

Alright, I changed the “remotes” on the Windows 11 client to use the IPv4 address of each LXD node, instead of the mDNS names (ie lxd05.local).

Now, the push mode returns this, instead of the DNS error:

Error: Failed instance migration: Failed migration on source: Stateful migration requires migration.stateful to be set to true

The pull mode is still giving the bad handshake error.

The relay mode now gives this, instead of the handshake error:

Error: Error transferring instance data: Failed migration on target: Failed getting migration target filesystem connection: context deadline exceeded