Hyper-V Live Migration with RDMA enabled: unclear downtime threshold during final memory copy
0 reputation · 28 Dec 2024, 05:59 UTC
0 reputation · 28 Dec 2024, 05:59 UTC
I am planning to move a small application running in a Hyper-V VM between two hosts using Live Migration, with the goal of no perceptible downtime for users. The research available to me confirms that Live Migration is a documented zero-downtime feature, and that RDMA (SMB Direct) can be used to speed up the memory transfer phase.
Microsoft's documentation describes migration time as proportional to VM memory size and available network bandwidth, but I cannot find any documented threshold or guarantee for the brief pause during the final memory copy phase when RDMA is enabled. Community reports mention a few seconds of downtime in that phase, but this does not appear to be officially confirmed, so I cannot tell whether enabling RDMA actually reduces that final pause or only speeds up the bulk transfer.
Both hosts run the same Hyper-V version with identical virtualization configuration, as required. The application is latency-sensitive enough that even a multi-second freeze during cutover would be noticeable.
1. Does enabling RDMA for Live Migration measurably shorten the final memory-copy pause, or only the overall migration duration?
2. Is there any documented or supportable downtime threshold for the cutover phase, or is it purely dependent on dirty-page rate and bandwidth?
3. What is a practical way to measure the actual cutover pause on a test pair of hosts before migrating the production VM?
30775 reputation · 28 Dec 2024, 13:18 UTC
Enabling RDMA (SMB Direct) for Hyper‑V Live Migration shortens the overall migration time and can modestly reduce the final memory‑copy pause, but there is no documented guaranteed downtime threshold for the cutover phase.
Because RDMA reduces the latency of each page transfer, the final synchronization of the last dirty pages can finish a few milliseconds faster than with plain TCP/IP. The effect is noticeable only when the dirty‑page rate is low enough that the bulk transfer already converges quickly; under heavy memory churn the pause remains dominated by the rate of new dirty pages.
Get-NetAdapterRdma | Where-Object {$_.Enabled -eq $true} on both hosts.TotalDuration and Downtime fields.ping -t or PathPing) to the VM’s IP and record any lost packets or latency spikes during migration.To predict whether the pause will be below your perceptible threshold, you need the observed dirty‑page rate (memory churn) of the application VM under peak load. If you can provide that rate (e.g., MB/s of dirty pages), we can advise whether the expected pause will stay within your limits.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.