Skip to content

Commit 4bd355a

Browse files
authored
Merge pull request #108 from MicrosoftCloudEssentials-LearningHub/enablingAutoscaleIOPSmySQL
+ enabling Autoscale IOPS MySQL
2 parents 3ff30c3 + 5310f92 commit 4bd355a

1 file changed

Lines changed: 83 additions & 0 deletions

File tree

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# MySQL: Enabling Autoscale IOPS - Overview
2+
3+
Costa Rica
4+
5+
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
6+
[brown9804](https://github.com/brown9804)
7+
8+
Last updated: 2025-05-09
9+
10+
----------
11+
12+
<details>
13+
<summary><b>List of References</b> (Click to expand)</summary>
14+
15+
- [Storage IOPS in Azure Database for MySQL - Flexible Server](https://learn.microsoft.com/en-us/azure/mysql/flexible-server/concepts-storage-iops#how-do-i-know-that-iops-have-scaled-up-and-scaled-down-when-the-server-is-using-the-autoscale-iops-feature-can-i-monitor-iops-usage-for-my-server)
16+
- [Azure Database for MySQL - Flexible Server service tiers](https://learn.microsoft.com/en-us/azure/mysql/flexible-server/concepts-service-tiers-storage#service-tiers-size-and-server-types)
17+
- [Autoscale IOPS for Azure Database for MySQL - Flexible Server - General Availability](https://techcommunity.microsoft.com/blog/adformysql/autoscale-iops-for-azure-database-for-mysql---flexible-server---general-availabi/3884602)
18+
19+
</details>
20+
21+
22+
<details>
23+
<summary><b>Table of Content</b> (Click to expand)</summary>
24+
25+
- [How to provision](#how-to-provision)
26+
- [How to enable IOPS](#how-to-enable-iops)
27+
- [How to Monitor IOPS Scaling](#how-to-monitor-iops-scaling)
28+
29+
</details>
30+
31+
32+
> When Autoscale IOPS is enabled for Azure Database for MySQL (Flexible Server), the IOPS (Input/Output Operations Per Second) automatically scale both up and down based on your workload demands. <br/>
33+
> - During `high demand`, the system `increases IOPS` to maintain performance.
34+
> - During `low demand`, it `scales down` to reduce resource usage and cost.
35+
36+
## How to provision
37+
38+
1. Go to the [Azure Portal](https://portal.azure.com/)
39+
2. Search for `Azure Database for MySQL Flexible Server` in the search bar.
40+
3. Click `Create`.
41+
4. Choose your subscription, resource group, and server name.
42+
5. Select the region, MySQL version, and workload type (e.g., Development, Production).
43+
44+
https://github.com/user-attachments/assets/5b500aea-538d-4ddb-88b6-e0717a2d0fbe
45+
46+
## How to enable IOPS
47+
48+
1. Go to the [Azure Portal](https://portal.azure.com/)
49+
2. Select the server you want to configure.
50+
3. In the left-hand menu, go to `Settings > Compute + Storage.`
51+
4. In the IOPS section, select the option `Autoscale IOPS`
52+
5. Click `Save` to apply the changes.
53+
54+
https://github.com/user-attachments/assets/9e2983b3-3839-4ad3-8ab8-ccbb698f3228
55+
56+
## How to Monitor IOPS Scaling
57+
58+
> How I know if the IOPS have scaled up or down when the server's using the autoscale IOPS feature? You can use the `metrics available in Azure Monitor`.
59+
60+
1. **Use Azure Monitor Metrics**:
61+
- Go to your server in the [Azure portal](https://portal.azure.com/)
62+
- Go to the `Monitoring` section and select `Metrics`.
63+
64+
<img width="550" alt="image" src="https://github.com/user-attachments/assets/f08afb04-e271-4ac3-8594-e3e98a9bfd2e" />
65+
66+
- Choose the ` Storage IO` metric (both percent and count).
67+
68+
<img width="550" alt="image" src="https://github.com/user-attachments/assets/ca585f55-e943-413d-9477-f26c099a1e66" />
69+
70+
- Set a `custom time range` to observe trends over time.
71+
72+
2. **Look for Scaling Patterns**:
73+
- If you see `sudden increases or decreases` in the IOPS metric that correlate with workload changes, this indicates that autoscale IOPS has adjusted the performance level.
74+
- You can also monitor `IO utilization percentage` to see how close your server is to its current IOPS limit.
75+
3. **Enable Alerts (Optional)**: You can set up `alerts` in Azure Monitor to notify you when IOPS usage crosses certain thresholds, which can help you track scaling events in real time.
76+
77+
https://github.com/user-attachments/assets/19b96128-e37f-40b4-8e23-8a5384bc6686
78+
79+
<div align="center">
80+
<h3 style="color: #4CAF50;">Total Visitors</h3>
81+
<img src="https://profile-counter.glitch.me/brown9804/count.svg" alt="Visitor Count" style="border: 2px solid #4CAF50; border-radius: 5px; padding: 5px;"/>
82+
</div>
83+

0 commit comments

Comments
 (0)