Optimize your Azure Costs: Virtual Machines


Azure expenditure keeps rising!
Are you getting the most out of the platform?
How can you optimize current and future Virtual Machine expenses?
These questions and more will be covered in this MTT session:
Optimize your Azure Costs: Virtual Machines.

When: Time: 25 Jan 2022, 2pm Sydney time (AEDT)

Registration Link: https://MTT.eventbuilder.com/event/55060

Services Hub Direct URL: https://mslearningcampus.com/Class/435850    



This session will be presented by Benny Zhang, our Customer Engineer covering the Azure Infra-space for multiple years. He will focus on IaaS scenarios where Azure Virtual Machines (VM’s) are deployed as they are generally the most costly resource in your Azure setup. He will advise on governance, cost optimization and share tips and tricks for refining your VM costs by using waste-elimination, the use of hybrid-benefit and a deep-dive in reservations using relatable use scenarios. Come prepared to ask Benny regarding cost saving strategies in the Infra-space.

1 Reply


Here are the questions & answers raised during the session:


1. How does reservation payments work if you have an EA?  Is it paid at renewal of the EA, or separately?

Reservations are billed at the EA scope, however, they are not a part of your annual renewal. They will be billed with your Azure resources in your monthly bill. They are simply a separate line-item. You can choose to pay monthly, or up-front. When you pay up-front, the entire reservation will be charged to your bill on the invoice following the time you purchase it.

2. What if we want to discontinue after 2 years when we have purchased it for 3 years?

We have exchange and cancellation policies published here:


3. Is it recommended to purchase Reservations + apply stop/start to the same VMs?

In most business scenarios this would not be recommended, as you will be paying the same to run that VM 24/7 or only on certain hours. Unless your reservation can be applied to other VMs running overnight that aren't already reserved, then that wouldn't be necessary. Personally, I like to separate VMs targeted for Reservations (24/7) and VMs targeted for certain operating hours (Apply automated start/stop).


4. Can you reserve spot instances?

No, this is not possible.


5. What is the Instance Size Flexibility (ISF) Ratio?

The ratio compares the relative footprint for each VM size in that instance size flexibility group. It can be used to calculate how the reservation discount applies to the VMs you have running.

See here for a full explanation and examples:


6. If your VM fleet hasn't changed in years, is there any point in doing this level of analysis?  Why not just reserve them all?

If your VM fleet has been static for some time, you can choose to reserve them all as per the sizes they currently are. It would cost the exact same. If you choose to leverage Instance Size Flexibility, you will have fewer reservations to manage and provides additional flexibility for resizing in the future etc.


7. If we were to purchase Reservations with Instance Size Flexibility and pool our VMs into these T-shirt sizes, how do we distribute the pool to the right VM subfamily to ensure we do not end up with performance issues.

You do not need to do any manual configuration/distribution of the Reservation after you have purchased it. Azure automatically applies the Reservation to all sizes within the family based on the ISF ratios. You just need to ensure that you have appropriately 'right-sized' your VMs to an appropriate size and family. You can use tools such as Azure Advisor, Azure Monitor VM Insights, VM Metrics, and Azure Migrate (for newly migrated VMs) to ensure that you do not run into any performance issues.


8. Once we set this up, different teams may spin up new VMs. Those may not include in Start/Stop process or reservations. How to make this sustainable without keeping eye on every time ?

There should be some governance around this. For example, using Azure Policy, we can:
1) Enforce that all VM type resources have a tag e.g., "Schedule': '7-7', '24/7', 'on-demand', etc... This will ensure that they are included in any start/stop processes if appropriate.
2) Enforce specific SKUs for VMs, so that if new VMs are spun up, they must fall under the families of VMs that were reserved.
Yes, in some cases, new VMs may not be reserved when they perhaps should be if you have only purchased enough reservations for existing VMs. This is why it is good to monitor new VMs in case they can be Reserved. Note you can also regularly review Reservation utilisation as well. This can be monitored in 'Reservations' in the Azure portal.

If any additional questions, feel free to reach out to your CSAM or post your questions here. 
Thanks you all who joined this session.