Azure VM Tier’s

 

Basic and Standard pricing tier are about the CPU power, IOPS, … these virtual machine breaks down as followed:

  • Basic pricing tier: optimized for dev/test, these virtual machines have capabilities similar to the standard tier. However, they do not support the Azure load balancer or auto-scaling, IOPS is slower than for Standard,
  • Standard Pricing tier: provide better CPU performance and IOPS than basic tier.

Low priority virtual machines is an Azure Batch concept (Batch computing at a fraction of the price). Low priority virtual machines get allocated from the surplus of compute capacity in each region and are offered at a substantially reduced price. This comes with the understanding that there may not be capacity available to satisfy your request. In some rare cases, Azure may have to take some of this capacity back to satisfy other compute allocation requests.

Low priority virtual machines are well suited for batch activities like media processing / encoding

If you are looking at deploying an A-Series virtual machine in Azure then there are two tiers to choose from:

  • Basic
  • Standard

There are a few differences between the two tiers.

Load Balancing

You can load balance Standard tier virtual machines for free. This includes external and internal load balancing. Note that this is port-level load balancing, not application layer. If you want to do load balancing at the application layer then look in the Azure marketplace for some appliances. There you’ll find well-known names such as Kemp, Citrix, and more.

There is no load balancing with Basic tier VMs.

Auto-Scaling

Say a business needs to handle unpredictable peak capacity, without human effort or lost business opportunities. This might be a few times a day or every few weeks. How do they do it? The old way was to deploy lots of machines, load balance them, and eat the cost when there was no peak business … no seriously … they deployed enough for normal demand and lost business during periods of peak demand. Auto-scaling says:

  • Deploy the Standard tier VMs you need to handle peak demand;
  • Power up VMs based on demand;
  • Power down VMs when demand drops;
  • And it’s all automatic using rules you define;

VMs are billed based on storage consumed (very cheap) and hours running. So those VMs that aren’t running incur very little cost, and you only generate more costs when you are generating more business to absorb those costs.

There is no auto-scaling with Basic tier VMs.

IOPS

A virtual machine can have 1 or more data disks, depending on the spec of the VM. Basic tier VMs offer a max IOPS of 300 per data disk. Standard tier VMs offer a max IOPS of 500 per data disk. If a VM has more than one data disk then you can aggregate the IOPS potential of each data disk of that VM by mirroring/striping the disks in the guest OS.

Higher Specs

The highest spec Basic A-Series VM is the Basic A4 with 8 vCPUs (AMD processor on the physical host), 14 GB RAM, and up to 16 data disks. Basic VMs can only have 1 vNIC.

Standard A-Series VMs include similar and higher specs. There are also some higher spec Standard A-Series that offer Xeon processors on the host, a lot more RAM, and even an extra Infiniband (RDMA) 40 Gbps NIC.

Examples

I need a pair of domain controllers for a mid-sized business. I’ll probably opt for Basic tier VMs, such as the Basic A2, because I can’t use load balancing or auto-scaling with domain controllers. I don’t need much IOPS for the data disk (where SYSVOL, etc will be stored) and DC’s have a relatively light workload.

What if I want an application that has no software-based load balancing and will need somewhere between 2 and 10 VMs depending on demand? I need load balancing from the Azure fabric and it sounds like I’ll need auto-scaling too. So I’ll opt for a Standard A-Series VM.