-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Improve migration of external VMware VMs into KVM cluster #8815
base: 4.19
Are you sure you want to change the base?
Improve migration of external VMware VMs into KVM cluster #8815
Conversation
@blueorangutan package |
@sureshanaparti 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. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## 4.19 #8815 +/- ##
============================================
+ Coverage 30.92% 30.97% +0.05%
- Complexity 34290 34372 +82
============================================
Files 5355 5355
Lines 376634 376724 +90
Branches 54808 54823 +15
============================================
+ Hits 116480 116705 +225
+ Misses 244820 244661 -159
- Partials 15334 15358 +24
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 8985 |
@blueorangutan test matrix |
@sureshanaparti a [SL] Trillian-Jenkins matrix job (centos7 mgmt + xenserver71, rocky8 mgmt + vmware67u3, centos7 mgmt + kvmcentos7) has been kicked to run smoke tests |
[SF] Trillian test result (tid-9541)
|
[SF] Trillian test result (tid-9539)
|
[SF] Trillian test result (tid-9540)
|
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.
Code LGTM
@blueorangutan package |
@sureshanaparti 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]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 9003 |
@blueorangutan test matrix |
@sureshanaparti a [SL] Trillian-Jenkins matrix job (centos7 mgmt + xenserver71, rocky8 mgmt + vmware67u3, centos7 mgmt + kvmcentos7) has been kicked to run smoke tests |
[SF] Trillian test result (tid-9553)
|
[SF] Trillian test result (tid-9554)
|
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.
clgtm
…alled in KVM host)
…mfiles', to be generic
…windows guest vms
…om VMware, instead of OVA file - this would further increase the migration performance (as it reduces the time for OVA preparation / archiving of the VM files into a single file)
…g OVF from MS, and other changes below. - Skip clone for powered off VMs - Fixes to support standalone host (with its default datacenter) - Some code improvements
…to import vm files
449c158
to
3cb750d
Compare
@blueorangutan package |
@sureshanaparti 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]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10100 |
@blueorangutan test matrix |
@sureshanaparti a [SL] Trillian-Jenkins matrix job (centos7 mgmt + xenserver71, rocky8 mgmt + vmware67u3, centos7 mgmt + kvmcentos7) has been kicked to run smoke tests |
[SF] Trillian test result (tid-10603)
|
[SF] Trillian test result (tid-10605)
|
[SF] Trillian test result (tid-10604)
|
@blueorangutan test rocky8 vmware-70u3 |
@sureshanaparti a [SL] Trillian-Jenkins test job (rocky8 mgmt + vmware-70u3) 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. |
Description
This PR improves/optimises the migration/import performance of external VMware VMs into KVM cluster.
The improved migration process still uses the 'virt-v2v' for importing the VMware VMs, and uses exported OVF (of the VMware VM) as the source for the conversion to KVM instance, instead of the cloned VM (in earlier migration, accessing vCenter using 'virt-v2v' from KVM host). For this,
Noticed 70-90% decrease in the time taken for the migration with this approach (Some earlier linux VM migrations with 3-5 GB disks which took 30-35 mins, now takes 2-3 mins with this improvement).
There are no changes in the VMs supported on vCenter - Stopped & Running Linux VMs, and Stopped Windows VMs are supported as earlier. Additionally, Stopped VMs on standalone hosts are supported (can be imported by specifying its default datacenter name -
ha-datacenter
along with host and credentails).Note: All 'virt-v2v' limitations are still applicable. CloudStack will not perform any checks about the guest OS compatibility for the virt-v2v library as indicated on: https://access.redhat.com/articles/1351473.
Doc PR: apache/cloudstack-documentation#388
Other improvements in the migration process:
host.instance.conversion
').host.instance.conversion
' with value 'true' is added to host_details table if the host supports instance conversion (needs agent restart after installing virt-v2v).Also, fixes: #8632
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
Host details (Instance Conversion Supported for KVM hosts with virt-v2v):
Import VM from VMware (Supported KVM hosts with virt-v2v):
Flag - to Force MS to import/download VM files (OVF):
Threads config - to import/download VM files
How Has This Been Tested?
Manually tested importing external VMware VMs with single and multiple disks(on different datastore) to KVM cluster in CloudStack.
How did you try to break this feature and the system with this change?