Discover and assess on-premises VMware VMs for migration to Azure
The Azure Migrate services assesses on-premises workloads for migration to Azure.
In this tutorial, you learn how to:
- Create an account that Azure Migrate uses to discover on-premises VMs
- Create an Azure Migrate project.
- Set up an on-premises collector virtual machine (VM), to discover on-premises VMware VMs for assessment.
- Group VMs and create an assessment.
If you don't have an Azure subscription, create a free account before you begin.
- VMware: The VMs that you plan to migrate must be managed by vCenter Server running version 5.5, 6.0, or 6.5. Additionally, you need one ESXi host running version 5.0 or higher to deploy the collector VM.
- vCenter Server account: You need a read-only account to access the vCenter Server. Azure Migrate uses this account to discover the on-premises VMs.
- Permissions: On the vCenter Server, you need permissions to create a VM by importing a file in .OVA format.
- Statistics settings: This prerequisite is only applicable to the one-time discovery model. For the one-time discovery to work, the statistics settings for the vCenter Server should be set to level 3 before you start deployment. If lower than level 3, assessment will work, but performance data for storage and network isn't collected. The size recommendations in this case will be done based on performance data for CPU and memory and configuration data for disk and network adapters.
Create an account for VM discovery
Azure Migrate needs access to VMware servers to automatically discover VMs for assessment. Create a VMware account with the following properties. You specify this account during Azure Migrate setup.
- User type: At least a read-only user
- Permissions: Data Center object –> Propagate to Child Object, role=Read-only
- Details: User assigned at datacenter level, and has access to all the objects in the datacenter.
- To restrict access, assign the No access role with the Propagate to child object, to the child objects (vSphere hosts, datastores, VMs, and networks).
Sign in to the Azure portal
Sign in to the Azure portal.
Create a project
- In the Azure portal, click Create a resource.
- Search for Azure Migrate, and select the service Azure Migrate in the search results. Then click Create.
- Specify a project name, and the Azure subscription for the project.
- Create a new resource group.
Specify the location in which to create the project, then click Create. You can only create an Azure Migrate project in the West Central US or East US region. However, you can still plan your migration for any target Azure location. The location specified for the project is only used to store the metadata gathered from on-premises VMs.
Download the collector appliance
Azure Migrate creates an on-premises VM known as the collector appliance. This VM discovers on-premises VMware VMs, and sends metadata about them to the Azure Migrate service. To set up the collector appliance, you download an .OVA file, and import it to the on-premises vCenter server to create the VM.
- In the Azure Migrate project, click Getting Started > Discover & Assess > Discover Machines.
In Discover machines, there are two options available for the appliance, click Download to download the appropriate appliance based on your preference.
a. One-time discovery: The appliance for this model, communicates with vCenter Server to gather metadata about the VMs. For performance data collection of the VMs, it relies on the historical performance data stored in vCenter Server and collects the performance history of last one month. In this model, Azure Migrate collects average counter (vs. peak counter) for each metric, learn more. Since it is a one-time discovery, changes in the on-premises environment are not reflected once the discovery is complete. If you want the changes to reflect, you have to do a rediscovery of the same environment to the same project.
b. Continuous discovery: The appliance for this model, continuously profiles the on-premises environment to gather real-time utilization data for each VM. In this model, peak counters are collected for each metric (CPU utilization, memory utilization etc.). This model does not depend on the statistics settings of vCenter Server for performance data collection. You can stop the continuous profiling anytime from the appliance.
The continuous discovery functionality is in preview.
In Copy project credentials, copy the project ID and key. You need these when you configure the collector.
Verify the collector appliance
Check that the .OVA file is secure, before you deploy it.
- On the machine to which you downloaded the file, open an administrator command window.
- Run the following command to generate the hash for the OVA:
C:\>CertUtil -HashFile <file_location> [Hashing Algorithm]
- Example usage:
C:\>CertUtil -HashFile C:\AzureMigrate\AzureMigrate.ova SHA256
- The generated hash should match these settings.
For OVA version 188.8.131.52
For OVA version 184.108.40.206
For OVA version 220.127.116.11
For OVA version 18.104.22.168
For OVA version 22.214.171.124
Create the collector VM
Import the downloaded file to the vCenter Server.
In the vSphere Client console, click File > Deploy OVF Template.
In the Deploy OVF Template Wizard > Source, specify the location of the .ova file.
- In Name and Location, specify a friendly name for the collector VM, and the inventory object in which the VM will be hosted.
- In Host/Cluster, specify the host or cluster on which the collector VM will run.
- In storage, specify the storage destination for the collector VM.
- In Disk Format, specify the disk type and size.
- In Network Mapping, specify the network to which the collector VM will connect. The network needs internet connectivity, to send metadata to Azure.
- Review and confirm the settings, then click Finish.
Run the collector to discover VMs
- In the vSphere Client console, right-click the VM > Open Console.
- Provide the language, time zone, and password preferences for the appliance.
- On the desktop, click the Run collector shortcut.
- Click Check for updates in the top bar of the collector UI and verify that the collector is running on the latest version. If not, you can choose to download the latest upgrade package from the link and update the collector.
In the Azure Migrate Collector, open Set up prerequisites.
- Accept the license terms, and read the third-party information.
- The collector checks that the VM has internet access.
If the VM accesses the internet via a proxy, click Proxy settings, and specify the proxy address and listening port. Specify credentials if the proxy needs authentication. Learn more about the internet connectivity requirements and the list of URLs that the collector accesses.
The proxy address needs to be entered in the form http://ProxyIPAddress or http://ProxyFQDN. Only HTTP proxy is supported. If you have an intercepting proxy, the internet connection might initally fail if you have not imported the proxy certificate; learn more on how you can fix this by importing the proxy certificate as a trusted certificate on the collector VM.
The collector checks that the collector service is running. The service is installed by default on the collector VM.
- Download and install VMware PowerCLI.
In Specify vCenter Server details, do the following:
- Specify the name (FQDN) or IP address of the vCenter server.
- In User name and Password, specify the read-only account credentials that the collector will use to discover VMs on the vCenter server.
- In Collection scope, select a scope for VM discovery. The collector can only discover VMs within the specified scope. Scope can be set to a specific folder, datacenter, or cluster. It shouldn't contain more than 1500 VMs. Learn more about how you can discover a larger environment.
In Specify migration project, specify the Azure Migrate project ID and key that you copied from the portal. If didn't copy them, open the Azure portal from the collector VM. In the project Overview page, click Discover Machines, and copy the values.
- In View collection progress, monitor discovery status. Learn more](https://docs.microsoft.com/azure/migrate/concepts-collector#what-data-is-collected) about what data is collected by the Azure Migrate collector.
The collector only supports "English (United States)" as the operating system language and the collector interface language. If you change the settings on a machine you want to assess, trigger discover again before you run the assessment. In the collector, use the Start collection again option to do this. After the collection is done, select the Recalculate option for the assessment in the portal, to get updated assessment results.
Verify VMs in the portal
For one-time discovery, the discovery time depends on how many VMs you are discovering. Typically, for 100 VMs, after the collector finishes running, it takes around an hour for configuration and performance data collection to complete. You can create assessments (both performance-based and as on-premises assessments) immediately after the discovery is done.
For continuous discovery (in preview), the collector will continuously profile the on-premises environment and will keep sending the performance data at an hour interval. You can review the machines in the portal after an hour of kicking off the discovery. It is strongly recommended to wait for at least a day before creating any performance-based assessments for the VMs.
- In the migration project, click Manage > Machines.
- Check that the VMs you want to discover appear in the portal.
Create and view an assessment
After VMs are discovered, you group them and create an assessment.
- In the project Overview page, click +Create assessment.
- Click View all to review the assessment properties.
- Create the group, and specify a group name.
- Select the machines that you want to add to the group.
- Click Create Assessment, to create the group and the assessment.
- After the assessment is created, view it in Overview > Dashboard.
- Click Export assessment, to download it as an Excel file.
For continuous discovery, it is strongly recommended to wait for at least a day, after starting discovery, before creating an assessment. If you would like to update an existing assessment with the latest performance data, you can use the Recalculate command on the assessment to update it.
An assessment includes information about whether the on-premises VMs are compatible for Azure, what would be the right VM size for running the VM in Azure and the estimated monthly Azure costs.
The Azure readiness view in the assessment shows the readiness status of each VM. Depending on the properties of the VM, each VM can be marked as:
- Ready for Azure
- Conditionally ready for Azure
- Not ready for Azure
- Readiness unknown
For VMs that are ready, Azure Migrate recommends a VM size in Azure. The size recommendation done by Azure Migrate depends on the sizing criterion specified in the assessment properties. If the sizing criterion is performance-based sizing, the size recommendation is done by considering the performance history of the VMs (CPU and memory) and disks (IOPS and throughput). If the sizing criterion is 'as on-premises', Azure Migrate does not consider the performance data for the VM and disks. The recommendation for the VM size in Azure is done by looking at the size of the VM on-premises and the disk sizing is done based on the Storage type specified in the assessment properties (default is premium disks). Learn more about how sizing is done in Azure Migrate.
For VMs that aren't ready or conditionally ready for Azure, Azure Migrate explains the readiness issues, and provides remediation steps.
The VMs for which Azure Migrate cannot identify Azure readiness (due to data unavailability) are marked as readiness unknown.
In addition to Azure readiness and sizing, Azure Migrate also suggests tools that you can use for the migrating the VM. This requires a deeper discovery of on the on-premises environment. Learn more about how you can do a deeper discovery by installing agents on the on-premises machines. If the agents are not installed on the on-premises machines, lift and shift migration is suggested using Azure Site Recovery. If the agents are installed on the on-premises machine, Azure Migrate looks at the processes running inside the machine and identifies whether the machine is a database machine or not. If the machine is a database machine, Azure Database Migration Service is suggested, else Azure Site Recovery is suggested as the migration tool.
Monthly cost estimate
This view shows the total compute and storage cost of running the VMs in Azure along with the details for each machine. Cost estimates are calculated considering the size recommendations done by Azure Migrate for a machine, its disks, and the assessment properties.
The cost estimation provided by Azure Migrate is for running the on-premises VMs as Azure Infrastructure as a service (IaaS) VMs. Azure Migrate does not consider any Platform as a service (PaaS) or Software as a service (SaaS) costs.
Estimated monthly costs for compute and storage are aggregated for all VMs in the group.
Each performance-based assessment in Azure Migrate is associated with a confidence rating that ranges from 1 star to 5 star (1 star being the lowest and 5 star being the highest). The confidence rating is assigned to an assessment based on the availability of data points needed to compute the assessment. The confidence rating of an assessment helps you estimate the reliability of the size recommendations provided by Azure Migrate. Confidence rating is not applicable to as on-premises assessments.
For performance-based sizing, Azure Migrate needs the utilization data for CPU, memory of the VM. Additionally, for every disk attached to the VM, it needs the disk IOPS and throughput data. Similarly for each network adapter attached to a VM, Azure Migrate needs the network in/out to do performance-based sizing. If any of the above utilization numbers are not available in vCenter Server, the size recommendation done by Azure Migrate may not be reliable. Depending on the percentage of data points available, the confidence rating for the assessment is provided as below:
|Availability of data points||Confidence rating|
An assessment may not have all the data points available due to one of the following reasons:
- The statistics setting in vCenter Server is not set to level 3. Since the one-time discovery model depends on the statistics settings of vCenter Server, if the statistics setting in vCenter Server is lower than level 3, performance data for disk and network is not collected from vCenter Server. In this case, the recommendation provided by Azure Migrate for disk and network is not utilization-based. Without considering the IOPS/throughput of the disk, Azure Migrate cannot identify if the disk will need a premium disk in Azure, hence, in this case, Azure Migrate recommends Standard disks for all disks.
- The statistics setting in vCenter Server was set to level 3 for a shorter duration before kicking off the discovery. For example, let's consider the scenario where you change the statistics setting level to 3 today and kick off the discovery using the collector appliance tomorrow (after 24 hours). If you are creating an assessment for one day, you have all the data points and the confidence rating of the assessment would be 5 star. But if you are changing the performance duration in the assessment properties to one month, the confidence rating goes down as the disk and network performance data for the last one month would not be available. If you would like to consider the performance data of last one month, it is recommended that you keep the vCenter Server statistics setting to level 3 for one month before you kick off the discovery.
- You did not profile your environment for the duration for which you are creating the assessment. For example, if you are creating the assessment with performance duration set to 1 day, you need to wait for at least a day after you start the discovery for all the data points to get collected.
- Few VMs were shut down during the period for which the assessment is calculated. If any VMs were powered off for some duration, we will not be able to collect the performance data for that period.
- Few VMs were created in between the period for which the assessment is calculated. For example, if you are creating an assessment for the performance history of last one month, but few VMs were created in the environment only a week ago. In such cases, the performance history of the new VMs will not be there for the entire duration.
If the confidence rating of any assessment is below 4 Stars, for one-time discovery model, we recommend you to change the vCenter Server statistics settings level to 3, wait for the duration that you want to consider for assessment (1 day/1 week/1 month) and then do discovery and assessment. For the continuous discovery model, wait for at least a day for the appliance to profile the environment and then Recalculate the assessment. If the preceding cannot be done , performance-based sizing may not be reliable and it is recommended to switch to as on-premises sizing by changing the assessment properties.
- Learn how to customize an assessment based on your requirements.
- Learn how to create high-confidence assessment groups using machine dependency mapping
- Learn more about how assessments are calculated.
- Learn how to discover and assess a large VMware environment.
- Learn more about the FAQs on Azure Migrate