Server capacity planning is among the most important steps of any virtualization project, but too often organizations...
suffer from the results of inefficient server capacity planning just because it’s so easy to add virtual machines. In this article, you’ll read about the five best things you can do to use your hardware more efficiently.
More on server capacity planning
Designing a virtual environment with VMware Capacity Planner
Improving server capacity planning
Capacity planning in virtualized environments FAQ
5. Use your mind before using hardware
First and foremost, you shouldn’t use virtual hardware the way you’ve used physical hardware. In the days before virtualization, it was important to buy enough physical hardware to support the maximum workload that your server might someday need. With virtual hardware, it is very easy to allocate additional hardware at a later stage, and therefore you can better allocate just a bit more than the resources the server really needs. That is, if you expect that your server, on average, needs 2 GB of RAM, but it might need 4 GB during peak performance, just allocate 2 GB and then add the additional 2 GB when necessary.
4. Clean up old virtual machines
Because it’s so easy to create a virtual machine (VM), IT pros tend to spin them up to do some testing. But, too often the person that uses the VM for the test not the same person who creates the VM. Once created, organizations can forget about the VM. If you’re responsible for the creation of VMs for other people, it’s a good idea to try to keep track of what these VMs are used for. And if you know beforehand that it will be used for testing purposes only, document that fact so that you can ask the user if the VM is still needed once the testing period has ended.
3. Plan server capacity in a smart way
A database server has completely different hardware needs from a Web server. Most organizations use a wide variety of VMs, but too often those organizations group the same type of VMs on the same physical servers. From a hardware usage perspective, it’s not very efficient to run all database servers on the same host computer, and run all Web servers on another host computer, because you will end up with one host computer that has more memory than it can use and another host that’s running out of memory. Try to distribute VMs in a smart way instead, making sure to place different kinds of VMs on the same host computer. The ideal picture would be to balance network, CPU and RAM use evenly across hosts by using a variety of VM types.
2. Use advanced VMware hardware options
The ESXi host is capable of managing resources very intelligently. By communicating with the VMs, an ESXi host can dynamically adjust the amount of resources available to a VM, which means that the host can allocate precious resources, such as RAM, dynamically. In order to use these advanced techniques, you must install VMware Tools on the VM. Installing VMware Tools will also install drivers that allow the hypervisor to communicate with the VM’s operating system.
1. Use resource management software
You can, of course, use vCenter Server yourself to move VMs around at the moment hardware isn’t used efficiently. But, you can also easily automate capacity management with VMware Distributed Resource Scheduler (DRS) or with third-party software. An example of such software is VKernel Corp.’s vOPS Server Standard, a solution that allows you to identity server capacity problems before they even occur and plan optimal VM placements. You can always monitor the hardware availability on your host yourself, but manually keeping up with changing workloads in a large data center could quickly turn into a full-time job.
It’s not that hard to do efficient server capacity planning in your vSphere environment. In many cases, you can improve server capacity planning just by applying efficient management and oversight policies. At all times, you should make sure to install and use VMware Tools in the virtual operating system to take advantage of advanced hardware management solutions. And in those situations were these are not enough, you can use specialized software that allows you to perform part of the server capacity planning tasks for you.