Set up an appliance for servers on Hyper-V

Follow this article to set up the Azure Migrate appliance for discovery and assessment of servers on Hyper-V with the Azure Migrate: Discovery and assessment tool.

The Azure Migrate appliance is a lightweight appliance used by Azure Migrate: Discovery and assessment/ Migration to discover on-premises servers on Hyper-V, and send server metadata/performance data to Azure.

You can deploy the appliance using a couple of methods:

  • Set up on a server on Hyper-V using a downloaded VHD. This method described in this article.
  • Set up on a server on Hyper-V or physical server with a PowerShell installer script. This method should be used if you can't set up a server using a VHD, or if you're in Azure Government.

After creating the appliance, you check that it can connect to Azure Migrate: Discovery and assessment, configure it for the first time, and register it with the project.

Appliance deployment (VHD)

To set up the appliance using a VHD template:

  • Provide an appliance name and generate a project key in the portal.
  • Download a compressed Hyper-V VHD from the Azure portal.
  • Create the appliance, and check that it can connect to Azure Migrate: Discovery and assessment.
  • Configure the appliance for the first time, and register it with the project using the project key.

Generate the project key

  1. In Migration Goals > Windows, Linux and SQL Servers > Azure Migrate: Discovery and assessment, select Discover.
  2. In Discover servers > Are your servers virtualized?, select Yes, with Hyper-V.
  3. In 1:Generate project key, provide a name for the Azure Migrate appliance that you will set up for discovery of servers on Hyper-V. The name should be alphanumeric with 14 characters or fewer.
  4. Click on Generate key to start the creation of the required Azure resources. Do not close the Discover servers page during the creation of resources.
  5. After the successful creation of the Azure resources, a project key is generated.
  6. Copy the key as you will need it to complete the registration of the appliance during its configuration.

Download the VHD

In 2: Download Azure Migrate appliance, select the .VHD file and click on Download.

Selections for Discover servers

Selections for Generate Key

Verify security

Check that the zipped file is secure, before you deploy it.

  1. On the server to which you downloaded the file, open an administrator command window.
  2. Run the following command to generate the hash for the VHD
    • C:\>CertUtil -HashFile <file_location> [Hashing Algorithm]
    • Example usage: C:\>Get-FileHash -Path ./ -Algorithm SHA256

Verify the latest hash value by comparing the outcome of above command to the value documented here

Create the appliance

Import the downloaded file, and create an appliance.

  1. Extract the zipped VHD file to a folder on the Hyper-V host that will host the appliance. Three folders are extracted.

  2. Open Hyper-V Manager. In Actions, click Import Virtual Machine.

    Deploy VHD

  3. In the Import Virtual Machine Wizard > Before you begin, click Next.

  4. In Locate Folder, specify the folder containing the extracted VHD. Then click Next.

  5. In Select Virtual Machine, click Next.

  6. In Choose Import Type, click Copy the virtual machine (create a new unique ID). Then click Next.

  7. In Choose Destination, leave the default setting. Click Next.

  8. In Storage Folders, leave the default setting. Click Next.

  9. In Choose Network, specify the virtual switch that the server will use. The switch needs internet connectivity to send data to Azure.

  10. In Summary, review the settings. Then click Finish.

  11. In Hyper-V Manager > Virtual Machines, start the VM.

Verify appliance access to Azure

Make sure that the appliance can connect to Azure URLs for public and government clouds.

Configure the appliance

Set up the appliance for the first time.


