β Repository β π Compliance Engine β π CloudAware β π Azure β π SQL Managed Instance
π‘οΈ Azure SQL Managed Instance is underutilizedπ’
- Contextual name: π‘οΈ Managed Instance is underutilizedπ’
- ID:
/ce/ca/azure/sql-managed-instance/instance-underutilized
- Tags:
- π’ Policy with categories
- π’ Policy with type
- π’ Production policy
- Policy Type:
COMPLIANCE_POLICY
- Policy Categories:
COST
,PERFORMANCE
Logicβ
- π§ prod.logic.yamlπ’
Descriptionβ
Descriptionβ
This policy identifies Azure SQL Managed Instances that are underutilized based on their performance metrics over the past 30 days. An instance is considered underutilized if its average CPU utilization is below 20% and both its average disk read and write I/O are below 50 MB.
Rationaleβ
Running underutilized SQL Managed Instances results in unnecessary cloud expenditure. By identifying these instances, organizations can make informed decisions to rightsize resources, ensuring performance meets workload demands while minimizing costs.
Impactβ
It is essential to carefully analyze historical performance trends before resizing to avoid negatively impacting application performance.
Auditβ
This policy evaluates an Azure SQL Managed Instance based on its 30-day performance metrics.
The Managed Instance is marked as
INCOMPLIANT
if:
Monitor: Average CPU Percent, 30-Day
< 20%.and
Monitor: IO Read, MB, 30-Day
< 50 MB.and
Monitor: IO Written, MB, 30-Day
< 50 MB.A Managed Instance is marked as
INAPPLICABLE
if it is not currently Ready.... see more
Remediationβ
Remediationβ
Before performing any changes, review historical performance metrics to ensure the new configuration can handle periodic or seasonal peaks in workload.
Resize the SQL Managed Instanceβ
From Azure CLIβ
az sql mi update \
--resource-group {{resource-group}} \
--name {{managed-instance-name}} \
--storage {{max-size-in-GB}}
--capacity {{2}}
--edition {{GeneralPurpose | BusinessCritical}}
--family {{Gen4}}From PowerShellβ
Set-AzSqlInstance `
-ResourceGroupName "{{resource-group}}" `
-Name "{{managed-instance-name}}" `
-VCore {{new-vcore-count}} `
-StorageSizeInGB {{max-size-in-GB}} `
-Edition {{GeneralPurpose | BusinessCritical}} `
-ComputeGeneration {{Gen5}}
policy.yamlβ
Linked Framework Sectionsβ
Section | Sub Sections | Internal Rules | Policies | Flags | Compliance |
---|---|---|---|---|---|
πΌ Cloudaware Framework β πΌ Resource Right-Sizing | 15 | no data | |||
πΌ Cloudaware Framework β πΌ Workload Efficiency | 24 | no data |