Back in the days of the physical server, an administrator purchasing a server would size a server with plenty of RAM, disk, and processor for a server's long life. In many cases, computing resources were over-provisioned in an attempt to make sure that potentially growing resource needs would not max out the resources of the new server. While over-provisioning resources cost a little extra money on the front end, upgrading a server mid-cycle tended to be pretty expensive.
How times have changed.
The era of virtualization is in full swing, and over-provisioning servers — now in the form of virtual machines (VMs) — is not only unnecessary since resources can be added on-the-fly, but it also has a significant cost. For example, every unnecessary gigabyte of RAM added to a VM is a gigabyte of RAM taken from the central resource pool that can't be added to some other needy VM. The same goes for disk space and processor. We're in an era of "right-sizing" our individual workloads. By right-sizing VMs, companies avoid prematurely buying additional virtual hosts.
Although VMware and Hyper-V provide performance-viewing capabilities, both tools are far from complete and simply provide you with a point-in-time look at where things stand at any particular point. From that aspect, the built-in tools don't really provide much in the way of analysis. VKernel aims to fix that shortcoming by offering tools that take performance analysis to the next level. Some of VKernel's tools, including Capacity View, are free, although there are some limitations, which I discuss below.(Note: For this article, I'm using Capacity View with VMware vSphere and vCenter.)
The free Capacity View tool provides you with a very high-level overview of the health of your virtual environment. Beyond telling you what resources are currently being consumed by individual VMs, Capacity View gives you insight into how appropriately your VMs are sized, but only at an aggregate level. For example, Capacity View won't tell you that the VM named vm-print is over- or under-subscribed, but it will tell you that you have 10 VMs using too much RAM or 12 VMs that haven't been assigned enough disk resources.You can download Capacity View from VKernel's Web site; it's quick and easy to install. Once installed and upon first execution, you're prompted to answer a few questions (Figure A). Specifically, you need to point Capacity View at your vCenter server or, if you don't have a vCenter server, at an individual ESX host. The only other parameters that you need to specify are the Username and Password parameters that you see in Figure A. Figure A
The Capacity View configuration screen. (Click the image to enlarge.)Capacity View makes heavy use of vSphere's built-in API to gather performance statistics that are then matches against the limited parameters that you specified on the configuration page. Capacity View then displays a dashboard-style screen with an overview of your virtual environment. One such screen is shown in Figure B and gives you an overview of a live virtual environment consisting of six hosts, thirty-two powered on virtual machines and eleven data stores. Figure B
The high-level environment overview. (Click the image to enlarge.)
In the center of the screen, you'll see an overview of the physical and virtual resources available in this environment. Below the overview, you'll find these three columns of information:
- Performance Problems. How many VMs are insufficiently configured or suffering from high I/O latency problems?
- Available Capacity. Given current trends, how many more VMs can be safely added to this environment before resources are taxed beyond a reasonable level?
- Over-Allocated Resources. How many VMs have been assigned too many resources, including too much CPU, over-allocated RAM, or an overly generous amount of disk space? Correcting these issues helps to increase the available capacity, which will lead to higher numbers in the Available Capacity column.
Because it's a free tool, Capacity View does not notify you about specific actions to take to free up capacity or tell you which VMs you need to add RAM to in order to fix performance problems; VKernel's other tools, including Capacity Analyzer and the Optimization Pack, provide those details.
Capacity View identifies where you might be experiencing problems in your virtual environment; this free tool is intended to entice you to purchase the more advanced VKernel tools: Capacity Analyzer and Optimization Pack. Capacity View does a good job of telling both that you might be giving away the farm to some VMs and that you might be being stingy with others. This kind of detail is the first step in your VM right-sizing effort.
Want to keep up with Scott Lowe's posts on TechRepublic?
Since 1994, Scott Lowe has been providing technology solutions to a variety of organizations. After spending 10 years in multiple CIO roles, Scott is now an independent consultant, blogger, author, owner of The 1610 Group, and a Senior IT Executive with CampusWorks, Inc. Scott is available for consulting, writing, and speaking engagements and can be reached at firstname.lastname@example.org.