How bursting disk works on Azure?

Flavio Taguada 181 Reputation points
2020-06-04T22:04:19.23+00:00

I was reading this article https://learn.microsoft.com/en-us/azure/virtual-machines/linux/disk-bursting and it is possible to burst a disk according to how disk is being used. Basically there are 3 states.

Accruing – The resource’s IO traffic is using less than the performance target. Accumulating bursting credits for IOPS and MB/s are done separate from one another. Your resource can be accruing IOPS credits and spending MB/s credits or vice versa.
Bursting – The resource’s traffic is using more than the performance target. The burst traffic will independently consume credits from IOPS or bandwidth.
Constant – The resource’s traffic is exactly at the performance target.

As you can see below, my limit IOPS for this disk is 500 IOPS, but I can have until 3500 IOPS.

Provisioned IOPS 500
Provisioned throughput (MB/s) 100
Max bursting IOPS 3500
Max bursting throughput (MB/s) 170
Max bursting duration (minutes) 30

In my real scenario this is my IOPS for 24 hours, VM is turned off during certain period of time, but there are some spikes more than 500 IOPS. Some of user who is using this VM, complains that some times it "freeze" like when your disk is having a over usage of IOPS, application like Word takes to much time to be opened. Nothing is done and everything comes to work normally.

The only thing that I realized is that, at the same time that user complais about slowness, there is a spikes of IOPS usage, but I quite confuse about how bursting disk works, this spikes took around 20 minutes maximum, documentation says that I can have until 30 minutes of bursting.

Can this spikes of IOPS affect my VM?

9181-disk.png

Azure Virtual Machines
Azure Virtual Machines
An Azure service that is used to provision Windows and Linux virtual machines.
7,977 questions
Azure Disk Storage
Azure Disk Storage
A high-performance, durable block storage designed to be used with Azure Virtual Machines and Azure VMware Solution.
642 questions
0 comments No comments
{count} votes

Accepted answer
  1. Flavio Taguada 181 Reputation points
    2020-06-08T15:16:50.813+00:00

    I was working on it and finally understood how it works (hope so). According to this article https://learn.microsoft.com/en-us/azure/virtual-machines/linux/disk-bursting, Microsoft says that we can have until 30 minutes of bursting, actually my test gave me almost 1 hour.

    It was tested it using iometer (http://www.iometer.org/) and instruction into this article https://learn.microsoft.com/en-us/azure/virtual-machines/windows/disks-benchmarks.

    Basically when the disk was having low IOPS, after executing iometer to get the most performance, that was possible to bursting it around 1 hour. As you can see on the end of chart it was limited to 500 IOPS

    9351-disk1.png

    Now I kept my disk around 50~450 IOPS, and started iometer again, the behavior was almost the same. It was possible to have a bursting during a period of time (30 minutes) and after that it was limited to 500 IOPS again.

    9278-disk2.png

    My conclusion about it, even when you are using almost the IOPS limits you always accumulate credits to bursting your disk, the low IOPS usage you have the high credit you accumulate. So, in my case that spikes of IOPS was affecting my disk because my bursting credits was always low. Solution was increase the disk to increase IOPS limits. Specially when you have high IOPS usage you should consider NOT use bursting, try to keep your IOPS less than your limit to keep all things healthy. Another solution is to split out more than one disk to have more IOPS, two P10 disk you can have 1000 IOPS.

    1 person found this answer helpful.
    0 comments No comments

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.