Volumes
Updated March 25, 2025
Volumes are persistent storage devices that can be attached to your instances. They provide reliable, scalable storage for your data and applications.
Volume Types
SSD Volumes
- Performance: High I/O operations per second (IOPS)
- Use Cases:
- Databases
- High-traffic websites
- Applications requiring fast data access
- Cost: Higher per GB than HDD
- Example: 100GB SSD for a MySQL database
HDD Volumes
- Performance: Standard I/O operations
- Use Cases:
- File storage
- Backups
- Archive data
- Cost: Lower per GB than SSD
- Example: 500GB HDD for file storage
Features
Persistent Storage
- Data remains intact even if instances are stopped or deleted
- Can be attached to different instances
- Supports multiple attachments (read-only)
Volume Sizing
- Minimum size: 1GB
- Maximum size: Based on your quota
- Can be resized (increased only)
# Example: Creating a volume
Size: 100GB
Type: SSD
Purpose: Database storage
Boot Volumes
- Can be used as system disk
- Supports multiple operating systems
- Can be cloned for backup
# Example: Boot volume configuration
Size: 40GB
Type: SSD
OS: Ubuntu 22.04 LTS
Snapshot Support
- Point-in-time backups
- Can be used to create new volumes
- Supports incremental backups
# Example: Creating a snapshot
Source Volume: 100GB SSD
Snapshot Size: 10GB (incremental)
Retention: 7 days
Volume States
Operational States
-
AVAILABLE: Ready to be attached
- Tip: Check volume health before attaching
- Warning: May indicate previous detachment issues
-
IN-USE: Attached to an instance
- Tip: Monitor I/O performance
- Warning: Cannot be deleted while attached
-
CREATING: Volume is being created
- Tip: Wait for completion before use
- Warning: Creation may take several minutes
-
DELETING: Volume is being deleted
- Tip: Ensure data is backed up
- Warning: Deletion cannot be cancelled
-
ERROR: Volume is in error state
- Tip: Check error logs
- Warning: May require support intervention
Management
Creating Volumes
- Choose volume type (SSD/HDD)
- Specify size
- Select availability zone
- Configure encryption
- Create volume
Attaching Volumes
# Example: Attaching a volume
Volume: 100GB SSD
Instance: web-server-1
Mount Point: /data
Detaching Volumes
# Example: Detaching a volume
Volume: backup-volume
Instance: backup-server
Action: Detach
Volume Operations
- Create new volumes
- Attach to instances
- Detach from instances
- Delete volumes
- Resize volumes
- Create snapshots
- Monitor usage
Best Practices
Storage Planning
-
Right-sizing
- Tip: Start with estimated size + 20% buffer
- Warning: Resizing can only increase volume size
-
Type Selection
- Tip: Use SSD for frequently accessed data
- Warning: HDD may cause performance bottlenecks
Data Protection
-
Backup Strategy
- Tip: Regular snapshots
- Warning: Snapshots count towards quota
-
Encryption
- Tip: Enable encryption for sensitive data
- Warning: Cannot be disabled after enabling
Performance
-
I/O Optimization
- Tip: Monitor I/O patterns
- Warning: High I/O can impact performance
-
Space Management
- Tip: Regular cleanup of unused data
- Warning: Full volumes can cause issues
Common Issues and Solutions
Volume Won't Attach
- Check instance status
- Verify volume state
- Review attachment limits
Performance Problems
- Monitor I/O metrics
- Check for bottlenecks
- Review volume type
Space Issues
- Monitor usage patterns
- Implement cleanup routines
- Set up alerts
Cost Management
Storage Costs
- Per GB pricing
- IOPS charges
- Snapshot storage
Optimization Tips
-
Right-sizing
- Regular usage review
- Clean up unused volumes
- Archive old data
-
Type Selection
- Match type to usage
- Consider cost vs. performance
- Monitor usage patterns
Getting Help
- Documentation: Detailed guides
- Support: Technical assistance
- Community: User forums
- Status Page: Service status