The trouble with distributed computing has always been the total cost associated with managing the systems. To deal with that issue in recent years we’ve seen a wave of server consolidation. Most of that consolidation involved replacing a few servers with even larger systems, and running more applications on those systems as virtual instances.
Of course, as before, we’re seeing a replay of the server sprawl issue, but now involving virtual servers. Because it’s a whole lot easier to provision virtual servers, the number of servers that need to be managed across the enterprise is increasing exponentially. That creates an IT management challenge because once where there might have been 10 to 20 physical servers that needed to be managed, there may be as many as 200 virtual servers running on top of 20 servers.
That kind of explosion in virtual server growth can drive the cost of labor associated with managing the overall IT environment through the roof. And worse, it can obscure operational details and hinder the collection of critical information needed to predict the performance of critical applications.
That is a major problem. Lacking detailed resource usage information, what company would trust a critical application to virtualization where it might be impeded when less essential applications gobble up needed processing power, memory, storage or bandwidth?
To ensure mission-critical workloads run at suitable performance levels in a virtualized data center demands meticulous attention to application performance requirements, resource utilization, and other technical characteristics.
It is easy to make mistakes when doling out resources to virtual servers. While allocating disk and memory among virtual machines is rather straightforward and fine-grained, CPU and network resources are another story. An incorrect assumption will quickly drag down many mission-critical applications.
As a result, before running such applications in a highly virtualized environment, organizations should use performance and cost-analysis tools to evaluate whether these applications are proper candidates for virtualization.
In particular, what’s needed is much more functionality than traditional systems management tools for virtual machines. Sure, you need tools to monitor and manage individual virtual machine instances. But you also need something that provides a systems level view and offers insight into which virtual instances of applications are consuming specific amounts of resources. Specifically, you need new tools that can easily correlate application performance with the virtual machine infrastructure it runs on.
Such tools will allow you to characterize your software application and its workload correctly. Which resources does your application consume? How much? When? How much headroom do you need for peak times and temporary surges in demand?
Having that information, a company can then plan virtualized deployments.

