Cost Recovery and Cost Transparency in the Virtual World

Chargeback in the days of exclusively physical infrastructure was so much simplerwasn’t it? You bought what someone needed, put an asset tag on it and slappedthem with an invoice. Well, maybe or maybe not. Chargeback,even in those environments (and those environments still exist), had it’s challenges. It’sjust back then nobody really used chargeback as much as people want to use ittoday with virtual environments. Today, virtualization really means you can very effectively and securely shareinfrastructure, but you need the right tools to figure out how much of what resourcesare being used and by whom. This isin addition to understanding where the costs lie inside the environment.

I am not going to get into the complexities of cross-charging and chargeback in mixed infrastructure environments, that is for another blog. I am also writing this article in isolation of the impact of Service Level Agreements, which are also very important (might get another blog out of that one too!). But the reasonsthat our customers want to do chargeback are wide and varied, ranging fromoutsourcing and service provisioning, cloud provisioning and departmental cross-charging.

Some of our customers use it, simply, for cost transparency – that is effectively chargeback, without actuallygenerating invoices! They are interested in identifying where the most resource is consumed and where the bulk of the costs lie. This is why I chose the title 'Cost Recovery and Cost Transparency...'.

In thevirtual world, we have to think about some additional factors around ownership,utilization and distribution. Admins must also battle against theperception from the business that VMs are simply free, or low cost “files”

So whatexactly is chargeable in the Virtual Environment? Essentially it is exactly allthe same stuff that we have to pay for in the physical world, Hardwareamortization, storage, cooling rackspace, maintenance, administration, softwarelicenses and more…

It’s justthat some things are a little more distributed and moreover, sometimes theyseem to be hidden! When we have a clear viewof who owns what, then we can start to do effective chargeback in the virtualenvironment. This means taking control of sprawl and assigning ownership!

It alsomeans we need an in depth understanding of the costs inside your environment.Now I can’t help you with an in-depth understanding of the costs inside yourenvironment. For instance, I don’t know how much you pay for hardware support,software, cooling, energy etc… What I can do, is show you a way of takingcontrol of the sprawl inside your environment, using services and enabling youto find a realistic chargeback model that will be right for you.

Let’saddress the sprawl thing first. We have the capability today, to manage this. If weare looking at chargeback, then our environment is of a certain size where ourprocesses that we use for provisioning help us identify who owns what and whereit is. This is usually done by way of a naming convention and/or vCenter customattributes (Owner, Business Unit, Cost Centre) for example. Once we have either or both of these, we can leveragethese to automatically create services in vFoglight. Services are essentiallygroupings of objects according to department, application, owner or whatever criteriayou specify. They are extremely flexible and are designed to reflect thebusiness topology rather than how stuff is organised in vCenter. My colleague,Thomas Bryant, has written a great complementary article on how we can set upthese services automatically in vFoglight using a rule;

I have marked that article as a favourite, as I use that mechanism quite a lot!

OK, so now we have our VMs organized into services, what industrychargeback model should we use? Not withstanding we may have to put our VMs in tiers.

We can use Tiered Flat Rate (TFR), Partial Cost Recoverywith Measured Resource Utilization (MRU) or Full Cost Recovery with MRU. Er…what? I hear some people ask. Let’s look at these in turn;

TFR – Tiered Flat Rate. This is the simplest costassociation and recovery model. We can look at VMs as using a ‘slice’ or moreof the infrastructure and paying, in turn, a flat rate for that slice.

Examplesof this;

Tier 1 = 1 x vCPU, 512MB RAM, 20GB HD = 1 slice. If our breakeven pointis $50 pcm for this tier, then we can look at charging above $50 pcm for asingle slice.

Tier 2 = 1 x vCPU, 1GB RAM, 40GB HD = 2 slices. Our breakevenpoint may be $80 pcm for this tier.

…and so on.

Next up is MRU - Measured Resource Utilization. This model canbe much more equitable. I choose that word very carefully and there is a reason I have highlighted it. Here we pay for whatwe use based on disk usage and host resource usage over the time period. Youcan still have chargeback tiers for machines beyond the simplest specification,but overall, you pay for what you use. As an aside, you may also want to putweightings on the usage of certain types of resource. If your environment isCPU constrained, you can charge more for CPU. If you want encourage responsibleresource usage or you want to discourage over allocation of a certain type ofresource you can apply an extra cost weighting to that resource.

In this model there are two different methods of costrecovery. You can either do what is known as Full Cost Recovery or you can doPartial Cost Recovery. This is also where it can get a little tricky.

Now you need to decide if you are a cost center or not,that’s if the decision has not already been made for you. This is important, asthis also dictates who owns (essentially pays for) the spare capacity whileusage of the new Virtual Environment ramps up! If you are the cost center thenyou will bear the load of paying for an underutilized system.

The alternative is Full Cost Recovery. If you are not thecost center then the customer or department will pay for any under utilizedresources. This can be tricky unless you have a raft of people ready to use thenew system. Pity the poor schmo who jumps first with nobody else joining theparty and paying for all that spare capacity. In reality it may not be likethat. In fact it probably won’t. But it serves as an illustration of thisconsideration. It is important, if the infrastructure is going to be truly shared,to take this into account and make sure you have customers ready to use the newinfrastructure or be prepared to absorb costs while the environment’s usageramps up.

This seems quite simple, doesn’t it? It is quite asimplistic view, admittedly. In reality you are always going to run into thoseedge case requirements which threaten to break these models and put you back tosquare one. How do we cope with those? For example I may have a user thatrequires a 250GB application drive, or someone that requires an expensivesoftware license or someone that requires extra vCPUs, memory or throughput. These extra requirements may not actually be built into any of our chargeback tiers. Overcoming this obstacle is easilyachieved by the use of Add-Ons. Add-Ons are a mechanism built-in to vFoglightchargeback, that allow us to deal with these kinds of requirements. In mostenvironments, it is extremely unlikely that a couple of templates will fulfillevery need.

Even after consideration, you may not know which chargebackstructure is right for you. Not to worry, an asset can be in multiplechargeback tiers, TFR or MRU. Try them all see what feels right or see whichmechanism delivers the required granularity.

In conclusion, my personal opinion is that you cannot doeffective chargeback without a mechanism for understanding capacity and yet another mechanism for grouping and aligning assets to an owner. The information gathered and maintained within vFoglight providesexactly that, but without the need to purchase additional software components. The reporting capability inside vFoglight canprovide targeted reports for chargeback and cost transparency with the flexibilityof multiple chargeback methods.

Whether you are thinking about chargeback for cross-chargingor outsourcing, or even if you just want some cost transparency inside your virtual environment, take a look at an evaluation copy of vFoglight. Maybe it is justwhat you were looking for!