When buying a new server, or any piece of computer for that matter, we have the task of choosing the components that will determine how the system is going to perform and how reliable its going to be. For instance a video gamer  needs to be sure to get a very capable video card for handling graphic intensive games, on the other hand,  a server should be capable of running at least a  Raid 1 (Mirroring) hard drive configuration to protect the data stored in them.

With Virtual Machines, the story is a little bit different.

Let’s say you have a very powerful server that is being used as a file server: probably its CPU and most of its memory is underused. Sometimes you have a server that has a lot of applications running at the same time eating all the CPU and memory to the point that its performing poorly.

With virtualization technologies you have much more control on the resources you are going to assign to your servers, the cap being how powerful and fast is your virtualization infrastructure.

One of the things we need to let go is the assumption that our virtual machines need the same amount of resources as if they were physical ones. Do you need 4-CPU Cores on a Server that has no software optimized for multiple CPUs? Are you sure you actually need 8 GB to run those web applications running on IIS?

Enterprise Virtualization environments offer statistics and overviews on how our vm are actually performing. I recently installed a SQL Server environment from physical to virtual and they were really happy on how the new server / vm was performing: it had more cores and double the RAM (8 in this case). They were surprised when I told them: yes, you have multple cpu cores and 8 GB of memory on that server, but I just gave it 1 core and 2 GB of RAM. They asked me why aren’t we giving it more resources so it can run much more faster. I then showed him the performance statistics on the vm and he was kind of suprised, the CPU was barely doing anything and the  memory usage was only about half.

Now the client has more resources to create new virtual machines to the box that before could only hold just one.

And it doesn’t stop there.

For example Vmware ESX is capable of optimizing the memory usage when you are running several virtual machines with the same OS (Windows Server 2008 R2 for instance) by sharing the same memory blocks. How? Different vms running the same OS share a lot of the same instructions in memory because they share the same code, so instead of running and loading the same code into memory several times, it does it just once.

Using this kind of performance monitors you can a better control on how your servers are going to perform, how much they really need and how much free resources you are going to have for future virtual machines.

Author: Daniel Ruiz
Adcap Network Systems – Atlanta and Miami
Great Local Engineers Creating Systems that Work!
Posted at
Geeknick


No related posts.

Related posts brought to you by Yet Another Related Posts Plugin.

Tagged with:

Filed under: Datacenter

Like this post? Subscribe to my RSS feed and get loads more!