So far in this series we have seen how you can define your “Cost Drivers” to calculate your ‘Private Cloud Expense” which can eventually help you to accurately gauge the Unit Cost of each individual virtual machine. Once know you how much it cost you to provide a certain service from your private cloud the next logical step is to Showback or Chargeback to the lines of business you are serving.
Showback vs Chargeback
Please note that OTOB vRBC only does “Showback”, where you just report the consumption of a business unit and or inform your business that how much it would have costed them if they start paying for the services they have consumed using vRBC “Showback” reports.
But in case of “Chargeback” you go a step further and start billing & charging your business for their consumption which can be done by using vRBC APIs by integrating the “Showback” data to an existing billing system.
vRBC use “Pricing Policies” to calculate the charge for cloud services, these pricing policies have replaced vRealize Automation “Cost Profiles” which were used previously before vRealize Automation 7.0.
Upfront Pricing for Cloud Services
If vRealize Automation is the primary source of consumption in your environment and is already integrated with vRBC then you might have noticed that when a “Business Group” user go to the vRealize Automation portal and request for a service they can see an “Upfront Pricing” for each “Catalog Item” even before they request it.
This help them know the one-time fee and daily cost of a service based on its Operating System & hardware configuration, number of instances etc.
If you go the “View Pricing Details” you can further see the price of individual components which constitute this cost.
These pricing details are provided by the “Pricing Policies” defined in vRBC, but you might be wondering that where are these pricing policies as you might have go through them or defined them.
To provide a quick time-to-value vRBC auto-generate these pricing policies for your private cloud based on your “Private Cloud Expense” and running cost. Having said that you can always modify these pricing policies to have a customized and consistent “Showback” mechanism for each of your “Business Units”. Custom pricing policies also help you to ensure that “Charge” is more than the “Cost” of the services you are providing and you have healthy recovery margins for the provided services J
Please refer to my previous blog post to understand the difference between Cost & Price in this context.
Let see what additional customizations are required on vRBC to have accurate “Showback” data for your Hybrid Cloud so that IT can act like a true service provider & become a profit centre. Please note these steps are additional to the “Private Cloud Expense” calculation which we have already discussed.
Consumption Calculation in vRBC is primarily two steps process, first you decide who are your end customer or “Business Units” and then you define your “Pricing Policies” to charge them for the servicing they are consuming.
Step 1: Define your Business Units.
If you want to charge for the services you are providing you need to first figure out who are your consumers and how to group their workloads based on some already existing containers in vCenter or vRA.
If you go to Consumptions–> Business Units, you will notice that vRBC has already configured some “Business Units” based on the endpoint configured and discovered in your environment.
vRBC allow you to define your “Business Units” & group their workloads on multiple private & public cloud end points. In the latest version of vRBC 7.3.1. you can group the virtual machines into Business units based on below hierarchy.
For example, if your “Business Units” are represented by “Business Groups” in vRA then you can just use them and disable all other grouping methods. This will ensure that all the virtual machines deployed by the “Business Group” users will fall under the respective “Business Unit” in vRBC and will be governed by common pricing policy.
But in a real-life scenario it might not be as simple and for some of your “Business Units” and there might be some workloads which are outside vRA and are deployed directly by vCenter serve or even may be deployed in a public cloud like AWS.
I discussed this example in my first Introduction post where an organisation may have a line of business called “Engineering” which is represented by a “Business Group” in vRA and is using vRA for provisioning all production virtual machines, but at the same time they may have lot of legacy virtual machines which are not provisioned by vRA but directly by vCenter server and are present in an Engineering” folder”. They may also have some DevOPS workload running under a separate account in AWS.
In this case, you can combine all these Virtual machines under a single “Business Unit” construct in vRBC to track and showback the overall consumption by “Engineering” Business Unit.
You may also know that vRBC can be used even if you do not have vRA by integrating it directly with a vCenter Server. Therefore, once you add your vCenter server in vRBC, “vCenter Folders” are enabled by default as “Business Units”, but in case they do not represent your business or do not contain virtual machines belonging to any of your “Business Units” I would recommend disabling vCenter Grouping, as it will unnecessarily create “Business Units” clutter in vRBC which may not be a true representation of your consumers and their consumption.
Step 2: Define your Pricing Policies.
Once you know your “Business Units” and have grouped their virtual machines or services accurately next step is to define your “Pricing Polices”.
All the virtual machines discovered by vRBC are first analyzed and matched to an existing pricing policy. Following which they grouped into these policies based on policy ranking. I have done a dedicated post on “vRBC Pricing Polices” for details, but as of now for the simplicity of this post lets understand how you can use & customize these pricing policies to calculate charge for each virtual machine.
Let’s pick up virtual machines categorization based vRealize Automation policy. Under Pricing go to Edit–>Edit Pricing
Under Private Cloud(vSphere) you will notice, that you can modify the groping criteria for vRealize Automation policy.
For vRA you can group your virtual machines either based on Compute/Storage reservation or per Blueprint (Applications) basis.
vRealize Automation Compute Grouping Options.
vRealize Automation Storage Grouping Options.
CPU & Memory daily Price.
vRBC calculates per vCPU and per GB of RAM price or rate card based on the running cost. I have discussed this in more details in my pricing policies post. But you can modify these daily prices based on your pricing strategy and recovery margin you want for your cloud services.
Prices can be modified for each Reservation or Blueprint in vRA as
- Per vCPU daily
- Per GB RAM daily
- Per GB Storage daily
You can also modify the additional charges which is by default only the Virtual Infrastructure and OS labor cost, but you may add any additional cost as well.
Let’s modify these prices as in the above example and verify if it is accurately reflected in the upfront Blueprint price in vRA which is supposed be deployed on this reservation.
You will notice that the CPU, Memory, Storage and Additional Prices are matching what we have just defined in our pricing policy for this vRA reservation.
Let’s also check some of the “Showback” reports in vRBC to see how Virtual machines prices/charges are calculated based on these pricing policies.
Go to Showback->Reports->Virtual Machines and you will notice that you can view and export a report for virtual machines Monthly Charge and breakdown of this charge based on their monthly uptime.
CPU Charge = vCPU daily Price *No of vCPU*Uptime
RAM Charge=RAM daily Price* Configured RAM(GB)*Uptime
Storage Charge=Storage daily Price*Configured Storage GB
VM Total Monthly Charge= CPU Charge + RAM Charge + Storage Charge + Additional Charge
VM Total Monthly Charge =1.97+28.17+1.24 +0.55=31.38
You may note that CPU and RAM charges are based on the uptime of the VM but storage and additional charges are just based on configuration and price
Like in this case as the monthly uptime is zero for a VM, therefore the CPU and Memory charges are also zero. “Total Monthly Charge” of the VM in this case is only the storage and additional charge.
If I need to put it together the “Total Monthly Charge” of the virtual machine will be calculated as follows.
In summary vRealize Business for Cloud not only let you know your accurate “Service Costing” but also assist you in defining your “Service Pricing” which enable you to run “IT-as-a-Service”. You can “Showback” to your business for their consumption in a Hybrid Cloud environment, the key steps involved in the process are .
- Private Cloud Expense Calculation: Defining all the 8 Cost drivers
- Define your Business Unit: Know who are your consumers and group their workloads
- Define your Pricing Policies: Create your own custom pricing policies based on the recovery margins you want for your services.
- Showback the Consumption to Business Units
vRealize Business for Cloud 7.3.1