Klaas Heek
Klaas Heek Cloud Solution Architect
15 September 2017

Automate your Azure compute business case


Mapping of your current virtual machines to Azure machines is a time-consuming task. Microsoft offers no API to retrieve machine sizes and prices in a single call. Resulting in endless copy and paste actions from the Azure price calculator to Excel and repetitive validation of the best option.

The ‘best option’ depends on a large number of factors: 

  • Is it a development, test, acceptance or production machine?
  • Is processor power more important than memory capacity?
  • Do you bring your own license?
  • Are license costs bound to the number of cores?
  • What availability figure (SLA) is required?
  • Etcetera.

In practice, the list of servers will vary over time. Not all Azure machine types are available in your Azure region and pricing depends on the Azure region. Servers will be phased out or transformed into platform or software services (PaaS, SaaS).

For better quality, actual & local prices and the consistent use of design principles (e.g. taking care of Azure limits) automation of the Azure compute business case is a must-have.


Our objective is to automate the mapping of virtual machines from the Current Mode of Automation (CMO) to the Future Mode of Operation (FMO). 

FMO = MapReduce(CMO, Requirements)

The tool supports the upload of a CMO.xlsx file with the current specifications and requirements and will output an FMO.xlsx file with the appropriate Azure machine types and price & size information.

As shown in the figure above:

  • The database server (DB01) retains the number of cores because the SQL license is core bound. 
  • The DevTest (CRMDB01) machine is mapped on the less expensive Azure basic tier.
  • The monitoring server (NAGIOS01) will be placed in a scalability set (2 machines needed) to match the required SLA of 99.95% uptime.

Matching Algorithm

As displayed in the figure below the tool can generate a list of alternatives per machine. The input was a memory optimized machine with 2 cores and 6GB of RAM. 

Price & Size

It is even possible to generate a list of all VM price&size information for you Azure Pay-as-you-Go, MSDN or CSP subscription.

On the backlog

I like to add IOPS-optimization, Azure managed disks and Azure backup pricing before publication of the tool (i.e. a Jupyter Notebook using the RateCard API and Azure ResourceManager API’s) on Github.


Sign up for the Solvinity Newsletter

Receive the latest news, blogs, articles and events, every quarter. Subscribe to our newsletter.

Lees ook


Can we help you?

Please contact us
Background Icon