-
Notifications
You must be signed in to change notification settings - Fork 1.2k
VMware to KVM Migrations improvements #11594
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
VMware to KVM Migrations improvements #11594
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #11594 +/- ##
============================================
- Coverage 17.56% 17.56% -0.01%
- Complexity 15500 15518 +18
============================================
Files 5899 5906 +7
Lines 527793 528377 +584
Branches 64479 64528 +49
============================================
+ Hits 92714 92785 +71
- Misses 424653 425160 +507
- Partials 10426 10432 +6
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@blueorangutan package |
|
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 14885 |
|
@blueorangutan package |
|
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✖️ el8 ✖️ el9 ✔️ debian ✖️ suse15. SL-JID 15089 |
|
@blueorangutan package |
|
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
@blueorangutan package |
|
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 15379 |
|
@blueorangutan package |
|
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 15380 |
|
@blueorangutan test |
|
@nvazquez a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests |
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
|
[SF] Trillian test result (tid-14600)
|
|
[SF] Trillian test result (tid-14604)
|
|
@blueorangutan package |
|
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
NuxRo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, tested with an actual VMWare to KVM migration using extra parameters "--mac 00:0c:29:e6:3d:9d:ip:192.168.0.89,192.168.0.1,24,192.168.0.254 -x"
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 15412 |
|
@blueorangutan test |
|
@nvazquez a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests |
|
[SF] Trillian test result (tid-14632)
|
* Add source VM name on virt-v2v migration log entries * Improve the feedback by displaying the running importing tasks * Add source VM name prefix on more conversion logs * Improve listing and also list completed tasks * Pass extra parameters to virt-v2v if administrator allows via global setting * Add Force converting directly to storage pool option * Refactor based on review comments * Add properties for env vars for the instance conversion * Add separate component for Import VM Tasks * applying copilot suggestions from code review Co-authored-by: Copilot <[email protected]> * Fix importing unmanaged instances due to incorrect internal name * Add VM prefix on each log operation for conversion * Log the original VM name instead of the cloned VM in case of cloning * Allow searching storage pool by UUID after conversion to support SharedMountPoint * Fix search pools logic * Improve UI and add checks for force convert to pool parameter * Support Local storage when forceconverttopool is set to true * Add config key to for allowed extra params and add validation * Fix params lists * Fix compile error * Remove extra stubbings * Fix extra params execution --------- Co-authored-by: Abhishek Kumar <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: Suresh Kumar Anaparti <[email protected]>
Description
This PR introduces improvements on the VMware to KVM migrations:
Add prefix log entries with the source VM name on the agent.log logs on the conversion hosts.
Improve the feedback to the end user by listing the in progress migration tasks (running and completed)
listImportVmTasksis created. By default the running tasks are retrievedshowcompleted = trueto thelistImportVmTasksthen the completed tasks are retrievedconvert.vmware.instance.to.kvm.extra.params.allowedis created. Disabled by default.extraparamson theimportVmAPI, which are passed to the virt-v2v command executed on the conversion hosts.forceconverttopool = falseis set on theimportVmAPI. In this case the virt-v2v conversion will write to a temporary location and then CloudStack will move the disks to the conversion storage pool.forceconverttopool = trueis set on theimportVmAPI, then the selected conversion storage pool will be used to write directly on the virt-v2v conversion as the destination location. CloudStack will not move disks from a temporary location to the storage pool.Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?