[pve-devel] [PATCH v4 guest-common 0/22] remote migration
Fabian Grünbichler
f.gruenbichler at proxmox.com
Thu Feb 3 13:41:21 CET 2022
this series adds remote migration for VMs.
both live and offline migration including NBD and storage-migrated disks
should work. groundwork for extending to pve-container and pvesr already
laid.
new in v4: lots of small fixes, improved bwlimit handling, `qm` command
(thanks Fabian Ebner and Dominik Csapak for the feedback on v3!)
new in v3: lots of refactoring and edge-case handling
new in v2: dropped parts already applied, incorporated Fabian's and
Dominik's feedback (thanks!)
new in v1: explicit remote endpoint specified as part of API call
instead of
remote.cfg
overview over affected repos and changes, see individual patches for
more details.
proxmox-websocket-tunnel:
new tunnel helper tool for forwarding commands and data over websocket
connections, required by pve-guest-common on source side
pve-guest-common:
new/refactored generic WS/SSH tunnel fork/read/.. helpers
new storage migration over WS tunnel helpers
pve-storage:
refactor storage_migrate to make code-reuse possible
qemu-server:
some refactoring, new mtunnel endpoints, new remote_migration endpoints,
new `qm` command
TODO: handle pending changes and snapshots
TODO: improve handling of C^c
TODO: strict parser for FW config as well?
as usual, some of the patches are best viewed with '-w', especially in
qemu-server..
required dependencies are noted, patch overview follows..
pve-guest-common:
migrate: handle migration_network with remote migration
add tunnel helper module
add storage tunnel module
proxmox-websocket-tunnel:
initial commit
add tunnel implementation
add fingerprint validation
add packaging
qemu-server:
refactor map_storage to map_id
schema: use pve-bridge-id
parse_config: optional strict mode
update_vm: allow simultaneous setting of boot-order and dev
nbd alloc helper: allow passing in explicit format
migrate: move tunnel-helpers to pve-guest-common
mtunnel: add API endpoints
migrate: refactor remote VM/tunnel start
migrate: add remote migration handling
api: add remote migrate endpoint
qm: add remote_migrate command
pve-storage:
volname_for_storage: parse volname before calling
storage_migrate: pull out snapshot decision
storage_migrate: pull out import/export_prepare
add volume_import/export_start helpers
More information about the pve-devel
mailing list