Storage
Manage volumes, snapshots, and backups for your cloud instances.
Storage
Every cloud instance comes with a primary NVMe SSD disk. You can expand your storage with additional volumes, protect your data with snapshots and backups, and scale storage independently of compute.
Volumes
Primary Disk
Every instance is created with a primary disk (scsi0) sized according to your chosen plan. This disk contains the operating system and is tied to the instance lifecycle.
| Property | Value |
|---|---|
| Device | scsi0 |
| Type | NVMe SSD |
| Storage options | discard=on, ssd=1, iothread=1 |
| Included with | Instance plan |
| Resize | Expand only (cannot shrink) |
The discard=on option enables TRIM support, allowing the SSD to reclaim unused blocks. The ssd=1 flag tells the guest OS the disk is an SSD for optimal I/O scheduling. The iothread=1 option enables dedicated I/O threads for better performance.
Additional Volumes
Attach additional NVMe SSD volumes to your instance for expandable, persistent storage.
Adding a volume:
- Navigate to your instance detail page
- Go to the Storage or Volumes tab
- Click Add Volume
- Specify the size (10 GB - 10 TB)
- The volume is attached and appears as a new block device
After attaching:
# List available disks
lsblk
# Format the new volume (first time only)
sudo mkfs.ext4 /dev/sdb
# Create a mount point
sudo mkdir -p /mnt/data
# Mount the volume
sudo mount /dev/sdb /mnt/dataPersistent mount (survives reboots):
# Get the UUID of your volume
sudo blkid /dev/sdb
# Add to /etc/fstab
echo "UUID=<your-uuid> /mnt/data ext4 defaults,nofail 0 2" | sudo tee -a /etc/fstabAlways use nofail in fstab entries for additional volumes. Without it, your instance may fail to boot if the volume is detached or unavailable.
Resizing Volumes
Volumes can only be expanded — you cannot shrink a volume.
- Navigate to the instance → Storage tab
- Select the volume to resize
- Enter the new size (must be larger than current)
- Confirm the resize
After resizing, extend the filesystem inside the instance:
# For ext4 filesystems
sudo resize2fs /dev/sdb
# For XFS filesystems
sudo xfs_growfs /mnt/dataVolume expansion does not require a reboot. You can resize and extend the filesystem while the instance is running.
Detaching Volumes
You can detach additional volumes from an instance without destroying the data.
- Unmount the volume inside the instance:
sudo umount /mnt/data - Navigate to the instance → Storage tab
- Click Detach on the volume
- The volume remains in your account and can be reattached to another instance
Always unmount the volume from within the instance before detaching. Detaching a mounted volume can cause data corruption.
Snapshots
Snapshots capture a point-in-time copy of your entire virtual machine, including all disks and optionally the VM state (RAM).
Creating a Snapshot
- Navigate to your instance detail page
- Go to the Snapshots tab
- Click Create Snapshot
- Enter a name and optional description
- Click Create
| Property | Details |
|---|---|
| Scope | Full VM — all disks included |
| VM state | RAM is captured if the instance is running |
| Downtime | None — snapshots are created live |
| Name | Required, used to identify the snapshot |
| Description | Optional, for your reference |
Rolling Back a Snapshot
Restore your instance to the exact state captured by the snapshot.
- Navigate to the instance → Snapshots tab
- Select the snapshot to restore
- Click Rollback
- Confirm the action
Rolling back a snapshot replaces the current state of all disks (and RAM if captured). Any changes made after the snapshot was taken will be lost. This action cannot be undone.
Deleting Snapshots
Remove snapshots you no longer need to free up storage and stop billing.
- Navigate to the instance → Snapshots tab
- Click Delete on the snapshot
- Confirm the deletion
Snapshot Use Cases
- Before updates — Snapshot before applying OS patches, kernel upgrades, or application updates. Roll back instantly if something goes wrong.
- Testing — Snapshot a clean environment, run tests, then roll back to the clean state.
- Configuration changes — Snapshot before changing critical configs (nginx, database, firewall). One-click undo if the change breaks things.
Snapshots are not a replacement for backups. Snapshots are stored on the same infrastructure as the instance. For disaster recovery, use automated backups which are stored separately.
Backups
Backups create a compressed copy of your instance that is stored separately from the primary storage infrastructure. They provide disaster recovery protection that snapshots alone cannot.
Manual Backups
Create a backup of your instance on demand.
- Navigate to your instance detail page
- Go to the Backups tab
- Click Create Backup
- The backup job runs using
vzdumpwithzstdcompression
| Property | Details |
|---|---|
| Format | zstd compressed |
| Tool | vzdump |
| Storage | Separate backup storage |
| Includes | All instance disks and configuration |
Automated Backups
Enable automated backups to run on a schedule. Automated backups cost 20% of your instance's monthly price.
- Navigate to the instance → Backups tab
- Toggle Automated Backups to on
- Backups run automatically on the configured schedule
| Feature | Details |
|---|---|
| Cost | 20% of instance monthly price |
| Schedule | Automatic |
| Retention | Managed automatically |
| Enable/disable | Toggle from instance backups tab |
Restoring from a Backup
Restore your instance from any available backup.
- Navigate to the instance → Backups tab
- Select the backup to restore
- Click Restore
- Confirm the action
Restoring from a backup replaces the current state of your instance. All data written since the backup was created will be lost.
Deleting Backups
Remove old backups to free up storage.
- Navigate to the instance → Backups tab
- Click Delete on the backup
- Confirm the deletion
Storage Pricing
| Item | Rate |
|---|---|
| Block Storage (NVMe SSD) | $0.087/GB/mo |
| Snapshots | $0.065/GB/mo |
| Automated Backups | 20% of instance monthly cost |
| Manual Backups | Included with automated backups plan |
Cost Examples
| Storage Type | 50 GB | 100 GB | 500 GB | 1 TB |
|---|---|---|---|---|
| Block Storage | $4.35/mo | $8.70/mo | $43.50/mo | $87.00/mo |
| Snapshots | $3.25/mo | $6.50/mo | $32.50/mo | $65.00/mo |
All storage is billed hourly with a monthly cap. Delete volumes, snapshots, or backups to stop billing immediately.
Storage Limits
| Limit | Value |
|---|---|
| Volumes per instance | 10 |
| Max volume size | 10 TB |
| Min volume size | 10 GB |
| Volumes per account | 50 |
| Snapshots per instance | 25 |
Best Practices
- Use snapshots before changes — Always snapshot before OS updates, config changes, or application upgrades.
- Enable automated backups for production — Snapshots are on the same storage; backups provide true disaster recovery.
- Use
nofailin fstab — Prevent boot failures if a volume becomes unavailable. - Monitor disk usage — Set up alerts before volumes fill up. Expand proactively.
- Clean up old snapshots — Snapshots consume storage and incur costs. Delete snapshots you no longer need.
- Start small, expand later — Volumes can only grow, not shrink. Start with a smaller size and expand as needed.
Next Steps
- Review Networking for firewalls and private networks
- Upload SSH Keys for secure instance access
- Learn about Block Storage for standalone volume documentation
- Configure Object Storage for S3-compatible unstructured data