Live Migration

Migrate running VMs between cluster nodes with zero downtime using Proxmox VE live migration.

Live Migration

Live migration moves a running VM from one node to another without interruption. Users and services experience no downtime during the migration.

Requirements

  • Both source and target nodes must be in the same Proxmox VE cluster
  • The VM disk must be on shared storage (Ceph, NFS, or iSCSI) accessible by both nodes
  • Sufficient RAM must be available on the target node
  • Network bandwidth between nodes (10 Gbps recommended for fast migrations)

Migrate a VM

  1. Right-click the running VM in the left panel
  2. Select Migrate
  3. Choose the Target Node
  4. Select Online migration (default, keeps VM running)
  5. Click Migrate

The progress bar shows memory transfer progress. Migration typically completes in 15–60 seconds depending on VM memory size and dirty page rate.

Migration modes

ModeVM stateUse case
OnlineRunningZero-downtime production migrations
OfflineStoppedVMs without shared storage

Shared storage migration

If the VM disk is on local storage (not shared), Proxmox can still migrate it offline by transferring the disk. For live migration, the disk must be on shared storage.

To move a local disk to shared storage:

  1. Go to VM → Hardware → Disk
  2. Click Move Disk
  3. Select target storage (e.g., ceph-rbd or nfs-backup)

Bulk migration

To evacuate a node (e.g., before maintenance):

  1. Select the node in the left panel
  2. Click Migrate all VMs
  3. Choose the target node or let Proxmox auto-select

Or via CLI:

# Migrate all VMs from node1 to node2
for vmid in $(pvesh get /nodes/node1/qemu --output-format=json | jq '.[].vmid'); do
  qm migrate $vmid node2 --online
done

Troubleshooting

Migration stuck at 99%: The VM has high memory write activity (dirty pages). The VM will briefly pause at the end to sync the last dirty pages. This pause is typically under 1 second.

“No common storage” error: The VM disk is on local storage. Move it to shared storage first.

Migration fails with network error: Check that ports 60000–60050 are open between nodes (used by the migration protocol).