Understanding DRS enhancements introduced in vsphere 6.5
Let us have a quick look on the changes made in terms of enhancing DRS with vsphere 6.5.
Before proceeding with the enhancements let us first go through the limitations we had encountered in the previous versions.
- If VM’s resource changes frequently over the period DRS could only react to such demands once the DRS algorithm has finished completing the calculation based on cluster usage. By the time calculation completes and DRS migrates VM on to a different host it would have already affected VM’s performance.
- Certain servers would have a fixed peak period where it would demand for more resources. But in the previous version we do not have such feature that could take this in to consideration
- During previous version only CPU and memory metrics were taken in to consideration to balance the cluster load. But incase network intensive VM is utilizing 100%. Even though there are other host utilizing least % of network resource yet DRS would not place them on the appropriate host leading towards network bottleneck for the underlying VM.
These limitation have ideally been worked upon and vsphere 6.5 gives you below category of DRS enhancements.
- Predictive DRS
- Network-Aware DRS Enhancements
- Additional settings in context to VM distribution, Memory metric for load balancing & CPU over commitment.
Predictive DRS is a feature which not only balances the load based on the cluster usage but predicts advance load changes that may occur using a feature called vRops before decision making.
This feature is currently under tech preview and until next release of vRealize automation suite to be compatible with vsphere 6.5
vRops is a product whose one of the functionality is to proactively monitor the complete vsphere environment in terms of resource usage based on different time intervals. pDRS or predictive DRS has been integrated with vRops which would provide predictable load stats making it easier for DRS to decide based on both the below conditions.
- Algorithm used to calculate the host cluster resource usage
- Statistical analysis based on resource utilization over the past few periods.
Based on both the condition pDRS will certainly take it best decision on VM placements.
This would be possible if you have vRops configured in your environment.
The default forecasted information that is received by DRS is 60 minutes (3600 seconds), which can be changed by an advanced setting called “ProactiveDrsLookaheadIntervalSecs”.
Network-Aware DRS enhancement was introduced considering the fact the earlier version of vSphere, algorithm used to calculate the usage only based on CPU and memory resources. This would ideally place the network intensive VM’s on wrong host as DRS is not aware about the resource crunch in context to network metrics.
In vsphere 6.0 using NIOCv3 it was certainly possible to reserve network bandwidth for network intensive VM’s and DRS would consider this parameter
But vsphere 6.5, DRS will now consider pNIC utilization of the host and based on utilization VM’s are placed on the appropriate host. If the bandwidth crosses 80% of threshold the host is considered to be saturated.
Hence any host where network bandwidth is utilized more than 80 %, DRS will not place VM’s on such host and would certainly target hosts with lesser network bandwidth
Lastly VM distribution ensures that VM is evenly distributed across the cluster. This feature balances VM’s per host. Generally customer prefer keeping a constant count of VM’s per ESXI host and this feature would ideally achieve it.
DRS by default, considers the active memory usage for load balancing. But Memory Metric option ensures DRS consider consumed memory usage, instead of active memory usage for load balancing. Ideally helps for VM’s are not over allocated
CPU Over-Commitment, this is one of the feature that could be useful when you want to limit the number of vCPUs per pCPU.
Hope this article has helped you to understand better. Watch out for more stuffs on vsphere 6.5.