Blog

Converting VMware High Availability to Hyper-V Failover Cluster

October 03, 2018 | Susan Bilder

In our previous post we discussed the first step to migrating to a new virtualization platform: surveying your existing virtualization environment and determining that migrating is not only feasible, but also that it’s a good idea.  In this post we’re going to look at the specific steps to migrate the High Availability feature from an existing VMware environment to a new Hyper-V environment.


Converting VMware HA to Hyper-V FailoverUnfortunately, there isn’t a one-to-one correspondence between all VMware features and the equivalent features in Hyper-V.  In general, the steps to reproduce VMware management features in a Hyper-V environment are:


  1. Catalog the VMware management feature settings you’re using and how they’re configured at Cluster and individual VM levels.

  2. Determine the corresponding feature in Hyper-V

  3. After the VMs are migrated over to Hyper-V, configure the corresponding Hyper-V feature sets by matching them to any VMware specific Cluster or VM settings.



Surveying your VMware environment


The specific details you will need to know about VMware’s High Availability (HA) feature are:

  1. Create a list of all VMs in the resource Clusters configured for failover.  

    Especially take note if any VMs have a
    resource reservation which would need to be available on the new host before they can be migrated to the new server.  While you can migrate the VM itself to a new format, the settings for the VM in Hyper-V still need to be configured when the VM is created.


  2. If you’re using VMware’s Distributed Resource Scheduler (DRS), you may also have affinity rules. 

    Affinity rules for a VM define preferential hosts or groups of hosts on which the VM can run, while anti-affinity rules define hosts that the VM should not run on.  Similarly, VM-VM affinity and anti-affinity rules define whether or not VMs can run on the same host.  For example, anti-affinity rules for domain controllers in the same domain ensure that the domain controller VMs are on separate hosts. 

    Take note of any affinity/anti-affinity settings to use as a guide when setting up your Hyper-V VMs . For more details on DRS Affinity rules, see “Using DRS Affinity Rules” starting on page 86 of the
    vSphere Resource Management guide.


  3. vSphere defines three types of host failures:  

    Failure:
    Host stops functioning
    Isolation: Host not available over network
    Partition: Host loses network connectivity with HA master host

    In the event of a host failure, VMware HA can be configured to set restart priorities and dependencies for restarting VMs.  If a host becomes isolated, you can configure the host to either shut down or power off the VMs, followed by restarting them.


  4. Also check the VM Monitoring setting in the vSphere VA configuration.  

    The settings in this section are intended to prevent unnecessary restarts in the event of transient problems, and can be set at the Cluster or VM level.  


    VM Monitoring sets a failure interval, which is how long it will wait for a heartbeat before determining that an outage has occurred, and a reset period, which is time period in which no more than 3 VM moves due to HA can occur.  The default levels for this are:


  Failure Interval Reset Period
(max of 3 HA moves)
High 30 seconds 1 hour
Medium 60 seconds 24 hours
Low 120 seconds 7 days



Configuring Hyper-V failover


What's Your Plan with Local Search Marketing wording on Sky Background,Once you have the details of how HA was configured for VMware, you can create Hyper-V failover Clusters that will provide the equivalent function.  The steps to configure this are:




  1. Add the Failover Cluster role to your Hyper-V hosts.  

    Hyper-V uses Windows Server Failover Cluster Manager to implement high availability failover, so make sure this Windows server role has been added to your Hyper-V hosts.


  2. Plan which VMs will be installed on which hosts.

    Factor in any resource reservations and
    affinity settings for the VMs.  In Hyper-V the memory reservation is set as the Startup RAM required for the VM,  and the processor reservation is set as the processor reserve.


  3. Plan which Hyper-V hosts will be Clustered together for failover.

    Remember that when a VM fails over to a different host, that host must have enough resources for both the startup RAM and the processor reserve for the failed over VMs that it will be hosting.  Also keep in mind, as with VMware, Hyper-V will prevent VMs from moving to hosts or attaching to resources for which they have an anti-affinity setting, and will keep two VMs with an anti-affinity setting from residing on the same host.  In addition, Hyper-V maintains a list of
    possible owners and preferred owners for VMs.  


  4. Create and configure Hyper-V Failover Clusters.

    Install your VMs on the Hyper-V hosts based on the plans from step #2 and #3.  Before moving on to configuring failover, verify that all the VMs not only boot up but also function as well as they did in VMware.  If possible, switch to the Hyper-V version of a server for a testing period while retaining the VMware version in the event that a problem is found and you need to revert back to the original VMware VM.



  5. Use PowerShell to create VM groups

    One of Hyper-V’s advantages is that it can be managed through
    PowerShell cmdlets.  You can use PowerShell to add antiaffinity classes to groups which will govern which VM groups can run on the same Hyper-V host.  


  6. Create Failover Clusters

    Failover Clusters can be created and managed using the Failover Cluster Manager, available in Server Manager → Tools.  Also - as with all other things Hyper-V - Failover Clusters can be managed through
    Failover Cluster cmdlets.


  7. Test failover

    The Hyper-V Failover Cluster configuration item (4) includes
    instructions on testing failover - if you run into any problems, start troubleshooting by enabling Windows Error Reporting for Cluster events.  


  8. Adjust host failure and failover sensitivity settings.

    The VMware HA configuration settings for how to respond to host failures are
    node isolation and quarantine settings in Failover Clusters.  If you've modified these settings in VMware's HA, adjust them if needed in Failover Clusters.

    VMware uses the High/Medium/Low Failure intervals to limit the number of HA failovers on systems with transitory failures.  Hyper-v uses 
    virtual machine resiliency to limit the number of Cluster failovers for transitory issues.



Conclusion

Default configurations of HA in VMware will generally work with default settings when you switch to Failover Clusters in Hyper-V.  However, any customizations for VMware HA and VMware DRS must be reconfigured in Hyper-V if you want to mimic the VMware environment in Hyper-V.

 

Want to learn more?

Download our vSphere vs Hyper-V comparison matrix - both technologies can provide redundancies that will maximize your uptime and that will allow you to squeeze out the most performance. Which is better and how do you decide.

 

Download the comparison:   vSphere vs Hyper-V

We value your privacy and will not display or share your email address

Sign Up for the Blog

Heroix will never sell or redistribute your email address.