Skip to main content

Block Storage

Overview

Block Storage provides persistent, high-performance storage volumes that exist independently of instances. Volumes can be created, attached to instances, detached, resized, and reattached to different instances -- all without data loss.

Key characteristics:

  • Persistent -- Volumes survive instance reboots, stops, and even instance deletion. Data persists until the volume is explicitly deleted.
  • Portable -- Detach a volume from one instance and attach it to another in the same location.
  • Performance tiers -- Choose from multiple storage classes (HDD, SSD, NVMe, SAS) with configurable I/O limits per plan.
  • Resizable -- Upgrade or change volume plans on the fly.
  • Hourly billing -- Charged per hour based on the selected plan.

Admin Setup

Enabling Block Storage

  1. Create volume plans -- Navigate to Block Storage > Plans and create plans defining size, storage class, I/O limits, and pricing
  2. Create plan groups -- Navigate to Block Storage > Plan Groups and organize plans into groups
  3. Enable on hypervisor groups -- On each hypervisor group settings page, enable Block Storage and link a plan group

Creating Volume Plans

Each plan defines:

FieldDescription
NameDescriptive name (e.g., "SSD 100GB High Performance")
SizeStorage capacity in GB
Storage ClassHDD, SSD, NVMe, or SAS
Datastore TypeCeph or NFS
Credit ValueMonthly cost in credits
Read Bytes/secMaximum read bandwidth (0 = unlimited)
Write Bytes/secMaximum write bandwidth (0 = unlimited)
Read IOPS/secMaximum read operations per second (0 = unlimited)
Write IOPS/secMaximum write operations per second (0 = unlimited)
EnabledWhether the plan is available for selection
tip

Use I/O limits to create distinct performance tiers. For example, offer a "Standard SSD" plan with moderate IOPS and a "High Performance NVMe" plan with higher limits, both at 100GB but different pricing.

Plan Groups

Plan groups organize plans for assignment to locations. A plan group can contain multiple plans of varying sizes and performance tiers. Each hypervisor group (location) links to one plan group, determining which volumes are available in that region.

User Limits

The maximum number of volumes per user is configured on the user profile:

  1. Navigate to Users > [User] > Edit
  2. Set Max Volumes (default: 5, set to 0 for unlimited)

Managing Volumes (Admin)

Admins can view all volumes at Block Storage > Volumes. The admin page provides:

  • Search across volume name, user, and instance
  • Volume detail page showing full configuration, I/O limits, storage path, and billing info
  • Create volumes on behalf of users
  • Detach and delete volumes

User Guide

Creating a Volume

  1. Navigate to Storage > Block Storage in the sidebar
  2. Click Create Volume
  3. Follow the guided creation flow:

Step 1: Select Region Choose the location where the volume will be created. Only locations with block storage enabled are shown. The volume can only be attached to instances in the same region.

Step 2: Select Plan Choose a volume plan. Each plan card shows:

  • Plan name and storage class (HDD/SSD/NVMe/SAS)
  • Storage size
  • Read and write speeds (if limited)
  • Read and write IOPS (if limited)
  • Monthly and hourly cost

Step 3: Name Enter a descriptive name for the volume (e.g., "postgres-data" or "media-storage").

A summary sidebar shows your selections and pricing as you configure. Click Create Volume to provision.

info

Volume creation typically completes within a few seconds. The volume status changes from Creating to Available once ready.

Volume Statuses

StatusDescription
AvailableReady to attach to an instance
AttachedCurrently attached to an instance
CreatingProvisioning in progress
ResizingResize operation in progress
DetachingBeing detached from an instance
ErrorAn operation failed

Attaching a Volume to an Instance

A volume must be in Available status and in the same region as the target instance.

From the Volumes page:

  1. Click Attach on the volume
  2. Select an instance from the dropdown (only instances in the same region are listed)
  3. Click Attach

From the Instance manage page:

  1. Navigate to the instance's manage page
  2. Go to the Volumes tab
  3. Select an available volume from the dropdown
  4. Click Attach

Once attached, the volume appears as a block device in the instance (e.g., /dev/xvdb). The device name is displayed in the volumes table.

warning

After attaching a new volume, you may need to format and mount it within the instance's operating system before use. The volume is presented as a raw block device.

Detaching a Volume

Click Detach on the volume from either the volumes page or the instance's volumes tab.

warning

Ensure no processes are actively writing to the volume before detaching. Unmount the filesystem inside the instance first to prevent data corruption.

Resizing a Volume

  1. Click Resize on the volume
  2. Select a new plan from the available options
  3. Click Resize

If the new plan is smaller than the current volume size, a warning is displayed:

"The selected plan (X GB) is smaller than the current size (Y GB). This may result in data loss."

You must confirm with Resize Anyway to proceed with a downsize.

tip

Resizing a volume to a larger plan does not automatically extend the filesystem inside the instance. After resizing, use the operating system's tools to extend the partition and filesystem (e.g., resize2fs for ext4).

Deleting a Volume

A volume must be in Available status (not attached) to be deleted.

  1. Click Delete on the volume
  2. Confirm the action
danger

Deleting a volume permanently destroys all data on it. This action cannot be undone.


Instance Integration

The instance manage page includes a Volumes tab showing:

ColumnDescription
NameVolume name
PlanVolume plan name
SizeCapacity in GB
DeviceBlock device name (e.g., xvdb)
StatusCurrent volume status
ActionsDetach button

Each instance supports up to 23 attached volumes (devices xvdb through xvdw).


Billing

How Billing Works

  • Volumes are billed hourly through the Cloud Service billing system
  • Billing begins when the volume is created and continues until it is deleted
  • The hourly rate is the plan's credit value divided by hours per month
  • Billing applies regardless of whether the volume is attached to an instance

Cost Display

Volume creation shows both monthly and hourly costs for each plan, converted to your account's currency.

Usage Reports

Volume charges appear in the Cloud Service > Usage Report under a dedicated Block Storage section, showing per-volume hours and charges for the billing period.


Troubleshooting

Volume stuck in "Creating"

If the volume doesn't become available within a few minutes:

  1. Check the tasks page for deployment errors
  2. The storage backend may be temporarily unavailable -- retry by deleting and recreating
  3. Contact your administrator if the issue persists

Cannot attach volume to instance

  1. Verify the volume is in Available status
  2. Ensure the volume and instance are in the same region (hypervisor group)
  3. Check that the instance has fewer than 23 volumes attached

Volume not visible inside the instance

After attaching, the volume appears as a raw block device. Use lsblk or fdisk -l inside the instance to find it. The device name shown in the panel (e.g., xvdb) corresponds to /dev/xvdb inside the instance.

Cannot delete an attached volume

Detach the volume from its instance first, then delete it. Only volumes in Available status can be deleted.

Performance is lower than expected

Verify the plan's I/O limits on the volume detail page. If limits show "Unlimited" but performance is still poor, the bottleneck may be the instance's disk I/O or network throughput rather than the volume itself.