Reading Time: 2 minutes

A new Virtual Machine Load Balancing feature was introduced along with Windows Server 2016, Node Fairness.  What can it do for you? Well, it will optimize the utilization of your Hyper-V Cluster nodes by Load Balancing the Virtualized Workloads within a Failover Cluster.

How it works?

It works straight out of the box actually. It’s enabled by default within a Hyper-V 2016 Failover Cluster and it is triggered based on the following heuristics:

  1. Based on the Host’s CPU utilization and defined threshold.
  2. Based on the Host’s memory pressure and defined threshold.

Evaluation occurs every 5 minutes.  

Aggressiveness Thresholds

AutoBalancerLevel Aggressiveness Behavior
1 (default) Low Move when host is more than 80% loaded
2 Medium Move when host is more than 70% loaded
3 High Move when host is more than 60% loaded

Thresholds are node-centric.

How often Node Fairness Triggered?

  • every 30 minutes ( default value )
  • everytime a new cluster node joins or rejoining the cluster.

Will it cause Performance issues?

My initial response is “No”. You won’t experience any network, I/O or  storage load.  Workloads rebalancing using Live Migration.

Should I disable it?

Depends on your actual needs! There is always the old fashioned manual way of setting up preferred owners for your workloads in order to distribute them across the cluster.

Does Node Fairness and SCVMM Dynamic Optimization are the same? Can be used in parallel or combined?

Node Fairness and SCVMM Dynamic Optimization are not the same. Dynamic Optimization can be applied manually or in a schedule. Node Fairness cannot be used within a cluster when it is managed by SCVMM, Dynamic Optimization takes over automatically.

How can I set it up?

We have 2 options here:

  • Using Powershell
  • Using Failover Cluster Manager Console

To configure Node Fairness using FCL Manger Console, follow the steps below:

1.In Failover Cluster Manager Console, right-click Cluster and click on Properties

2. Navigate to tab “Balancer” and enable or disable Node Fairness, configure aggressiveness and VM Load Balancing Method.

 

More information can be found in the links below:

Microsoft Hyper-V Server 2016

Failover Cluster VM Load Balancing in Windows Server 2016

Virtual Machine Load Balancing in Windows Server 2016