Identify and remove unattached Google Compute Engine persistent disks to eliminate unnecessary cloud storage costs and optimize cloud resource management.
Why Unattached Disks Matter
Unattached disks are persistent storage volumes in Google Cloud that exist without being connected to any active compute instance. These orphaned disks typically accumulate through:
Instance migration projects
Diagnostic drive snapshots
Abandoned backup volumes
Incomplete instance deletion processes
When instances are deleted, Google Cloud does not automatically remove associated disks by default. This oversight can lead to continuous billing for unused storage resources.
Cost Implications and Savings Potential
Financial Impact
Average Cost Savings: Organizations can typically reduce cloud storage expenses by 15-25% by removing unattached disks
Hourly Billing: Unattached disks continue to incur charges even when not in use
Potential Annual Savings: A medium-sized enterprise might save $5,000-$15,000 annually by implementing this policy
Savings Example
Consider a scenario with 50 unattached disks:
Standard persistent disk: $0.04 per GB-month
Average disk size: 500 GB
Monthly unnecessary cost: $1,000
Annual unnecessary cost: $12,000
Implementation Guide
Infrastructure-as-Code Remediation Example (Terraform)
resource "google_compute_disk" "example" {
# Only create disks currently in use
name = "attached-disk"
type = "pd-standard"
zone = "us-central1-a"
# Add lifecycle rules to manage disk attachment
lifecycle {
prevent_destroy = false
}
}
Manual Removal Steps
Navigate to Google Cloud Console
Open Compute Engine > Disks
Filter for unattached disks
Select unnecessary disks
Click “Delete” to remove
Best Practices
Implement regular disk audits
Create automated cleanup scripts
Use cloud cost management tools like Infracost to proactively identify unattached resources
Establish clear tagging and resource lifecycle policies
Recommended Tools
Infracost: Provides automated scanning and cost optimization recommendations
Google Cloud CLI: Supports bulk disk management
Custom Scripts: Develop organization-specific cleanup automation
Real-World Scenarios
Scenario 1: Development Environment
A software development team migrates infrastructure between environments, leaving behind 30 unattached disks. By removing these, they save approximately $600 monthly.
Scenario 2: Research Project Cleanup
After completing a research project, computational resources were terminated but associated disks remained. Removing 15 unattached disks saved $300 per month.
Potential Considerations
Risks and Caveats
Ensure no critical data exists on unattached disks before deletion
Verify no pending restore or backup processes depend on these volumes
Maintain comprehensive documentation of disk removal activities
When to Be Cautious
During active migration processes
When supporting long-term archival storage
In environments with complex, interconnected systems
Frequently Asked Questions (FAQs)
How often should I check for unattached disks?
Recommend monthly reviews or implementing automated weekly scans.
Can I automate disk removal?
Yes, use Google Cloud Functions or custom scripts to periodically identify and remove unattached disks.
What’s the difference between unattached and unused disks?
Unattached disks have no compute instance connection, while unused disks might still be technically linked to an instance but not actively used.
How does Infracost help with this process?
Infracost provides automated scanning of cloud resources, identifying unattached disks and offering cost-saving recommendations during infrastructure planning and review.
Are there risks in automatic disk deletion?
Always implement safeguards, such as backup checks and approval workflows, before bulk deletion.
Create Free Account
This policy is supported in Infracost and available in the free trial. Sign up today and scan your code using our entire library of FinOps policies.