You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With bab83d9, host evacuation was
parallelized by grouping VMs
into batches, and starting a new batch once the previous one has
finished.
This means that a single slow VM can potentially slow down the whole
evacuation.
Add a new `Tasks.wait_for_all_with_callback` function that will
invoke a callback every time one of the tasks is
deemed non-pending. This will allow its users to:
1) track the progress of tasks within the submitted batch
2) schedule new tasks to replace the completed ones
Use the new `Tasks.wait_for_all_with_callback` in `xapi_host` to
schedule a new migration as soon as any of the previous ones have
finished, thus maintaining a constant flow of `n` migrations.
Additionally expose the `evacuate-batch-size` parameter in the CLI, this
was missed when it was originally added with the CLI setting it to `0`
(pick the default) all the time.
===
Manually tested multiple times, confirmed to not break anything and to
actually maintain a constant flow of migrations. This should greatly
speed up host evacuations when there is a combination of bigger and
smaller VMs (in terms of memory/disk, or VMs with some other reason for
slow migration) on the host
0 commit comments