Tweaking vSphere's DRS advanced options can yield performance boost

The advanced options in vSphere's DRS settings allow experienced sysadmins to squeeze more performance out of their virtual environments.

The Distributed Resource Scheduler option in VMware vSphere utilizes IT resources far more efficiently than would...

have ever been possible before virtualization.

But experienced system administrators can get even more out of their IT infrastructure by manually configuring virtual machines (VMs) with vSphere's DRS advanced options.

Managing IT infrastructure contains a certain element of intuition. As we go about our work, perhaps over the course of many years, the environment grows more familiar -- similar to how we get used to our own car, bike or motorcycle, and have a feeling when something isn't right. In the IT environment, we have a sense of how long file access across the network will take. We get a feel for the latency when storage is being backed up. We know we have enough time to make a mocha espresso while installing patches.

A system administrator who has logged many hours with his or her environment will likely find it much easier to diagnose problems and find arcane solutions than one who has just stepped through the door.

Similarly, this intimate knowledge of the IT infrastructure can help fine-tune virtual environments, in particular the configuration of Distributed Resource Scheduler (DRS).

Where to start

As a system administrator, you likely have a good handle on the performance of your virtual infrastructure. However, that knowledge does have some limits. Capital expense requests for a new storage area network and hosts usually require a more concrete reason than, "My gut tells me that spending $100,000 will make the environment better."

Here is where performance data and log files let you to quantify what your gut is saying. First, see if your DRS configuration has any recommendations or faults, and view its history.

Using the Windows client, select the "Cluster" and then the "DRS" tab. Selecting "Run DRS" will generate new recommendations, which can give you clues on how to adjust your cluster settings. Selecting "Edit..." in the same pane takes you to the Automation Level screen. Changing the setting to "Aggressive" will generate more recommendations, which may help you further tune your DRS settings.

Since DRS makes recommendations and VMotion actions are based on memory and CPU availability and usage, it is a good idea to know approximately how much of these resources are typically used on each host, including both normal usage and periodic spikes. Defining alarms and viewing the performance statistics is a quick way to see how resources are being used both at a specific given time and long term.

Customizing DRS settings

Once you have maximized performance out of the DRS standard settings, you can further customize your cluster by selecting "Advanced Options" and manually entering settings such as:

  • CostBenefit
  • UseDownTime
  • IgnoreDownTimeLessThan
  • MinImbalance
  • MinGoodness
  • MaxMovesPerHost

It is also possible to adjust the frequency that DRS uses for automatically generating balancing recommendations by editing the vpxd.cfg file.

Please note VMware does not recommend changing these settings without a strong reason. You can read the full explanation of these settings in this best practices manual.

Dig Deeper on DRS and DPM