Azure has announced a preview for proximity placement groups, in a bid to improve application performance by lowering network latency between virtual machines.
The feature is implemented as a logical grouping capability for Azure virtual machines. It lets customers assign VMs to a group, which the system then places in the same data center, thus raising proximity and lowering latency. Before, VMs could only be placed within an Azure region to achieve that, but with more and more data centers available in each region, the new grouping should yield better results.
According to Microsoft, the new feature should be considered in setups using “multi-tiered, IaaS-based deployments” with tiers deployed through multiple VMs, availability sets, or scale sets (for high availability for example).
If this sounds interesting to you, keep in mind that such a grouping is a deployment constraint. This could lead to allocation failures if you, for example, set up an elastic deployment and there aren’t enough machines available when an automatic extension is needed. Microsoft therefore recommends asking for all VMs at the same time. However, if you need to add resources later on, checking availability of regions or zones first might be a good idea.
Proximity placement groups can be created by, for example, adding the appropriate statement to an Azure Resource Manager template and including dependencies and properties that go along with that. Detailed tutorials on how to deploy to them via the Azure CLI or Powershell can be found in the documentation.