Skip to main content

Overview

Storage tiering exposes different hardware performance classes as distinct volume types, allowing users to select the appropriate tier for each workload. Xloud Block Storage supports NVMe, SSD, and HDD tiers within a single distributed storage cluster by mapping CRUSH device classes to dedicated pools and volume types. Configure one volume type per hardware tier and set a default to ensure users without a specific preference land on the most appropriate tier.
Administrator Access Required — This operation requires the admin role. Contact your Xloud administrator if you do not have sufficient permissions.
Prerequisites
  • Distributed storage cluster with at least one device class configured (e.g., nvme, ssd, hdd)
  • Pools created for each device class in the storage cluster
  • Storage backends registered in Block Storage (one per pool)
  • Volume types created for each tier via the Volume Types & QoS guide

Tier Performance Reference

TierHardwareIOPS (4K Random)ThroughputRecommended For
NVMePCIe NVMe SSDs100,000 – 1,000,0003 – 14 GB/sTransactional databases, low-latency caches
SSDSATA/SAS SSDs10,000 – 100,000500 MB/s – 2 GB/sWeb application data, VM boot disks
Standard (HDD)7.2K/10K RPM150 – 500100 – 300 MB/sArchival, bulk storage, infrequent access

Configure Tier Mappings

Open Storage Tiers in XDeploy

Log in to XDeploy and navigate to Configuration → Storage → Storage Tiers. XDeploy displays the detected hardware device classes from the storage cluster.

Configure tier mappings

For each detected hardware tier, specify:
FieldDescription
Storage Pool NameThe pool in the distributed storage cluster (e.g., volumes-nvme)
Volume Type NameThe volume type to expose to users (e.g., nvme)
QoS SpecOptional QoS policy to attach to this tier
Click Save Tier Configuration.

Set the default volume type

In the Default Volume Type field, select the tier to use when users create volumes without specifying a type.Xloud recommends setting ssd as the default for most deployments — you can explicitly request nvme or standard when needed.Click Apply.
Tier mappings saved and default type configured.

Single-Tier Deployments

If your cluster has only one hardware class (e.g., all SSD), configure a single volume type pointing to the existing pool. There is no need to create additional pools or types.
In a single-tier cluster, Xloud recommends still naming the type explicitly (e.g., ssd) rather than using a generic name — this makes future tier additions easier without requiring users to update their volume creation workflows.

Adding a New Tier to an Existing Deployment

When adding new hardware (e.g., NVMe drives to an existing SSD cluster):

Add hardware and create a new pool

Add the new OSDs to the distributed storage cluster with the appropriate device class. Create a dedicated pool using a CRUSH rule that targets only the new device class.

Configure a new backend in XDeploy

Add a new backend entry in XDeploy pointing to the new pool. Deploy the configuration to register the new backend with the volume service.

Create a new volume type

Create the new tier volume type
openstack volume type create \
  --description "NVMe PCIe — ultra-low latency" \
  nvme
openstack volume type set --property volume_backend_name=nvme-pool nvme

Verify availability

Test the new tier
openstack volume create --size 1 --type nvme test-nvme
openstack volume show test-nvme -c status
openstack volume delete test-nvme
New tier operational and accessible to users.

Automated Storage Tiering

Xloud-Developed — This capability is developed by Xloud and ships with XAVS / XPCI.
The Xloud Resource Optimizer can automatically move volumes between NVMe, SSD, and HDD pools based on observed IOPS activity — eliminating manual tier management for dynamic workloads.
ParameterDescription
Promotion thresholdSustained high IOPS triggers migration to a faster tier (e.g., HDD to SSD, SSD to NVMe)
Demotion thresholdSustained low IOPS combined with volume age triggers migration to a cheaper tier
Max retypes per cycleLimits the number of volume migrations per optimization cycle to prevent thundering-herd effects on the storage cluster
All thresholds are configurable per deployment. The Resource Optimizer evaluates volumes periodically, generates a migration plan, and executes volume retypes through the Block Storage API without downtime to attached instances.
Start with conservative thresholds and monitor the Resource Optimizer audit logs before tightening promotion or demotion criteria. Aggressive thresholds can cause volumes to bounce between tiers repeatedly.

Next Steps

Volume Types & QoS

Configure QoS policies to enforce per-tier IOPS and throughput limits

Migration

Move volumes between tiers to rebalance capacity or meet new requirements

Storage Backends

Configure backend drivers for each storage tier

Volume Types (User)

User guide for selecting the right storage tier for a workload