Skip to main content

⭐ Repository β†’ πŸ“ Compliance Engine β†’ πŸ“ CloudAware β†’ πŸ“ Azure β†’ πŸ“ PostgreSQL Database

πŸ›‘οΈ Azure PostgreSQL Server is Idle🟒

Logic​

Description​

Open File

Description​

This policy identifies Azure PostgreSQL Servers that are potentially idle based on their performance metrics over the past 30 days. Idle servers are often provisioned at a higher tier than required, resulting in unnecessary cloud costs. A server is flagged as idle if its average CPU over the last 30 days is less than 5% and I/O utilization is 0%.

Rationale​

Over-provisioned servers increase expenses without delivering corresponding benefits. By identifying and decommissioning idle PostgreSQL servers helps reduce expenses and improve overall resource efficiency.

Impact​

Carefully review to confirm that the new configuration will accommodate peak demand. Note that resizing a server triggers a brief period of downtime while the change is applied.

Audit​

This policy evaluates an Azure Azure PostgreSQL Server based on its 30-day performance metrics.

The Server is marked as INCOMPLIANT if:

  • Monitor: CPU Percent, 30-Day < 5%.

    and Monitor: IO Consumption Percent, 30-Day = 0%.

A Server is marked as INAPPLICABLE if it is not currently Ready.

... see more

Remediation​

Open File

Remediation​

Considerations​

  • Confirm with application owners that the server is no longer required or can be safely resized.
  • Ensure any critical data is backed up before deletion or resizing.
  • Deleting or resizing a server may trigger a brief period of downtime.

Resize the PostgreSQL Server​

From Azure CLI​
az postgres server update \
--name {{server-name}} \
--resource-group {{resource-group-name}} \
--sku-name {{new-sku-name}}

Monitor CPU, memory, and I/O metrics after resizing.

Delete the PostgreSQL Server​

Create a Backup​
From Azure CLI​
az postgres server backup create \
--name {{server-name}} \
--resource-group {{resource-group-name}} \
--backup-name {{backup-name}}
Delete the PostgreSQL Server​

This operation is irreversible. Ensure backups are taken if data is needed.

From Azure CLI​
az postgres server delete \
--name {{server-name}} \
--resource-group {{resource-group-name}} \
--yes

policy.yaml​

Open File

Linked Framework Sections​

SectionSub SectionsInternal RulesPoliciesFlagsCompliance
πŸ’Ό Cloudaware Framework β†’ πŸ’Ό Waste Reduction25no data
πŸ’Ό Cloudaware Framework β†’ πŸ’Ό Workload Efficiency24no data