Reserved Instance Billing Tracking – Part 3

In continuation to part 1 and part 2, where I talked how to estimate for the Reserved Instances (RI) and how to figure out the kind of savings you can get with it. Having understood this, let’s now understand a bit on how all this appears in the billing file. If you are an enterprise customer, you can login to and download your billing/usage report or you could access details from Azure portal on a subscription basis. For now, I will assume that you are familiar with the billing/usage file in general. Refer to the image below.

RI Billing File Extract

RI Billing File Extract

The first four rows with Product ‘Reservation-Base VM’ are for the actual VM instances that are operating under the RI model. The last line with Product ‘Virtual Machines Reservation-Windows Svr (1 Core)’ is for the Windows Server license that is applied to the VM. Important point to note is that the Windows Server license is core (or virtual CPU) based. The Meter ID ‘f65a06cf-c9c3-47a2-8104-f17a8542215a’ is associated with this particular Windows Server license. For details on meter names and meter IDs associated with Windows Server license, check here.

MS had undertaken an exercise to revise Meter Categories and Subs categories and this has impacted how RI data appears in billing file as well. I would say that the individual billing rows/items have become cleaner with the new convention.

The product was called ‘VM RI-Compute’ for a few days and then reverted to ‘Reservation-Base VM’. The Meter category is ‘Virtual Machines’. Meter sub category is set to ‘Reservation-Base VM’ and meter name as ‘Compute Hours’.

In case of license, the product name is now set to something like – ‘Windows Server – 1 vCPU VM License’. The 1 Core, 2 Core etc. is now 1 vCPU, 2 vCPU respectively. The Meter category is ‘Virtual Machines Licenses’. The meter sub category is ‘Windows Server’ and meter name is set to ‘1 vCPU VM License’ (as per the # vCPUs). In essence the meter sub category and meter name, together maps to the Product name.

Clearly, it is easier to now filter on Meter category, to find out details about your VMs and your VM related Windows Server licenses.

In case of BYOL, the line items related to Windows server license is not present in the billing file. All items related to BYOL can be identified by looking at ServiceInfo2 field of billing file (see image below)



Note that the ServiceType column that are you seeing in this image, isn’t a field as such in the billing file, but is part of the AdditionalInfo field, which is a set of key value pairs, one of them being ServiceType (I have extracted it out for easier manipulation) This tells us the kind of VM we are using, which helps find the # cores it has and thus find out what Windows Server license will apply. This will help validate the resource rate against your organization’s price list as well. If you are using BYOL, using the same ServiceType field, you can find the Windows Server cost that would have applied had you not used BYOL, and that can then be used to find your net savings. Sample VM type to their core mapping below.

VM Type to Core mapping

VM Type to Core mapping

The next obvious question would be how would you know to which VM is the Windows Server License applied? For this, refer to the ‘AdditionalInfo’ data. It would be something like below.

AdditionaIInfo field values

AdditionaIInfo field values

The values of VMName, ReservationOrderId, ReservationId and ConsumptionMeter would match for the VM billing row and the Windows Server license billing row, indicating that they are for the same VM. If you find a VM, but no matching Windows Server license row, then it would mean it is either a non-Windows VM i.e. could be Red Hat or it has BYOL applied. In either case, ServiceInfo2 field value will help you find these details.

An RI VM with or without Windows Server license applied to it, will always have its resource rate and cost set to $ 0 (in whatever is your currency), as it has all been paid up for, upfront. You would see a $ value in resource rate and cost only if there is any additional cost to be charged on that VM, because of Windows Server or SQL Server or any other such licenses.

Any VM that doesn’t has ‘ReservationOrderId’ kind of key-value pair in AdditionalInfo is not an RI VM, and is a regular on-Demand VM. In case of on-demand VMs, the resource rate used is different for Windows Server or BYOL and no more correlation is required.

Hope this 3 part series of blogs helped you get a sense of how to plan for purchase of RI and having purchased, how to keep track of it in the billing file. If there any queries, do post a comment here and I will be glad to get back.

[updated 20 Nov 2018]

In conclusion I must say that a simple thumb rule for planning for RI will be will the VM be running 24 x 7 or not. If not, chances are on-demand pricing or AHUB or power scheduling itself may give benefits matching with RI. Also will the VM be in use for 3 year i.e. because RI for 3 years is cheaper than that of 1 year. These points are just to get you started. A detailed analysis is definitely required to make the right decision.

By |November 19th, 2018|Azure, Reserved Instances|

Leave A Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.