WavebreakmediaMicro - Fotolia

Manage Learn to apply best practices and optimize your operations.

Computing with a price tag: VM cost calculation guide

Proper VM cost assessment is a critical element of meaningful showback and chargeback practices in a virtual data center.

What does a VM cost? Although the question is simple, the answer can be surprisingly complex -- it involves a keen knowledge of computing costs, an understanding of computing capacity, and insight into anticipated usage. Costs might seem like a task best left to the business side, but IT experts have all the details necessary to perform some basic calculations, and they lay the important foundations for cloud-based VM management like showback and chargeback. Let's review a general exercise used for calculating the cost of VMs.

Calculate fixed and recurring costs

Any VM cost estimate must start by figuring the total fixed and recurring costs involved with virtual server deployment. For example, fixed costs per server include physical servers, physical storage such as a storage array, hypervisor licenses such as VMware vSphere, operating system licenses like Windows Server 2012 R2 Datacenter edition, and management software including VMware vCenter. Also consider recurring annual costs per server including network connectivity, storage connectivity, management software maintenance and system hardware maintenance. Your organization might carry more or fewer costs, so feel free to adjust this list accordingly.

Multiply the annual recurring costs per server times the expected lifecycle of the deployment. For example, suppose you plan on a three-year lifecycle. A $20,000 fixed server cost remains the same over three years, but an annual network connectivity cost of $500 would cost $1,500 per server over three years, and a $2,000 annual management database cost for the deployment would cost $6,000 over three years. Other organizations might use longer or shorter lifecycles.

Now that you know the fixed and recurring costs per server over its lifecycle, multiply this times the total number of servers involved in the deployment. This will show you the total costs of your virtual hardware and software deployment. Here's a very simple example of a 10 server deployment with one 2 TB storage array and a single management tool with annual updates:

Cost item

One-time costs

Recurring costs

Lifecycle (3 years)

Total (for 10 servers)

Server

$20,000

-

$20,000

$200,000

Storage array (2 TB)

$50,000

-

$50,000

$50,000 (for one)

Hypervisor

$10,000

-

$10,000

$100,000

Operating system

$5,000

-

$5,000

$50,000

Server maintenance

-

$1,000

$3,000

$30,000

Network connectivity

-

$500

$1,500

$15,000

Management software

$10,000

-

$10,000

$10,000 (for one)

Management maintenance

-

$2,000

$6,000

$6,000 (for one)

TOTAL COST

 

 

 

$461,000

Calculate the computing capacity

Now that you've added up the cost of your virtualized data center hardware and software deployment, it's necessary to determine the amount of computing capacity that deployment will provide to VMs. You already know that the storage array will provide 2 TB (2,048 GB), but also figure the effective number of servers. This is the total number of servers minus the number of redundant servers. So if you have 10 servers with no redundant nodes, there are a total of 10 servers available. For example, if three of those servers will be redundant (for highly resilient workload deployments) you'll wind up with seven (10-3) effective servers to supply compute resources.

Note the total amount of memory, processors and processor clock cycles available per server. This comes right off the specs for each machine, and might include 512 GB of memory with two, 8-core processors running at 2.5 GHz (a total of 16 cores per server). Also figure the percentage of memory and processor capacity per server that you intend to reserve, along with the percentage of memory and processor capacity that you intend to over-commit. Reservation might simply keep some compute capacity available for later growth or performance management tasks, while overcommitment recognizes that all VMs don't use all allocated resources all the time -- it's a way of maximizing resource usage. There is no requirement for reservation or over-commitment, but knowing this now will affect costing. We're not including network bandwidth here (in gigabits per second) but you could.

So suppose you plan to reserve 15% memory and over-commit 5% (VM performance is most sensitive to memory) while you also reserve 15% of processor cycles and over-commit 60% (nothing here needs to add up to 100%). The available and allocable resources per server and for all seven of your effective servers might look like this:

Resource

Per server

Reserve

Available

Over-commit

Server total

Group total

Memory

512 GB

15%

435.2 GB

5%

456.96 GB

3,198.72 GB

Processors

16

-

16

-

16

112

Clock cycles

2.5 GHz

15%

2.125 GHz

60%

3.4 GHz

23.8 GHz

Calculate the effective costs

We know total deployment costs, and we know what resources should be allocable, so we can take a stab at calculating some monthly and hourly costs for computing resources. Start by determining how many hours per month the deployment will be available. In almost all cases, the deployment will run 24 hours per day for 31 days per month, so 744 hours per month is a standard benchmark. Also determine the total number of VMs that you intend to carve out of the deployment. For this exercise, let's figure on 200 VMs maximum. Determine the percentage of costs allocated to memory and processor cycles. For example, it's common to assign 70% of costs to memory and 30% of hardware costs to processor cycles (this does need to add up to 100%).

Let's use memory as the first example. We know that the business needs to recover $200,000 in compute costs for the deployment over three years, and with 3,198.72 GB of memory available accounting for 70% of the costs, that's ([$200,000 / 3,198.72 GB] * 0.7) $43.77 per GB over three years, $14.59 per GB per year, $1.22 per GB per month, or ($1.22 / 744 hours per month) $0.0016 per GB per hour.

