How to choose an Azure Virtual Machine
By Alex Bennett, Firebrand Training
Microsoft offers a wide range of Azure Virtual Machines (VMs) to choose from – giving you the ability to quickly develop, test, run applications and extend your data centre. But which one fits your demands? Joining us for this introduction to Azure Virtual Machines is Mike Brown, Lead Azure Instructor at Firebrand Training.
Migrating to the cloud can be daunting, especially with hundreds of VM options to choose from (virtual machines on Azure are categorised into types, families and sizes). In this article, we’ll take a look at how VMs differ in terms of power, price and functionality.
Virtual Machine Types
Each VM type is built to run a different workload. For example, the GPU type VM is designed for heavy graphics rendering and video editing workloads. Alternatively, the High Performance Compute VM has the fastest, most-powerful CPU with optional high-throughput network interfaces (RDMA) – ideal for running intensive Big Data applications.
Currently, Microsoft offers six virtual machine types:
- General Purpose – Balanced CPU-to-memory ratio
- Compute Optimised – High CPU-to-memory ratio
- Memory Optimised – High memory-to-CPU ratio
- Storage Optimised – High disk throughput and IO
- GPU – Specialised virtual machines for heavy graphics rendering and video editing
- High Performance Compute – Fastest, most powerful CPU with optional high-throughput network interfaces (RDMA)
Choosing the right type of VM is as simple as matching your workload against the type of VM designed to run that workload.
- Example 1: If you’re in a testing/development phase, run low traffic web servers or host a small-to-medium database, the General Purpose VM Type would be a good choice.
- Example 2: If you are deploying a memory-intensive relational database or in-memory analytics, the Memory Optimised VM Type is your best option.
You should be able to find a VM type that suits the workload you want to run, but if you can’t, take a look at the Azure Marketplace. Here you’ll find niche virtual machine images produced by Microsoft-approved third-parties.
Items sold here go through a heavy vetting process; every VM is still running Azure, but these images have been created by a third party to fulfil a need not provided by the stock Azure VMs.
Virtual Machine Sizes & Families
Each VM type is available in a number of different families and sizes, identified respectively by a letter and number, like A0, A1, A0, A1, D2s_v3, NV24, or B1.
Each size has a different number of CPUs, amount of memory and supports differing numbers of disks. Some VM sizes will use HDD disks, others will use SSD disks.
There are dozens of VM sizes and family variations to choose from. If you’re unsure, a number of calculators and estimators are available to give you an idea of what kind of VM to go for.
If you’re moving a SQL Database to Azure the Azure SQL Database DTU Calculator can help give you an idea of the size of Azure SQL database you will need in the cloud.
To simplify the cost-estimation process, Microsoft has also created the Azure (Iaas) Cost Estimator Tool. This tool is designed to run on-premise against your existing machines, giving you an idea of what you’ll need when you migrate to Azure.
The newest and most accurate tool is the Azure Pricing calculator. Just enter your figures to find out how many VMs and in what sizes you’ll need to run your workloads in Azure.
It can become confusing comparing all the available types and sizes of VMs so Microsoft has introduced the concept of Azure Compute Units (ACU). ACUs provide you with a method for comparing compute performance across Azure VMs.
Microsoft has also introduced VM sizes for specialised workloads. The NC and NV sizes are GPU-enabled instances using NVIDIA’s GPU cards. If your workload requires remote virtualisation, streaming, gaming, encoding and VDI scenarios, then the NC and NV sizes are a good choice for you.
The newest VM line, the B-Series Burstable is currently available to preview. The B series VM family allows you to choose a VM size that gives a base level of performance with the ability to burst CPU performance up to 100%.
The B series is ideal for workloads that do not require the full performance of the CPU all the time. This is perfect if you run a web server that is idle most of the time but is very busy for part of the day. During idle periods the VM builds up ‘credit’ in a bank – this credit can then be used during busy periods. This VM size is designed to be cost-effective, while giving performance when it is needed.
And for a closer look at every VM size, take a look at Microsoft’s comprehensive documentation.
How to choose your VM Size and family
When it comes to choosing your VM size and family, it pays to start small and grow big. It’s possible to start off with a small, inexpensive virtual machine and then, as you need more power, change the size and even type of VM to something more powerful.
By starting small and using only what you need, you’ll save money without limiting your performance in the future. Plus, upgrading or downgrading your VM can be done entirely through the Azure console.
Virtual Machine Pricing
Prices can range from £11.09-per-month for an A0 VM (used mainly to trial or experiment with Azure) to £3330.39-per-month for a NV24 VM (the most-powerful available, used for Big Data and advanced graphics rendering). Azure prices can vary across regions; the prices listed above are estimates based on the UK South region.
As VMs are priced for usage by the hour or minute, you’ll be able to save money by bringing them online only when needed and taking them offline when not in use.
Learn more about Azure VMs
Microsoft’s Azure certifications are an excellent way to build and prove your knowledge of Virtual Machines on Azure. Consider studying for the Implementing Microsoft Azure Infrastructure Solutions certification, which covers the creation, management and deployment of VMs.
Training providers, like Firebrand, also run purpose-built Azure training courses that cover the skills not included on Microsoft’s curriculum.
The Azure Academy: Infrastructure and Networking covers the latest VM types and families as well as how to choose the best VM for a workload. This is not a certification course – instead, you’ll get hands-on knowledge of the latest Azure features, before they’re integrated with the official MOC (Microsoft Official Curriculum).