Which Azure VM type to choose?

Mike McKeown has a nice summary of the Azure VM types -
A series – Normal generic VMs
F series – Eventually replace generic A-series
D/DS series  – “DISK” with faster caching
G/GS series – “GODZILLA” with very large RAM
N series – “NVIDIA” (Graphics units)
H series – “HPC” Compute Intensive with fast Infiniband RDMA
L/LS series -“LOW LATENCY” storage optimized

The official documentation has another view of Azure sizes -
Type Sizes Description
General purpose DSv2, Dv2, DS, D, Av2, A0-7 Balanced CPU-to-memory ratio. Ideal for testing and development, small to medium databases, and low to medium traffic web servers.
Compute optimized Fs, F High CPU-to-memory ratio. Good for medium traffic web servers, network appliances, batch processes, and application servers.
Memory optimized GS, G, DSv2, DS High memory-to-core ratio. Great for relational database servers, medium to large caches, and in-memory analytics.
Storage optimized Ls High disk throughput and IO. Ideal for Big Data, SQL, and NoSQL databases.
GPU NV, NC Specialized virtual machines targeted for heavy graphic rendering and video editing. Available with single or multiple GPUs.
High performance compute H, A8-11 Fastest and most powerful CPU virtual machines with optional high-throughput network interfaces (RDMA).

Visualizing the upper & lower limits of number of disks, IOPS, Memory & CPU core count supported by each VM type through a graph is a nice way of comparing the options -
After you've identified the right VM, it is good to confirm that it is available in the Azure region where you need itThe following 2 commands can fetch the available VM sizes for a specified region -
Get-AzureRmLocation | Where-Object {$_.Location -eq "westeurope"} | Get-AzureRmVMSize
Get-AzureRmVMSize -Location "West Europe"

Comments