If you set up the appliance using a PowerShell script instead of the downloaded VHD, the first two steps in this procedure aren't relevant.

  1. In Hyper-V Manager > Virtual Machines, right-click the server > Connect.

  2. Provide the language, time zone, and password for the appliance.

  3. Open a browser on any system that can connect to the appliance, and open the URL of the appliance web app: https://appliance name or IP address: 44368.

    Alternately, you can open the app from the appliance desktop by clicking the app shortcut.

  4. Accept the license terms, and read the third-party information.

  5. In the web app > Set up prerequisites, do the following:

    • Connectivity: The app checks that the server has internet access. If the server uses a proxy:
      • Click on Setup proxy to and specify the proxy address (in the form http://ProxyIPAddress or http://ProxyFQDN) and listening port.
      • Specify credentials if the proxy needs authentication.
      • Only HTTP proxy is supported.
      • If you have added proxy details or disabled the proxy and/or authentication, click on Save to trigger connectivity check again.
    • Time sync: Time is verified. The time on the appliance should be in sync with internet time for server discovery to work properly.
    • Install updates: Azure Migrate: Discovery and assessment checks that the appliance has the latest updates installed. After the check completes, you can click on View appliance services to see the status and versions of the components running on the appliance.

Register the appliance with Azure Migrate

  1. Paste the project key copied from the portal. If you do not have the key, go to Azure Migrate: Discovery and assessment> Discover> Manage existing appliances, select the appliance name you provided at the time of key generation and copy the corresponding key.

  2. You will need a device code to authenticate with Azure. Clicking on Login will open a modal with the device code as shown below.

    Modal showing the device code

  3. Click on Copy code & Login to copy the device code and open an Azure Login prompt in a new browser tab. If it doesn't appear, make sure you've disabled the pop-up blocker in the browser.

  4. On the new tab, paste the device code and sign-in by using your Azure username and password.

    Sign-in with a PIN isn't supported.

  5. In case you close the login tab accidentally without logging in, you need to refresh the browser tab of the appliance configuration manager to enable the Login button again.

  6. After you successfully logged in, go back to the previous tab with the appliance configuration manager.

  7. If the Azure user account used for logging has the right permissions on the Azure resources created during key generation, the appliance registration will be initiated.

  8. After appliance is successfully registered, you can see the registration details by clicking on View details.

Delegate credentials for SMB VHDs

If you're running VHDs on SMBs, you must enable delegation of credentials from the appliance to the Hyper-V hosts. To do this from the appliance:

  1. On the appliance, run this command. HyperVHost1/HyperVHost2 are example host names.

    Enable-WSManCredSSP -Role Client -DelegateComputer,, HyperVHost1, HyperVHost2 -Force
  2. Alternatively, do this in the Local Group Policy Editor on the appliance:

    • In Local Computer Policy > Computer Configuration, click Administrative Templates > System > Credentials Delegation.
    • Double-click Allow delegating fresh credentials, and select Enabled.
    • In Options, click Show, and add each Hyper-V host you want to discover to the list, with wsman/ as a prefix.
    • In Credentials Delegation, double-click Allow delegating fresh credentials with NTLM-only server authentication. Again, add each Hyper-V host you want to discover to the list, with wsman/ as a prefix.

Start continuous discovery

Connect from the appliance to Hyper-V hosts or clusters, and start discovery.

  1. In Step 1: Provide Hyper-V host credentials, click on Add credentials to specify a friendly name for credentials, add Username and Password for a Hyper-V host/cluster that the appliance will use to discover servers. Click on Save.

  2. If you want to add multiple credentials at once, click on Add more to save and add more credentials. Multiple credentials are supported for the discovery of servers on Hyper-V.

  3. In Step 2: Provide Hyper-V host/cluster details, click on Add discovery source to specify the Hyper-V host/cluster IP address/FQDN and the friendly name for credentials to connect to the host/cluster.

  4. You can either Add single item at a time or Add multiple items in one go. There is also an option to provide Hyper-V host/cluster details through Import CSV.

    Selections for adding discovery source

    • If you choose Add single item, you need to specify friendly name for credentials and Hyper-V host/cluster IP address/FQDN and click on Save.
    • If you choose Add multiple items (selected by default), you can add multiple records at once by specifying Hyper-V host/cluster IP address/FQDN with the friendly name for credentials in the text box. Verify** the added records and click on Save.
    • If you choose Import CSV, you can download a CSV template file, populate the file with the Hyper-V host/cluster IP address/FQDN and friendly name for credentials. You then import the file into the appliance, verify the records in the file and click on Save.
  5. On clicking Save, appliance will try validating the connection to the Hyper-V hosts/clusters added and show the Validation status in the table against each host/cluster.

    • For successfully validated hosts/clusters, you can view more details by clicking on their IP address/FQDN.
    • If validation fails for a host, review the error by clicking on Validation failed in the Status column of the table. Fix the issue, and validate again.
    • To remove hosts or clusters, click on Delete.
    • You can't remove a specific host from a cluster. You can only remove the entire cluster.
    • You can add a cluster, even if there are issues with specific hosts in the cluster.
  6. You can revalidate the connectivity to hosts/clusters anytime before starting the discovery.

  7. Click on Start discovery, to kick off server discovery from the successfully validated hosts/clusters. After the discovery has been successfully initiated, you can check the discovery status against each host/cluster in the table.

This starts discovery. It takes approximately 2 minutes per host for metadata of discovered servers to appear in the Azure portal.

Verify servers in the portal

After discovery finishes, you can verify that the servers appear in the portal.

  1. Open the Azure Migrate dashboard.
  2. In Azure Migrate - Windows, Linux and SQL Servers > Azure Migrate: Discovery and assessment page, click the icon that displays the count for Discovered servers.

Next steps

Try out Hyper-V assessment with Azure Migrate: Discovery and assessment.