Azure MySQL Autoscale IOPS - Overview¶
IOPS stands for Input/Output Operations Per Second.
List of References (Click to expand)
Table of Content (Click to expand)
When Autoscale IOPS is enabled for Azure Database for MySQL Flexible Server, IOPS automatically scale up and down based on workload demand:
- During
high demand, the systemincreases IOPSto maintain performance. - During
low demand, itscales downto reduce resource usage and cost.
How to provision¶
- Go to the Azure Portal
- Search for
Azure Database for MySQL Flexible Serverin the search bar. - Click
Create. - Choose your subscription, resource group, and server name.
- Select the region, MySQL version, and workload type (e.g., Development, Production).
How to enable IOPS (manual approach)¶
- Go to the Azure Portal
- Select the server you want to configure.
- In the left-hand menu, go to
Settings > Compute + Storage. - In the IOPS section, select the option
Autoscale IOPS - Click
Saveto apply the changes.
How to enable IOPS (script)¶
Automate Autoscale IOPS using Python and the Azure REST API across resource groups or an entire subscription. Autoscale IOPS is supported only on the General Purpose and Business Critical tiers and cannot currently be enabled through Azure CLI or PowerShell.
How to Monitor IOPS Scaling¶
Use the metrics available in Azure Monitor to determine when IOPS scale up or down.
1. Use Azure Monitor Metrics¶
- Go to your server in the Azure portal.
- Open
Monitoring, then selectMetrics.
- Choose the
Storage IOmetric in both percentage and count formats.
- Set a
custom time rangeto observe trends over time.
| Storage IO Count | Storage IO Percent |
|---|---|
2. Look for Scaling Patterns¶
- Sudden increases or decreases that correlate with workload changes indicate that Autoscale IOPS adjusted the performance level.
- Monitor
IO utilization percentageto see how close the server is to its current IOPS limit.
3. Enable Alerts (Optional)¶
Configure Azure Monitor alerts to notify you when IOPS usage crosses selected thresholds.