Moovv1.0.38
Moov

VMware to Proxmox VE migration

Moov migrates virtual machines to Proxmox VE using Veeam Backup & Replication V13 restore points as the source. The source vSphere environment takes no part: Moov never connects to vCenter or ESXi at any point of the migration, so there is no maintenance window needed on the VMware side and no credentials for the original environment.

VMware vSphere
out of scope
Veeam Backup & Replication V13
source: restore point
Moov appliance
core + disposable helpers
customize · NBD · pivot
  • Proxmox VE8.x / 9.x
  • oVirt / OLVM4.5+
  • HPE VM EssentialsMorpheus 8.1.x · 9.0.x

Prerequisites

Proxmox VE 8.x or 9.x

Both branches are fully supported. The cluster needs at least one node with room for the helper (8 vCPU, 16 GB of RAM and 50 GB of disk with the defaults) on top of the space for the VMs you are migrating.

An account with administrative rights

The target wizard bootstraps the API token automatically: you provide credentials once and Moov creates the token it will use from then on. You do not need to generate the token by hand.

Storage that accepts VM images

Any Proxmox storage that accepts VM disks works: local-lvm, ZFS, Ceph RBD or NFS. For Instant VM Migration, the pivot target should be local storage or Ceph rather than a slow NFS, since that is where the VM ends up running.

Network between appliance, helper and Veeam

The Moov appliance needs to reach the Veeam B&R server and the Proxmox API. The helper, which runs inside Proxmox, needs to reach the appliance over mTLS and the Veeam repository to read the published disk.

Migration steps

The full run, from a freshly deployed appliance to the first VM running on Proxmox.

  1. 01
    Connect the Veeam server

    Under Connections → Veeam, add your Veeam Backup & Replication V13 server and test the connection. Moov uses the REST API for the inventory and the Data Integration API to publish disks without modifying the backup.

  2. 02
    Add Proxmox as a target

    Under Connections → Targets, pick Proxmox VE and enter the node address plus administrative credentials. The wizard creates the API token automatically and validates access.

  3. 03
    Deploy a helper on Proxmox

    Moov creates a helper VM inside Proxmox itself. The helper registers with the Core over mutual TLS using a single-use token and becomes Active. It is disposable: it is removed when the wave finishes.

  4. 04
    Run preflight

    Scan the Veeam catalog and run the Pre-flight Inspector against the VMs you want to migrate. It classifies each one by operating system, disks and VirtIO readiness, and estimates the capacity needed on the target.

  5. 05
    Pick a mode and plan the wave

    Per VM you choose Instant VM Migration, when you need it booting in under 60 seconds, or Cold Migration, when you prefer to copy the disks and power it on in your own window. The Wave Engine schedules VMs concurrently within the helper capacity.

  6. 06
    Launch and verify

    The Core publishes the restore point, the helper serves the disk over NBD and Proxmox creates the VM. You follow per-disk progress in the console. With Instant Migration, once the mirror completes the pivot leaves the VM running entirely on Proxmox storage.

What happens to the guest operating system

Before the VM boots on Proxmox, the customize stage runs offline against the mounted disk and adapts it to KVM. No auxiliary appliance and no KVM installed on the helper are required.

  • VirtIO drivers (vioscsi and viostor) are injected into Windows and Linux guests, which enables the virtio-scsi bus on Proxmox.
  • VMware Tools are uninstalled so they do not compete with the KVM drivers and agent.
  • The QEMU Guest Agent is prepared, which Proxmox uses to query the IP, run fsfreeze and execute commands inside the guest.
  • Static IPs are reapplied according to each NIC PCI slot, including Windows guests with several interfaces.
  • On guests that boot via UEFI the ESP partition is seeded or repaired, and on Windows the BCD fixup runs.

Known limits

  • The source must be a VM image backup in Veeam B&R V13. Agent and application backups are out of scope.
  • Core and helpers must be on the same version: since v1.0.38 the Core refuses work from older helpers.
  • Concurrent capacity per helper is set by its CPU and RAM, roughly 1 vCPU and 2 GiB per in-flight VM.
  • With Instant VM Migration the VM depends on the backup until the pivot completes, so the Veeam repository must stay available for that window.
← See every supported target