Chapter 2. Planning the Migration
During the planning phase, you will formulate a specific migration goal, for example, "I want to migrate 2000 virtual machines, with 200 TB of data, in less than 6 months."
Best practices for migration help you tailor the migration so that it fits your needs and schedule.
2.1. Planning Questions
These questions will ensure that you have sufficient resources to perform the migration:
- What am I migrating?
- Identify the hosts and virtual machines to be migrated. If your deployment is large and complex, you may want to divide your resources into migration groups.
- What is the maximum number of virtual machines that I can migrate?
There is no maximum number of disks or virtual machines that you can migrate. However, you may not want to migrate all your virtual machines at the same time, in order to minimize the impact on your users. The maximum number of NICs per virtual machine that you can migrate is 4.
If you exceed the capabilities of the environment, the migrations will fail and may negatively affect existing applications running on virtual machines attached to the network and storage. Plan carefully and perform test migrations to determine the capabilities of your environment.
- What operating systems can I migrate?
For a list of supported guest operating systems, see Converting Virtual Machines from Other Hypervisors to KVM with virt-v2v in RHEL 7. For a list of certified guest operating systems, see Certified Guest Operating Systems in Red Hat OpenStack Platform and Red Hat Enterprise Virtualization.Note
Although it is possible to migrate guest operating systems that are not certified for RHV, running these guests is not officially supported.
- What resources will my target environment require?
- Your target environment must be large enough to hold the migrated virtual machines, in addition to the original VMware virtual machines. The VMware virtual machines are not affected by the migration process. Their power state after the migration will be the same as before.
- What am I missing?
- Identify resource gaps, such as bandwidth, storage, licenses, or a suitable maintenance window.
- How long will the migration take?
- There are no specific rules to determine how long the actual migration will take. This is determined on a case-by-case basis. A migration example is provided as a guide. It may be possible to migrate your applications in phases, without downtime at the application layer, if the applications are distributed in a high-availability architecture.
- What impact will the migration have on my users?
- Assess the effect the migration may have on a production environment. Check whether users will lose access to critical applications.
This migration example, which took 1 hour and 30 minutes to complete, can help you estimate the duration of your migration process:
- 10 virtual machines (100 GB RAM)
- Virtual machine disks 2/3 full (total of 1 TB of data)
- Strong host (40 cores, 500 GB RAM)
- Fast SSD XtremIO storage
- Fibre Channel 8 interface for host-to-storage connection
- 10 GbE network interface cards for all other connections
2.2. Best Practices for Migration
- Run the IMS RHEL pre-migration Ansible playbook to preserve static IP address configuration and to install the RHV guest agent. See Section 4.4, “Advanced Option: Automating Pre- and Post-Migration Tasks with Ansible” for more information.
Create migration groups, so that you are not migrating all of your virtual machines at the same time. The following questions provide guidelines:
- How are the virtual machines grouped now?
- Which virtual machines should be migrated together?
- What workloads should be migrated together?
- What applications must remain available?
Consider which parts of the workload to migrate first:
- Web servers
- Load balancers
- Keep linked applications together, so that they migrate at the same time.
- Reboot or delete snapshots before the migration, to reduce the risk of failure.
- Schedule your migration carefully, to minimize the impact on your users.
- Stagger the migration schedules.
- Move critical applications during maintenance windows.
- Plan for redundancy.
- Ensure that you have sufficient space for the migration. The migration process does not delete the original virtual machines.
- Minimize the impact on your environment by creating multiple migration plans to control and throttle the migration process.
- Prepare your users for downtime.