Let's break down the cost of the processor cycles. Remember that the business also needs to recover the remaining 30% of that $200,000 investment over three years from the 23.8 GHz of allocable processor cycles. This means ([$200,000 / 23.8 GHz] * 0.3) $2,521 per GHz over three years, $840.34 per GHz per year, $70.03 per GHz per month, and ($70.03 / 744 hours per month) $0.094 per GHz per hour.

Next comes storage, and the business has to recover 100% of the $50,000 price tag for that 2,048 GB over three years. That's ($50,000 / 2048 GB) $24.42 per GB over three years, $8.14 per GB per year, $0.68 per GB per month, or ($0.68 / 744 hours per month) $0.000914 per GB per hour. The memory, processor and storage costs break down like this:

Item

Cost %

Capacity

Lifetime cost

Annual cost

Monthly cost

Hourly cost

Memory

70%

3,198.72 GB

$43.77 / GB

$14.59 / GB

$1.22 / GB

$0.0016 / GB

Processor

30%

23.8 GHz

$2,521 / GHz

$840.34 / GHz

$70.03 / GHz

$0.094 / GHz

Storage

100%

2,048 GB

$24.42 / GB

$8.14 / GB

$0.68 / GB

$0.000914 / GB

We're not done. We've only calculated the compute costs per hour (not per VM yet), but we also need to figure the monthly costs for the non-compute items like the licenses and connectivity. This involves taking the total lifecycle cost for each non-compute item, finding the annual cost, monthly cost, and the cost per VM (assuming that we use 200 VMs as planned). The non-compute fixed costs would look something like this:

Cost item

Lifetime cost

Annual cost

Monthly cost

Monthly cost per VM (200)

Hypervisor

$100,000

$33,333.33

$2,777.78

$13.89

Operating system

$50,000

$16,666.67

$1,388.89

$6.94

Server maintenance

$30,000

$10,000

$833.33

$4.17

Network connectivity

$15,000

$5,000

$416.67

$2.08

Management software

$10,000

$3,333.33

$277.78

$1.39

Management maintenance

$6,000

$2,000

$166.67

$0.83

TOTAL FIXED COST

$211,000

$70,333.33

$5,861.12

$29.30 per VM

Find the per VM cost

Each month, we're going to charge VM owners $1.22 per GB of memory and $70.33 per GHz of processor time in order to recover a portion of the $200,000 server investment, $0.68 per GB of storage to recover part of the $50,000 storage array, AND a flat monthly fee of $29.30 to help recoup all of the other non-compute costs of the deployment. Some organizations might also charge a one-time "setup" fee to provision and configure the VM. As an example, this fee might be $500 or $1,000, and it often serves as a powerful business tool to mitigate indiscriminate or haphazard provisioning requests.

So the exact cost of a VM would then depend on the actual amount of memory, processor cycles and storage allocated to the VM. Suppose that IT offers a menu of small, medium and large VM sizes. For example, IT can supply a small VM with 1 GB of memory, 2 GHz of processor cycles and 20 GB of storage. A medium VM might include 2 GB of memory, 4 GHz of processor cycles and 40 GB of storage. A large VM could offer 4 GB of memory, 8 GHz of processor cycles and 80 GB of storage. Using the costs established above, these three VM types would then cost out like this:

VM size

Memory

Processor

Storage

Monthly compute

Monthly storage

Monthly fixed

Monthly TOTAL

Setup (optional)

Small VM

1 GB

2 GHz

20 GB

$141.28

$13.60

$29.30

$184.18

$500

Medium VM

2 GB

4 GHz

40 GB

$283.76

$27.20

$29.30

$340.26

$500

Large VM

4 GB

8 GHz

80 GB

$565.12

$54.40

$29.30

$648.82

$500

Revisit costs regularly

Remember that this is only one simple example of VM cost analysis -- it's not meant to be all-inclusive and other cost factors (such as network bandwidth or data center energy costs) can easily be added to the calculations. But you can see that changing key cost factors like lowering server costs through volume discounts or increasing the number of VMs expected from the deployment can radically alter the costs passed along to your VM consumers. Also note that this analysis does not include markups. This method provides a sound foundation for internal showback or chargeback processes rather than generating a profit. However, it would be a simple matter to add a "margin" to these costs in order to produce profit if IT provides VMs to external computing consumers. Finally, cost analysis is not a one-time endeavor. IT leaders should re-assess and recalculate compute and non-compute costs on a regular basis -- perhaps annually -- or each time that a major change occurs in the data center infrastructure.

This was last published in November 2014

Dig Deeper on Virtualization costs, licensing and support issues

PRO+

Content

Find more PRO+ content and other member only offers, here.

Join the conversation

3 comments

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

Great way to support more on existing resources. This is a smart solution to take enterprise computing to the next level without killing your budget.
Cancel
I see some cloud providers price per core / Storage and memory - in your calculation above 2GHz processor means what ? how many cores are we allocating here ?
Cancel
Why is your total group clock cycles 23ghz? it should be round about 380Ghz for 7 servers (112 cores á 3,4ghz with 15%/60% reserve/overcommit) that will do
Cancel

-ADS BY GOOGLE

SearchVMware

SearchWindowsServer

SearchCloudComputing

SearchVirtualDesktop

SearchDataCenter

Close