Migration bandwidth and convergence controls

Migration bandwidth and convergence controls

Bound transfer pressure and diagnose guests that dirty memory faster than it can be copied.

Migration controls limit transfer traffic and the time spent attempting a live move. They are part of the migration request, not a change to the guest's CPU or memory allocation.

Bandwidth policy

Set regional defaults at Fleet → Regions → Region → Policies → Migration. For one move, open Compute → Droplets → Droplet → Placement → Migrate → Advanced.

A region can define a default migration transfer ceiling. An individual request can narrow that ceiling with max_bandwidth_bytes_per_second. The value must be a positive integer; omission inherits the region policy. Zero is rejected rather than interpreted as unlimited transfer.

The effective ceiling is an admission limit, not reserved network throughput. Storage traffic, mesh congestion, and another permitted migration can reduce actual transfer rate below the configured value. Increasing the ceiling cannot repair an unavailable destination or unsupported CPU profile.

Convergence

During pre-copy, the guest continues changing pages. Compare its dirty-memory rate with transfer throughput and the remaining page set. A large transferred byte count can include repeated copies of the same pages.

A convergence timeout applies to the transfer phase. convergence_timeout_seconds defaults to 1800 and accepts integers 60 through 86400, inclusive. Expiry fails the attempt before commit and leaves a healthy source authoritative while target cleanup completes.

A failed convergence check does not automatically force a guest stop. Use a separately approved cold move when live transfer cannot complete under the application's write rate.

Cutover policy

max_pause_ms sets the accepted cutover pause budget for the supported migration mode. It defaults to 500 and accepts integers 50 through 5000, inclusive. If the estimated remaining transfer cannot fit the accepted policy, Infra keeps pre-copying or fails before cutover according to the timeout.

The budget is not an application latency guarantee. Guest scheduling, storage, network reconvergence, and client retries can add effects outside the transfer pause. A load-balanced service still needs independent healthy replicas.

Tune one workload

Start with current defaults and observe a representative guest. Reduce concurrent migrations before raising every transfer ceiling. If the guest's write workload can be paused safely at the application layer, coordinate that step through the application's own procedure rather than a hidden infrastructure freeze.

Hardware-backed, huge-page, and pinned guests retain their destination constraints. Convergence controls do not make a normally unsupported migration mode eligible.

Cancellation and cleanup

Cancellation is available before commit. Once ownership transfer starts, the operation must reach or reconcile authoritative placement. A timeout in the client does not set the server's convergence timeout or cancel server work.

The Droplet API migration action accepts these controls. Use Operation API to inspect effective values, phase counters, and cleanup rather than resubmitting with a new key.