DRS vs. VMTurbo: Our Most-Requested Celebrity Death MatchBy Derek Slayton on March 15, 2013
We’ve grown rapidly over the last year adding hundreds of new customers as IT operators at companies of all sizes realize that controlling today’s virtual data centers requires a new set of tools built to offload manual processes instead of just collecting data. With this influx of new engagements many things have changed—but we still consistently get the same question as folks start to learn about our technology. How is this different from DRS?
And it’s a logical question to ask. However, while resource management is central to both, these are technologies that focus on solving different problems and have very different value propositions to the IT administrator. VMTurbo is a control system that assures application quality of service (QoS) while utilizing the underlying infrastructure as efficiently as possible. VMware’s DRS technology is a feature included in the virtualization platform that focuses on balancing CPU and memory utilization across physical hosts in a given resource pool or cluster.
Balancing host memory and/or CPU utilization does not focus on ensuring that the workloads have the resources they need to operate as the business requires. In short, it does not drive health and optimization across the environment. It also does not identify areas where better utilization can be achieved. Instead it ensures all physical hosts are in, roughly, a similar state regardless of how “desirable” that state might be or how the workloads and applications are actually performing.
VMTurbo focuses on solving what we refer to as the Intelligent Workload Management (IWM) Problem. It is much broader than balancing memory and CPU on hosts. It requires a holistic understanding of performance metrics at all levels of the infrastructure (storage, compute, network); the priorities, dependencies and constraints across the environment; and the demands being placed on the infrastructure by workloads and applications. Our solution is a decision analysis engine that is able to weigh all resources and control points within the infrastructure to determine the actions required to keep the environment running smoothly or—when resources become constrained—how to prioritize the critical workloads to ensure service levels are maintained on business-critical applications.
There are several good examples of scenarios where you can get a tangible understanding for the differences between the two technologies and the outcomes they would derive in each scenario.
Workload increases on all hosts within a cluster: CPU and/or memory utilization on all hosts in the cluster increase. Workloads suffer and application QoS on the hosts is degraded.
- DRS response: Nothing. Cluster utilization is balanced
- VMTurbo response: Recommends provisioning an additional host. If no host is available, applications with a higher priority are allocated the resources they require at the expense of non-critical applications.
Demand on a given workload increases: vCPU on VM increases and application QoS degrades.
- DRS response: Nothing. Host utilization remains balanced.
- VMTurbo response: Reconfigures given workload to provide additional vCPU capacity, provided those resources are available on the host. If not, given workload may be moved to a host that can accommodate need. If no host can accommodate the need and the workload is critical, other workloads are sized down to make resources available.
CPU Ready Queue wait on Host1 increases: Applications QoS on Host1 is degraded but CPU utilization on Host1 actually decreases because of queuing while the CPU utilization on other hosts in the cluster stays high.
- DRS Response: Move workloads (potentially CPU intensive ones) from other hosts within the cluster to Host1 because CPU utilization is artificially low on Host1. Queuing increases and application QoS degrades further.
- VMTurbo Response: Assess VM vCPU needs across cluster, reconfigure where possible to alleviate contention. Assess VM placement with new configuration to further reduce contention. Prioritize workload demands to accommodate critical applications where contention cannot be reduced.
While the differences in approach (and results) are clearly outlined above, it is important to note that DRS and VMTurbo do not conflict when running simultaneously. Many of our customers use the two technologies together. What they find is that VMTurbo takes a more granular approach to the workload management problem and, as a result, DRS is a lot less active. But the two solutions do not drive conflicting behaviors or actions.
Most importantly, the VMTurbo solution is continuously optimizing resource allocation and workload placement across the virtual infrastructure, rather than waiting for problems to occur and service to be interrupted. It reduces contention to prevent problems or prioritizes demands to ensure critical services perform. Give VMTurbo a try—I think you’ll find that the actions we derive as the product controls your virtual environment in the desired state enables you, and your team, to spend less time fighting fires (or, celebrities, for that matter).