Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MTV-1211 Max concurrent virtual machine migrations #580

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ include::modules/installing-mtv-operator.adoc[leveloffset=+2]
:mtv:

include::modules/configuring-mtv-operator.adoc[leveloffset=+2]

include::modules/max-concurrent-vms.adoc[leveloffset=+3]

[id="migrating-vms-web-console_{context}"]
== Migrating virtual machines by using the {ocp} web console
Expand Down
10 changes: 8 additions & 2 deletions documentation/modules/configuring-mtv-operator.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

You can configure all of the following settings of the {operator-name} by modifying the `ForkliftController` CR, or in the *Settings* section of the *Overview* page, unless otherwise indicated.

* Maximum number of virtual machines (VMs) per plan that can be migrated simultaneously.
* Maximum number of virtual machines (VMs) or disks per plan that {project-first} can migrate simultaneously.
* How long `must gather` reports are retained before being automatically deleted.
* CPU limit allocated to the main controller container.
* Memory limit allocated to the main controller container.
Expand Down Expand Up @@ -37,7 +37,13 @@ spec:
|Label |Description |Default value

|`controller_max_vm_inflight`
|The maximum number of VMs per plan that can be migrated simultaneously.
a|*Varies with provider as follows*:

* {rhv-full} migrations, {osp} migrations, VMware warm migrations, _or_ cold VMware migrations to a remote {ocp} cluster: The maximum number of disks that {project-short} can transfer simultaneously.

* OVA migrations or cold VMware migrations using `virt-v2v` to a local {ocp} cluster: The maximum number of VMs that {project-short} can migrate simultaneously.
Comment on lines +42 to +44
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* {rhv-full} migrations, {osp} migrations, VMware warm migrations, _or_ cold VMware migrations to a remote {ocp} cluster: The maximum number of disks that {project-short} can transfer simultaneously.
* OVA migrations or cold VMware migrations using `virt-v2v` to a local {ocp} cluster: The maximum number of VMs that {project-short} can migrate simultaneously.
* For {rhv-full} migrations, {osp} migrations to a remote {ocp} cluster: The maximum number of disks that {project-short} can transfer simultaneously.
* For OVA migrations using `virt-v2v` to a local {ocp} cluster: The maximum number of VMs that {project-short} can migrate simultaneously.
* For VMware simultaneous migration:
** Cold migration: VMs for each ESXi host that can migrate simultaneously
** Warm migration: Disks for each ESXi host that can migrate simultaneously

@rhoch @duduvaa - please can you have a look at this and see if it would be ok? i am trying to synthesize what has been approved with David's comments

Copy link
Collaborator Author

@RichardHoch RichardHoch Dec 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @anarnold97 -- should be {osp} migrations, without a qualifier.

@duduvaa Martin said that for VM cold migrations, there was a difference between migrations to a local cluster and to a remote cluster. Do you see a difference in your tests?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For cold remote we use the CNV CDI so the max in flight references the number of disks.

+
See xref:max-concurrent-vms_{context}[Configuring the controller_max_vm_inflight label] for a detailed explanation of this setting.
|`20`

|`must_gather_api_cleanup_max_age`
Expand Down
16 changes: 16 additions & 0 deletions documentation/modules/max-concurrent-vms.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

// Module included in the following assemblies:
//
// * documentation/doc-Migration_Toolkit_for_Virtualization/master.adoc

:_content-type: PROCEDURE
[id="max-concurrent-vms_{context}"]
= Configuring the controller_max_vm_inflight label

For {rhv-full} migrations, {osp} migrations, VMware warm migrations, _or_ cold VMware migrations to a remote {ocp} cluster the setting `controller_max_vm_inflight` (shown in the UI as *Max concurrent virtual machine migrations*) specifies the maximum number of _disks_ that {project-first} can transfer simultaneously. In these migrations, {project-short} migrates the disks in parallel. This means that if the combined number of disks that you want to migrate is greater than the value of the setting, additional disks must wait until the queue is free, without regard for whether a VM has finished migrating.

Example: If the value of the setting is 15, and VM A has 5 disks, VM B has 5 disks, and VM C has 6 disks, all the disks except for the 16th begin migrating at the same time. Once any of them has migrated, the 16th disk can be migrated, whether or not all the disks on VM A and VM B have finished migrating.

However, for OVA migrations or cold VMware migrations using `virt-v2v` to a local {ocp} cluster, the setting specifies the maximum number of _VMs_ that {project-short} can migrate simultaneously, meaning that all additional disks must wait until at least one VM has been completely migrated.

Example: If the value of the setting is 2, and VM A has 5 disks, VM B has 5 disks, and VM C has 6 disks, all the disks on VM C must wait until either all the disks on VM A or on VM B have finished migrating.
19 changes: 13 additions & 6 deletions documentation/modules/mtv-settings.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -14,27 +14,33 @@ If you have Administrator privileges, you can access the *Overview* page and cha
|Setting |Description |Default value

|Max concurrent virtual machine migrations
|The maximum number of VMs per plan that can be migrated simultaneously
a|*Varies with provider as follows*:

* {rhv-full} migrations, {osp} migrations, VMware warm migrations, _or_ cold VMware migrations to a remote {ocp} cluster: The maximum number of disks that {project-short} can transfer simultaneously.

* OVA migrations or cold VMware migrations using `virt-v2v` to a local {ocp} cluster: The maximum number of VMs that {project-short} can migrate simultaneously.
+
See xref:max-concurrent-vms_{context}[Configuring the controller_max_vm_inflight label] for a detailed explanation of this setting.
|20

|Must gather cleanup after (hours)
|The duration for retaining `must gather` reports before they are automatically deleted
|The duration for retaining `must gather` reports before they are automatically deleted.
|Disabled

|Controller main container CPU limit
|The CPU limit allocated to the main controller container
|The CPU limit allocated to the main controller container.
|500 m

|Controller main container Memory limit
|The memory limit allocated to the main controller container
|The memory limit allocated to the main controller container.
|800 Mi

|Precopy internal (minutes)
|The interval at which a new snapshot is requested before initiating a warm migration
|The interval at which a new snapshot is requested before initiating a warm migration.
|60

|Snapshot polling interval (seconds)
|The frequency with which the system checks the status of snapshot creation or removal during a warm migration
|The frequency with which the system checks the status of snapshot creation or removal during a warm migration.
|10
|===

Expand All @@ -44,3 +50,4 @@ If you have Administrator privileges, you can access the *Overview* page and cha
. In the *Settings* list, click the Edit icon of the setting you want to change.
. Choose a setting from the list.
. Click *Save*.