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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate VMware VM to KVM improvement documentation #388

Open
wants to merge 1 commit into
base: 4.19
Choose a base branch
from

Conversation

sureshanaparti
Copy link
Contributor

@sureshanaparti sureshanaparti commented Mar 21, 2024

Documentation changes for Migrate VMware VM to KVM improvement PR: apache/cloudstack#8815


馃摎 Documentation preview 馃摎: https://cloudstack-documentation--388.org.readthedocs.build/en/388/

@sureshanaparti sureshanaparti added this to the 4.19.1 milestone Mar 21, 2024
@sureshanaparti
Copy link
Contributor Author

@blueorangutan docbuild

@blueorangutan
Copy link

@sureshanaparti a Jenkins job has been kicked to build the document. I'll keep you posted as I make progress.

@blueorangutan
Copy link

QA-Doc build preview: https://qa.cloudstack.cloud/builds/docs-build/pr/388. (QA-JID 220)

Copy link
Contributor

@nvazquez nvazquez left a comment

Choose a reason for hiding this comment

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

LGTM

- Converting the Cloned Virtual Machine to KVM using virt-v2v: CloudStack (or the administrator) selects a running and Enabled KVM host to perform the conversion from VMware to KVM using **virt-v2v**. If the binary is not installed, then the host will fail the migration. In case it is installed it will perform the conversion into a temporary location (which can be selected by the administrator) to store the converted QCOW2 disks of the virtual machine. The disks are then moved into the destination storage pools for the virtual machine. The conversion is a long-lasting process which can be set to time out by the global setting 'convert.vmware.instance.to.kvm.timeout'. The conversion processes take a long time because virt-v2v creates a temporary virtual machine to inspect the source VM and generate the converted disks with the correct drivers. Additionally, it needs to copy the converted disks into the temporary location.
- Clones the Source Virtual Machine on the selected VMware Datacenter: The source Virtual Machine will be cloned in the original state (running or stopped for Linux VMs, or stopped for Windows VMs). The recommended state is the stopped state to prevent data inconsistencies or loss when cloning the virtual machine.
- Exports the OVA from the Cloned Virtual Machine to a temporary location (which can be selected by the administrator).
- Converts the OVA on the temporary location to KVM using virt-v2v: CloudStack (or the administrator) selects a running and Enabled KVM host to perform the conversion from VMware to KVM using **virt-v2v**. If the binary is not installed, then the host will fail the migration. In case it is installed it will perform the conversion into the temporary location to store the converted QCOW2 disks of the virtual machine. The disks are then moved into the destination storage pools for the virtual machine. The conversion is a long-lasting process which can be set to time out by the global setting 'convert.vmware.instance.to.kvm.timeout'. The conversion processes takes a long time because virt-v2v creates a temporary virtual machine to inspect the source VM and generate the converted disks with the correct drivers. Additionally, it needs to copy the converted disks into the temporary location.
Copy link
Contributor

Choose a reason for hiding this comment

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

"selects a running and Enabled KVM host to perform the conversion"
This comment comes after some consultancy work, hopefully not too late...

@sureshanaparti are there checks for this - i.e. do we support a scenario where cloud operator might have many Ubuntu 22.04 hosts, but want to use a (few) EL9 host (which has a much newer virt-v2v version than the Ubuntu 22.04, and thus much better conversion success than virt-v2v on Ubuntu hosts) for the conversion while ensuring that new VMs are not being regularly deployed on those EL9 hosts? (i.e. it would be good that admin can choose even a disabled host, or at least a host (Enabled, EL9), which exists in a DISABLED CLUSTER - is this possible?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
4 participants